The crane super-node makes it easy to model and control cranes.


The node models:

  • a crane that can optionally revolve (slew)

  • a boom with one of more points at which hooks can be attached

  • optionally a jib

  • optionally an extension (for telescopic cranes)

Cranes modeled using this node do not have tie-back wires. They are not intended to be used for situations where the forces in those wires are of importance.

  • The angle of the boom can be controlled directly or by setting a reach or radius for one of the hooks

  • Setting slew to “auto” releases the slewing brake meaning that the crane is free to slew.


Cranes can be added using .crane.csv files in a resources folder. Schematically the crane node looks as follows:


The crane model does not include the hooks themselves, only the locations where a hoist can be added.

The hooks that can be attached contain the suspension wires as well as the hook itself. The elevation of the hooks can be set in the hook node.

The boom is divided into two parts:

  • BoomBase : the part of the boom attached to the boom hinge

  • Boom : the part of the boom that is extended if extension > 0

Similarly the crane itself is split into:

  • CraneBase: the part of the crane that is fixed

  • Crane: the part of the crane that slews

Example .csv file#

An example of a crane (without weights) is given below.

# This is an example of a crane
boom_hinge_x, 4
boom_hinge_z, 8
# --- JIB (optional)
jib_hinge_x, 42  # relative to boom
jib_hinge_z, 0   # relative to boom
# name,  x  , y , z
main,    35 , 0 , -2
aux,     40 , 0 , -1

# name , x, y, z
jib    , 15, 0 , -1

# ---- Boom Extension
extension_max, 20 # remove or comment this line to prohibit extension
# ---- Weights and visuals (all optional)
# For extending crane booms: BoomBase is the part of the boom
# that is connected to the crane hinge.
# Boom is the part that shifts away from the hinge when extended
# Visuals are:
# Name , resource, off-x, off-y, off-z, rot-x, rot-y, rot-z, scale-x, scale-y, scale-z,,,
slew_ring, res: cube.obj, 0,0,7,   0,0,0,    8,8,4
mast, res: cylinder 1x1x1.obj, 0,0,0,   0,0,0,    4,4,40
boom_ext, res: wirecube.obj, 20,0,0,   0,0,0,    20, 2, 1
boom_base, res: cube.obj, 5,0,0,   0,0,0,    10, 3.5, 1.6
boom_jib, res: wirecube.obj, 7.5,0,0,   0,0,0,    7.5, 2, 1