X3D Model Documentation: ATRV.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2 
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
  3  <X3D profile='Immersive' version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.0.xsd'>
  4       <head>
  5            <meta name='titlecontent='ATRV.x3d'/>
  6            <meta name='descriptioncontent='All Terrain Robot Vehicle (ATRV) is primarily used for research in robotics.'/>
  7            <meta name='creatorcontent='LT Monty Williams'/>
  8            <meta name='createdcontent='5 September 2002'/>
  9            <meta name='modifiedcontent='20 October 2019'/>
 10            <meta name='referencecontent='PneumaticTire.x3d'/>
 11            <meta name='referencecontent='atrv_tech_2001.pdf'/>
 12            <meta name='referencecontent='http://www.irobot.com/_post/rwi/atrv_tech_2001.pdf'/>
 13            <meta name='referencecontent='http://www.irobot.com/rwi/p02.asp'/>
 14            <meta name='subjectcontent='Mobile wheeled robot'/>
 15            <meta name='identifiercontent='https://savage.nps.edu/Savage/Robots/UnmannedGroundVehicles/ATRV.x3d'/>
 16            <meta name='generatorcontent='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/>
 17            <meta name='licensecontent='../../license.html'/>
 18       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top Index for DEF nodes: Bumper, CASE, CaseAppearance, CaseCylinderSensor, CaseTransform, FrontWheelAxle, FrontWheelTransform, Harness, HarnessHole, HINGE, HitchGroup, PlatformBase, RearWheelTransform, SONAR, TIRE, WheelAxle
-->
 19       <Scene>
 20            <WorldInfo title='ATRV.x3d'/>
 21            <Background groundAngle='1.309 1.5702groundColor='0.5 0.3 0.3 0.5 0.3 0.3 0.5 0.4 0.4skyAngle='1.309 1.572skyColor='0 0.2 0.7 0 0.5 1 1 1 1'/>
 22            <Transform>
 23                 <Group>
 24                      <Transform DEF='FrontWheelAxle'>
 25 
                         <!-- Group WheelAxle is a DEF node that has 1 USE node: USE_1 -->
                         <Group DEF='WheelAxle'>
 26                                <Transform DEF='FrontWheelTransformscale='0.3 0.3 0.3translation='1.0 0.0 -0.2'>
 27 
                                   <!-- Inline TIRE is a DEF node that has 1 USE node: USE_1 -->
                                   <Inline DEF='TIRE'   url=' "PneumaticTire.x3d" "https://savage.nps.edu/Savage/GroundVehicles/Robots/PneumaticTire.x3d" "PneumaticTire.wrl" "https://savage.nps.edu/Savage/GroundVehicles/Robots/PneumaticTire.wrl" '/>
 28                                </Transform>
 29                                <Transform DEF='RearWheelTransformscale='0.3 0.3 0.3translation='-1.0 0.0 -0.2'>
 30                                     <Inline USE='TIRE'/>
 31                                </Transform>
 32                           </Group>
 33                      </Transform>
 34                      <Transform translation='0.0 0.0 -2.6'>
 35                           <Group USE='WheelAxle'/>
 36                      </Transform>
 37                      <Transform>
 38                           <Group DEF='PlatformBase'>
 39                                <Transform translation='0.0 0.2 -1.5'>
 40                                     <Shape>
 41                                          <Appearance>
 42                                               <Material diffuseColor='0.8 0.0 0.2'/>
 43                                          </Appearance>
 44                                          <Box size='4.0 1.0 2.0'/>
 45                                     </Shape>
 46                                </Transform>
 47                                <Transform translation='2.3 0.2 -1.5'>
 48 
                                   <!-- Group Bumper is a DEF node that has 1 USE node: USE_1 -->
                                   <Group DEF='Bumper'>
 49                                          <Shape>
 50                                               <Appearance>
 51                                                    <Material diffuseColor='0.2 0.2 0.2'/>
 52                                               </Appearance>
 53                                               <Box size='0.2 0.4 2.0'/>
 54                                          </Shape>
 55                                          <Transform rotation='0 0 1 1.57scale='0.2 0.2 0.2translation='-0.3 0.0 0.8'>
 56                                               <Transform rotation='1 0 0 3.14'>
 57 
                                                  <!-- Group Harness is a DEF node that has 4 USE nodes: USE_1, USE_2, USE_3, USE_4 -->
                                                  <Group DEF='Harness'>
 58                                                         <Transform>
 59                                                              <Shape>
 60                                                                   <Appearance>
 61                                                                        <Material diffuseColor='0.2 0.2 0.2'/>
 62                                                                   </Appearance>
 63                                                                   <Extrusion crossSection='1.6 0.0 1.0 1.0 -1.0 1.0 -1.0 0.0 1.6 0.0solid='falsespine='0.0 0.0 0.5 0.0 0.0 -0.5'/>
 64                                                              </Shape>
 65                                                         </Transform>
 66                                                         <Transform rotation='1 0 0 1.57translation='-0.5 0.5 0.0'>
 67 
                                                            <!-- Shape HarnessHole is a DEF node that has 1 USE node: USE_1 -->
                                                            <Shape DEF='HarnessHole'>
 68                                                                   <Appearance>
 69                                                                        <Material/>
 70                                                                   </Appearance>
 71                                                                   <Cylinder height='1.05radius='0.3'/>
 72                                                              </Shape>
 73                                                         </Transform>
 74                                                         <Transform rotation='1 0 0 1.57translation='0.5 0.5 0.0'>
 75                                                              <Shape USE='HarnessHole'/>
 76                                                         </Transform>
 77                                                    </Group>
 78                                               </Transform>
 79                                          </Transform>
 80                                          <Transform rotation='0 0 1 1.57scale='0.2 0.2 0.2translation='-0.3 0.0 -0.8'>
 81                                               <Transform rotation='1 0 0 3.14'>
 82                                                    <Group USE='Harness'/>
 83                                               </Transform>
 84                                          </Transform>
 85                                     </Group>
 86                                </Transform>
 87                                <Transform rotation='0 1 0 3.14translation='-2.3 0.2 -1.5'>
 88                                     <Group USE='Bumper'/>
 89                                </Transform>
 90                           </Group>
 91                      </Transform>
 92                      <Transform translation='0.0 0.7 -0.5'>
 93                           <Transform rotation='0 0 1 -1.57'>
 94 
                              <!-- ROUTE information for CaseCylinderSensor node:  [from rotation_changed to CaseTransform.set_rotation ] -->
                              <CylinderSensor DEF='CaseCylinderSensordescription='touch to activatemaxAngle='0.785'/>
 95 
                              <!-- ROUTE information for CaseTransform node:  [from CaseCylinderSensor.rotation_changed to set_rotation ] -->
                              <Transform DEF='CaseTransform'>
 96                                     <Transform rotation='0 0 1 1.57'>
 97                                          <Group DEF='CASE'>
 98                                               <Transform>
 99                                                    <Shape>
100 
                                                       <!-- Appearance CaseAppearance is a DEF node that has 1 USE node: USE_1 -->
                                                       <Appearance DEF='CaseAppearance'>
101                                                              <Material diffuseColor='0.8 0.1 0.2'/>
102                                                         </Appearance>
103                                                         <Extrusion beginCap='falsecrossSection='2.0 0.0 2.0 -2.0 -2.0 -2.0 -2.0 0.0 2.0 0.0endCap='falsesolid='falsespine='0.0 0.0 0.0 0.0 0.4 0.0'/>
104                                                    </Shape>
105                                               </Transform>
106                                               <Transform>
107                                                    <Shape>
108                                                         <Appearance USE='CaseAppearance'/>
109                                                         <IndexedFaceSet solid='falsecoordIndex='0 1 2 -1 2 1 3 4 -1 1 5 6 3 -1 4 3 6 7 -1 7 6 5 8 -1 8 5 9 -1'>
110                                                              <Coordinate point='2.0 0.4 0.0 1.0 1.2 -0.3 1.0 0.4 0.0 -2.0 1.2 -0.3 -2.0 0.4 0.0 1.0 1.2 -1.7 -2.0 1.2 -1.7 -2.0 0.4 -2.0 1.0 0.4 -2.0 2.0 0.4 -2.0'/>
111                                                         </IndexedFaceSet>
112                                                    </Shape>
113                                                    <Shape>
114                                                         <Appearance>
115                                                              <Material transparency='0.2'/>
116                                                         </Appearance>
117                                                         <IndexedFaceSet coordIndex='0 1 2 3 -1'>
118                                                              <Coordinate point='2.0 0.4 0.0 2.0 0.4 -2.0 1.0 1.2 -1.7 1.0 1.2 -0.3'/>
119                                                         </IndexedFaceSet>
120                                                    </Shape>
121                                               </Transform>
122                                               <Transform translation='1.6 0.2 -0.09'>
123 
                                                  <!-- Group SONAR is a DEF node that has 11 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8, USE_9, USE_10, USE_11 -->
                                                  <Group DEF='SONAR'>
124                                                         <Transform>
125                                                              <Shape>
126                                                                   <Appearance>
127                                                                        <Material diffuseColor='0.2 0.2 0.2'/>
128                                                                   </Appearance>
129                                                                   <Box size='0.2 0.2 0.2'/>
130                                                              </Shape>
131                                                         </Transform>
132                                                         <Transform rotation='1 0 0 1.57'>
133                                                              <Shape>
134                                                                   <Appearance>
135                                                                        <Material diffuseColor='0.7 0.5 0.2'/>
136                                                                   </Appearance>
137                                                                   <Cylinder height='0.21radius='0.08'/>
138                                                              </Shape>
139                                                         </Transform>
140                                                    </Group>
141                                               </Transform>
142                                               <Transform translation='-1.6 0.2 -0.09'>
143                                                    <Group USE='SONAR'/>
144                                               </Transform>
145                                               <Transform translation='1.6 0.2 -1.91'>
146                                                    <Group USE='SONAR'/>
147                                               </Transform>
148                                               <Transform translation='-1.6 0.2 -1.91'>
149                                                    <Group USE='SONAR'/>
150                                               </Transform>
151                                               <Transform rotation='0 1 0 1.57translation='-1.91 0.2 -0.4'>
152                                                    <Group USE='SONAR'/>
153                                               </Transform>
154                                               <Transform rotation='0 1 0 1.57translation='-1.91 0.2 -1.6'>
155                                                    <Group USE='SONAR'/>
156                                               </Transform>
157                                               <Transform rotation='0 1 0 1.57translation='1.91 0.2 -0.2'>
158                                                    <Group USE='SONAR'/>
159                                               </Transform>
160                                               <Transform rotation='0 1 0 1.57translation='1.91 0.2 -0.4'>
161                                                    <Group USE='SONAR'/>
162                                               </Transform>
163                                               <Transform rotation='0 1 0 1.57translation='1.91 0.2 -0.6'>
164                                                    <Group USE='SONAR'/>
165                                               </Transform>
166                                               <Transform rotation='0 1 0 1.57translation='1.91 0.2 -1.4'>
167                                                    <Group USE='SONAR'/>
168                                               </Transform>
169                                               <Transform rotation='0 1 0 1.57translation='1.91 0.2 -1.6'>
170                                                    <Group USE='SONAR'/>
171                                               </Transform>
172                                               <Transform rotation='0 1 0 1.57translation='1.91 0.2 -1.8'>
173                                                    <Group USE='SONAR'/>
174                                               </Transform>
175                                               <Transform translation='-1.6 1.2 -0.5'>
176 
                                                  <!-- Group HitchGroup is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                                  <Group DEF='HitchGroup'>
177                                                         <Transform scale='0.2 0.2 0.1'>
178                                                              <Group USE='Harness'/>
179                                                         </Transform>
180                                                         <Transform scale='0.2 0.2 0.1translation='0.2 0.0 0.0'>
181                                                              <Group USE='Harness'/>
182                                                         </Transform>
183                                                         <Transform scale='0.2 0.2 0.1translation='0.4 0.0 0.0'>
184                                                              <Group USE='Harness'/>
185                                                         </Transform>
186                                                    </Group>
187                                               </Transform>
188                                               <Transform translation='-1.6 1.2 -1.5'>
189                                                    <Group USE='HitchGroup'/>
190                                               </Transform>
191                                               <Transform scale='0.8 0.8 0.8translation='0.2 1.2 -0.7'>
192                                                    <Group USE='HitchGroup'/>
193                                               </Transform>
194                                               <Transform scale='0.8 0.8 0.8translation='0.2 1.2 -1.3'>
195                                                    <Group USE='HitchGroup'/>
196                                               </Transform>
197                                               <Transform rotation='1 0 0 1.57translation='-0.9 1.25 -1.0'>
198                                                    <Shape>
199                                                         <Appearance>
200                                                              <Material diffuseColor='0.2 0.2 0.2'/>
201                                                         </Appearance>
202                                                         <Cylinder height='1.0radius='0.05'/>
203                                                    </Shape>
204                                               </Transform>
205                                               <Transform translation='-0.5 1.25 -1.0'>
206                                                    <Shape>
207                                                         <Appearance>
208                                                              <Material diffuseColor='1.0 1.0 1.0'/>
209                                                         </Appearance>
210                                                         <Box size='0.4 0.1 0.4'/>
211                                                    </Shape>
212                                               </Transform>
213                                               <Transform translation='-1.5 1.25 -1.0'>
214                                                    <Shape>
215                                                         <Appearance>
216                                                              <Material diffuseColor='0.2 0.2 0.2'/>
217                                                         </Appearance>
218                                                         <Box size='0.6 0.15 0.9'/>
219                                                    </Shape>
220                                               </Transform>
221                                               <Transform rotation='1 0 0 -0.185translation='-1.8 0.9 -0.17'>
222                                                    <Shape>
223                                                         <Appearance>
224                                                              <Material diffuseColor='0.2 0.2 0.2'/>
225                                                         </Appearance>
226                                                         <Text string='"ATRV"'>
227                                                              <FontStyle size='0.4style='BOLD'/>
228                                                         </Text>
229                                                    </Shape>
230                                               </Transform>
231                                               <Transform translation='1.0 0.1 0.0'>
232 
                                                  <!-- Group HINGE is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                                  <Group DEF='HINGE'>
233                                                         <Transform>
234                                                              <Shape>
235                                                                   <Appearance>
236                                                                        <Material diffuseColor='0.2 0.2 0.2'/>
237                                                                   </Appearance>
238                                                                   <Box size='0.4 0.2 0.05'/>
239                                                              </Shape>
240                                                         </Transform>
241                                                         <Transform rotation='0 0 1 1.57translation='0.0 -0.12 0.0'>
242                                                              <Shape>
243                                                                   <Appearance>
244                                                                        <Material diffuseColor='0.4 0.4 0.4'/>
245                                                                   </Appearance>
246                                                                   <Cylinder height='0.37radius='0.02'/>
247                                                              </Shape>
248                                                         </Transform>
249                                                    </Group>
250                                               </Transform>
251                                               <Transform translation='-1.0 0.1 0.0'>
252                                                    <Group USE='HINGE'/>
253                                               </Transform>
254                                          </Group>
255                                     </Transform>
256                                     < ROUTE  fromNode='CaseCylinderSensor' fromField='rotation_changed' toNode='CaseTransform' toField='set_rotation'/>
257                                </Transform>
258                           </Transform>
259                           <Transform rotation='1 0 0 3.14translation='1.0 -0.15 0.0'>
260                                <Group USE='HINGE'/>
261                           </Transform>
262                           <Transform rotation='1 0 0 3.14translation='-1.0 -0.15 0.0'>
263                                <Group USE='HINGE'/>
264                           </Transform>
265                      </Transform>
266                 </Group>
267            </Transform>
268       </Scene>
269  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top Index for DEF nodes: Bumper, CASE, CaseAppearance, CaseCylinderSensor, CaseTransform, FrontWheelAxle, FrontWheelTransform, Harness, HarnessHole, HINGE, HitchGroup, PlatformBase, RearWheelTransform, SONAR, TIRE, WheelAxle
-->
X3D Tooltips element index: Appearance, Background, Box, Coordinate, Cylinder, CylinderSensor, Extrusion, FontStyle, Group, head, IndexedFaceSet, Inline, Material, meta, ROUTE, Scene, Shape, Text, Transform, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

-->
<!-- Online at
https://savage.nps.edu/Savage/Robots/UnmannedGroundVehicles/ATRVIndex.html -->
<!-- Version control at
https://gitlab.nps.edu/Savage/Savage/Robots/UnmannedGroundVehicles/ATRV.x3d -->

<!-- Color-coding legend: X3D terminology <X3dNode  DEF='idNamefield='value'/> matches XML terminology <XmlElement  DEF='idNameattribute='value'/>
(Light-blue background: event-based behavior node or statement) (Grey background inside box: inserted documentation) (Magenta background: X3D Extensibility)
-->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->