77 lines
2.3 KiB
Protocol Buffer
Executable File
77 lines
2.3 KiB
Protocol Buffer
Executable File
#VRML_SIM R2023b utf8
|
|
# template language: javascript
|
|
# tags: nonDeterministic
|
|
|
|
EXTERNPROTO "../props/Marker.proto"
|
|
|
|
PROTO Pillar [
|
|
field SFVec3f translation 0 0 0
|
|
field SFRotation rotation 0 1 0 0
|
|
field SFVec3f size 0.13 0.13 0.13
|
|
field SFVec2f {0.08 0.08, 0.15 0.15, 0.2 0.2} marker_size 0.08 0.08
|
|
field SFFloat marker_height 0.065
|
|
field SFColor colour 0.9 0.9 0.9
|
|
field SFString marker "0"
|
|
field SFString model ""
|
|
field MFString texture_url []
|
|
]
|
|
{
|
|
Pose {
|
|
translation IS translation
|
|
rotation IS rotation
|
|
children [
|
|
Solid {
|
|
translation 0 0 %<= fields.size.value.z / 2 >%
|
|
children [
|
|
Shape {
|
|
appearance DEF PILLAR_APPEARANCE PBRAppearance {
|
|
baseColor IS colour
|
|
metalness 0
|
|
roughness 1
|
|
}
|
|
geometry DEF PILLAR_GEOMETRY Box {
|
|
size IS size
|
|
}
|
|
}
|
|
Marker {
|
|
translation 0 %<= fields.size.value.y / 2 + 0.001 >% %<= fields.marker_height.value - (fields.size.value.z / 2) >%
|
|
rotation 1 0 0 -1.5708
|
|
size IS marker_size
|
|
name "front"
|
|
model IS marker
|
|
texture_url IS texture_url
|
|
}
|
|
Marker {
|
|
translation 0 %<= -(fields.size.value.y / 2 + 0.001) >% %<= fields.marker_height.value - (fields.size.value.z / 2) >%
|
|
rotation 1 0 0 1.5708
|
|
size IS marker_size
|
|
name "back"
|
|
model IS marker
|
|
texture_url IS texture_url
|
|
}
|
|
Marker {
|
|
translation %<= fields.size.value.x / 2 + 0.001 >% 0 %<= fields.marker_height.value - (fields.size.value.z / 2) >%
|
|
rotation 0 1 0 1.5708
|
|
size IS marker_size
|
|
name "side-1"
|
|
model IS marker
|
|
texture_url IS texture_url
|
|
}
|
|
Marker {
|
|
translation %<= -(fields.size.value.x / 2 + 0.001) >% 0 %<= fields.marker_height.value - (fields.size.value.z / 2) >%
|
|
rotation 0 1 0 -1.5708
|
|
size IS marker_size
|
|
name "side-2"
|
|
model IS marker
|
|
texture_url IS texture_url
|
|
}
|
|
]
|
|
name IS model
|
|
model IS model
|
|
boundingObject USE PILLAR_GEOMETRY
|
|
locked TRUE
|
|
}
|
|
]
|
|
}
|
|
}
|