swinging arm
PROTO SwingingArm [
exposedField SFVec3f translation 0 0 0
exposedField SFRotation orientation 0 0 1 0
exposedField MFNode children []
eventIn MFNode addChildren
eventIn MFNode removeChildren
exposedField SFFloat transparency 0.5
]{
DEF MOVEPOINT Transform {
translation IS translation
rotation IS orientation
children [
Transform {
translation -0.1 0 0
children [
Group {
children [
Shape {
appearance DEF GRAY Appearance {
material Material {
transparency IS transparency
diffuseColor 0.4 0.4 0.8
emissiveColor 0.4 0.4 0.8
}
}
geometry Box { size 0.2 0.025 0.025 }
}
DEF DRAGSENSOR PlaneSensor {
minPosition 0 0
maxPosition 1 1
}
]
}
Transform {
translation -0.1 0 0
children [
Group {
children [
Shape {
appearance Appearance {
material Material {
transparency IS transparency
diffuseColor 1.8 0.8 0.8
emissiveColor 1.8 0.8 0.8
}
}
geometry Sphere {
radius 0.025
}
}
DEF ROTATESENSOR PlaneSensor {
minPosition -0.314 -0.157
maxPosition 0 0.157
}
]
}
DEF ROTATEPOINT Transform {
children [
Transform {
translation -.125 0 0
children [
Shape {
appearance USE GRAY
geometry Box {
size 0.25 0.025 0.025
}
}
DEF CONNECTPOINT Transform {
translation -0.15 0 0.03
children IS children
addChildren IS addChildren
removeChildren IS removeChildren
}
]
}
]
}
]
}
]
}
]
}