PivotTBoomCraneNoVisuals is TBoomCraneTemplateNoVisuals:
    boom_connection becomes Connections.PivotBoomConnection

PivotTBoomCrane is PivotTBoomCraneNoVisuals:
    column becomes MachineComponents.CraneSystemComponent
    boom becomes MachineComponents.CraneSystemComponent

# A crane where the initial state is defined by the length of the cylinder
PivotTBoomCraneDistance is PivotTBoomCrane:
    cylinder.internal_connection.initial_position: 0.3

# A crane where the initial state is defined by the angle of the boom
PivotTBoomCraneAngle is PivotTBoomCrane:
    boom_connection.boom_1_boom_2_connection.snap_hinge.initial_angle: 1.2
