X3D Model Documentation: NTDSPrototypes.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2  <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.1//EN" "https://www.web3d.org/specifications/x3d-3.1.dtd">
  3  <X3D profile='Immersive' version='3.1 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.1.xsd'>
  4       <head>
  5            <component level='2name='Geometry2D'/>
  6            <meta name='titlecontent=' NTDSPrototypes.x3d '/>
  7            <meta name='descriptioncontent='Standard Naval Tactical Display Symbology (NTDS) icons'/>
  8            <meta name='creatorcontent='LT Patrick Sullivan'/>
  9            <meta name='createdcontent='11 February 2006'/>
 10            <meta name='modifiedcontent='28 November 2019'/>
 11            <meta name='referencecontent=' NTDSExternProtoExamples.x3d '/>
 12            <meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Savage/Tools/Symbology/NTDSPrototypes.x3d '/>
 13            <meta name='generatorcontent='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit'/>
 14            <meta name='licensecontent='../../license.html'/>
 15       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: SemiCircle, SemiCircle2, SemiCircle3, SemiCircle4, SemiCircle5, SemiCircle6

Index for Viewpoint node: Viewpoint_1

Index for ProtoDeclare definitions: AirAssumedFriend, AirFriend, AirHostile, AirNeutral, AirPending, AirSuspect, AirUnknown, GroundEquipmentAssumedFriend, GroundEquipmentFriend, GroundEquipmentHostile, GroundEquipmentNeutral, GroundEquipmentPending, GroundEquipmentSuspect, GroundEquipmentUnknown, SubSurfaceAssumedFriend, SubSurfaceFriend, SubSurfaceHostile, SubSurfaceNeutral, SubSurfacePending, SubSurfaceSuspect, SubSurfaceUnknown, SurfaceAssumedFriend, SurfaceFriend, SurfaceHostile, SurfaceNeutral, SurfacePending, SurfaceSuspect, SurfaceUnknown, SymbolLabel, SymbolVector
-->
 16       <Scene>
 17            <!-- These first two Protos are common to all symbology -->
 18            <WorldInfo title='NTDSPrototypes.x3d'/>
 19            <ProtoDeclare name='SymbolVectorappinfo='NTDS Symbology for vector'>
 20                 <ProtoInterface>
 21                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
 22                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
 23                 </ProtoInterface>
 24                 <ProtoBody>
 25                      <Transform>
 26                           <Shape>
 27                                <Appearance>
 28                                     <Material>
 29                                          <IS>
 30                                               <connect nodeField='diffuseColorprotoField='labelColor'/>
 31                                               <connect nodeField='emissiveColorprotoField='labelColor'/>
 32                                          </IS>
 33                                     </Material>
 34                                </Appearance>
 35                                <!-- Cylinder bottom='false' height='.01' radius='.1' side='false'/ -->
 36                                <IndexedTriangleSet ccw='truecolorPerVertex='trueindex='2 1 0normalPerVertex='truesolid='truecontainerField='geometry'>
 37                                     <Coordinate point='2 0 -0.05 2.3 0 0 2 0 0.05'/>
 38                                </IndexedTriangleSet>
 39                           </Shape>
 40                           <Shape>
 41                                <IndexedLineSet colorPerVertex='falsecolorIndex='0 0coordIndex='0 1'>
 42                                     <Coordinate point='0 0 0 2 0 0'/>
 43                                     <Color>
 44                                          <IS>
 45                                               <connect nodeField='colorprotoField='color'/>
 46                                          </IS>
 47                                     </Color>
 48                                </IndexedLineSet>
 49                           </Shape>
 50                      </Transform>
 51                 </ProtoBody>
 52            </ProtoDeclare>
 53            <ProtoDeclare name='SymbolLabelappinfo='NTDS Symbology for label'>
 54                 <ProtoInterface>
 55                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
 56                      <field name='trackLabeltype='MFStringaccessType='inputOutput'
                     appinfo='Additional information for the track (i.e. track number entityID entity name)'/>
 57                 </ProtoInterface>
 58                 <ProtoBody>
 59                      <Transform rotation='1 0 0 -1.57translation='0 0 1.5'>
 60                           <Shape>
 61                                <Appearance>
 62                                     <Material>
 63                                          <IS>
 64                                               <connect nodeField='diffuseColorprotoField='labelColor'/>
 65                                          </IS>
 66                                     </Material>
 67                                </Appearance>
 68                                <Text>
 69                                     <IS>
 70                                          <connect nodeField='stringprotoField='trackLabel'/>
 71                                     </IS>
 72                                     <FontStyle justify='"MIDDLE" "MIDDLE"size='0.8'/>
 73                                </Text>
 74                           </Shape>
 75                      </Transform>
 76                 </ProtoBody>
 77            </ProtoDeclare>
 78            <!-- Sea Units -->
 79            <ProtoDeclare name='SurfacePendingappinfo='NTDS Symbology for surface vessel, classification pending'>
 80                 <ProtoInterface>
 81                      <field name='colortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
 82                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
 83                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
 84                 </ProtoInterface>
 85                 <ProtoBody>
 86                      <Transform>
 87                           <ProtoInstance name='SymbolVector'>
 88                                <fieldValue name='colorvalue='1 1 0'/>
 89                                <fieldValue name='labelColorvalue='1 1 0'/>
 90                           </ProtoInstance>
 91                           <Billboard>
 92                                <!-- Symbol Geometry Top arc -->
 93                                <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
 94 
                                   <!-- Shape SemiCircle is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                   <Shape DEF='SemiCircle'>
 95                                          <Arc2D endAngle='3.1415926536'/>
 96                                          <Appearance>
 97                                               <Material>
 98                                                    <IS>
 99                                                         <connect nodeField='emissiveColorprotoField='color'/>
100                                                    </IS>
101                                               </Material>
102                                          </Appearance>
103                                     </Shape>
104                                </Transform>
105                                <!-- Right arc -->
106                                <Transform rotation='0 -1 0 1.57'>
107                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
108                                          <Shape USE='SemiCircle'/>
109                                     </Transform>
110                                </Transform>
111                                <!-- Left arc -->
112                                <Transform rotation='0 1 0 1.57'>
113                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
114                                          <Shape USE='SemiCircle'/>
115                                     </Transform>
116                                </Transform>
117                                <!-- Bottom arc -->
118                                <Transform rotation='1 0 0 1.57translation='0 0 1'>
119                                     <Shape USE='SemiCircle'/>
120                                </Transform>
121                                <!-- Symbol Modifier -->
122                                <Transform rotation='1 0 0 -1.57translation='0 0 -1.1'>
123                                     <Shape>
124                                          <Appearance>
125                                               <Material>
126                                                    <IS>
127                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
128                                                    </IS>
129                                               </Material>
130                                          </Appearance>
131                                          <Text>
132                                               <IS>
133                                                    <connect nodeField='stringprotoField='symbolModifier'/>
134                                               </IS>
135                                               <FontStyle justify='"MIDDLE" "MIDDLE"size='2'/>
136                                          </Text>
137                                     </Shape>
138                                </Transform>
139                           </Billboard>
140                      </Transform>
141                 </ProtoBody>
142            </ProtoDeclare>
143            <ProtoDeclare name='SurfaceUnknownappinfo='NTDS Symbology for surface vessel, classification unknown'>
144                 <ProtoInterface>
145                      <field name='colortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
146                 </ProtoInterface>
147                 <ProtoBody>
148                      <Transform>
149                           <ProtoInstance name='SymbolVector'>
150                                <fieldValue name='colorvalue='1 1 0'/>
151                                <fieldValue name='labelColorvalue='1 1 0'/>
152                           </ProtoInstance>
153                           <Billboard>
154                                <!-- Symbol Geometry Top arc -->
155                                <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
156 
                                   <!-- Shape SemiCircle2 is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                   <Shape DEF='SemiCircle2'>
157                                          <Arc2D endAngle='3.1415926536'/>
158                                          <Appearance>
159                                               <Material>
160                                                    <IS>
161                                                         <connect nodeField='emissiveColorprotoField='color'/>
162                                                    </IS>
163                                               </Material>
164                                          </Appearance>
165                                     </Shape>
166                                </Transform>
167                                <!-- Right arc -->
168                                <Transform rotation='0 -1 0 1.57'>
169                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
170                                          <Shape USE='SemiCircle2'/>
171                                     </Transform>
172                                </Transform>
173                                <!-- Left arc -->
174                                <Transform rotation='0 1 0 1.57'>
175                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
176                                          <Shape USE='SemiCircle2'/>
177                                     </Transform>
178                                </Transform>
179                                <!-- Bottom arc -->
180                                <Transform rotation='1 0 0 1.57translation='0 0 1'>
181                                     <Shape USE='SemiCircle2'/>
182                                </Transform>
183                           </Billboard>
184                      </Transform>
185                 </ProtoBody>
186            </ProtoDeclare>
187            <ProtoDeclare name='SurfaceFriendappinfo='NTDS Symbology for surface vessel, classification friendly'>
188                 <ProtoInterface>
189                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
190                 </ProtoInterface>
191                 <ProtoBody>
192                      <Transform>
193                           <ProtoInstance name='SymbolVector'>
194                                <fieldValue name='colorvalue='0 0 1'/>
195                                <fieldValue name='labelColorvalue='0 0 1'/>
196                           </ProtoInstance>
197                           <Billboard>
198                                <Transform>
199                                     <!-- Symbol Geometry -->
200                                     <Shape>
201                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0coordIndex='1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33'>
202                                               <Coordinate point='0 0 -1 0.195 0 -0.981 0.382 0 -0.924 0.555 0 -0.832 0.707 0 -0.708 0.831 0 -0.556 0.923 0 -0.383 0.98 0 -0.196 1 0 0 0.98 0 0.195 0.923 0 0.382 0.831 0 0.555 0.707 0 0.707 0.555 0 0.831 0.382 0 0.923 0.195 0 0.98 0 0 1 -0.195 0 0.98 -0.382 0 0.923 -0.555 0 0.831 -0.707 0 0.707 -0.831 0 0.555 -0.923 0 0.382 -0.98 0 0.195 -1 0 0 -0.981 0 -0.195 -0.924 0 -0.382 -0.832 0 -0.555 -0.708 0 -0.707 -0.556 0 -0.831 -0.383 0 -0.923 -0.196 0 -0.98 0 0 -1 0.195 0 -0.981'/>
203                                               <Color>
204                                                    <IS>
205                                                         <connect nodeField='colorprotoField='color'/>
206                                                    </IS>
207                                               </Color>
208                                          </IndexedLineSet>
209                                     </Shape>
210                                </Transform>
211                           </Billboard>
212                      </Transform>
213                 </ProtoBody>
214            </ProtoDeclare>
215            <ProtoDeclare name='SurfaceNeutralappinfo='NTDS Symbology for surface vessel, classification neutral'>
216                 <ProtoInterface>
217                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
218                 </ProtoInterface>
219                 <ProtoBody>
220                      <Transform>
221                           <ProtoInstance name='SymbolVector'>
222                                <fieldValue name='colorvalue='0 1 0'/>
223                                <fieldValue name='labelColorvalue='0 1 0'/>
224                           </ProtoInstance>
225                           <Billboard>
226                                <Transform>
227                                     <!-- Symbol Geometry -->
228                                     <Shape>
229                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0coordIndex='0 1 2 3 0'>
230                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0 -1.0 0 -1.0'/>
231                                               <Color>
232                                                    <IS>
233                                                         <connect nodeField='colorprotoField='color'/>
234                                                    </IS>
235                                               </Color>
236                                          </IndexedLineSet>
237                                     </Shape>
238                                </Transform>
239                           </Billboard>
240                      </Transform>
241                 </ProtoBody>
242            </ProtoDeclare>
243            <ProtoDeclare name='SurfaceHostile'>
244                 <ProtoInterface>
245                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
246                 </ProtoInterface>
247                 <ProtoBody>
248                      <Transform>
249                           <ProtoInstance name='SymbolVector'>
250                                <fieldValue name='colorvalue='1 0 0'/>
251                                <fieldValue name='labelColorvalue='1 0 0'/>
252                           </ProtoInstance>
253                           <Billboard>
254                                <Transform rotation='0 1 0 .785'>
255                                     <!-- Symbol Geometry -->
256                                     <Shape>
257                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0coordIndex='0 1 2 3 0'>
258                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0 -1.0 0 -1.0'/>
259                                               <Color>
260                                                    <IS>
261                                                         <connect nodeField='colorprotoField='color'/>
262                                                    </IS>
263                                               </Color>
264                                          </IndexedLineSet>
265                                     </Shape>
266                                </Transform>
267                           </Billboard>
268                      </Transform>
269                 </ProtoBody>
270            </ProtoDeclare>
271            <ProtoDeclare name='SurfaceAssumedFriendappinfo='NTDS Symbology for surface vessel, classification assumed friendly'>
272                 <ProtoInterface>
273                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
274                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
275                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
276                 </ProtoInterface>
277                 <ProtoBody>
278                      <Transform>
279                           <ProtoInstance name='SymbolVector'>
280                                <fieldValue name='colorvalue='0 0 1'/>
281                                <fieldValue name='labelColorvalue='0 0 1'/>
282                           </ProtoInstance>
283                           <Billboard>
284                                <Transform>
285                                     <!-- TODO: Save -> Symbol Geometry (broken circle) -->
286                                     <!-- Shape> <IndexedLineSet colorIndex='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0' colorPerVertex='false' coordIndex='0 1 -1 2 3 -1 4 5 -1 6 7 -1 8 9 -1 10 11 -1 12 13 -1 14 15 -1 16 17 -1 18 19 -1 20 21'> <Coordinate point='0 0 -1 0.195 0 -0.981 0.555 0 -0.832 0.707 0 -0.708 0.923 0 -0.383 0.98 0 -0.196 0.98 0 0.195 0.923 0 0.382 0.707 0 0.707 0.555 0 0.831 0.195 0 0.98 0 0 1 -0.382 0 0.923 -0.555 0 0.831 -0.831 0 0.555 -0.923 0 0.382 -1 0 0 -0.981 0 -0.195 -0.832 0 -0.555 -0.708 0 -0.707 -0.383 0 -0.923 -0.196 0 -0.98'/> <Color> <IS> <connect nodeField='color' protoField='color'/> </IS> </Color> </IndexedLineSet> </Shape -->
287                                     <!-- Symbol Geometry -->
288                                     <Shape>
289                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0coordIndex='1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33'>
290                                               <Coordinate point='0 0 -1 0.195 0 -0.981 0.382 0 -0.924 0.555 0 -0.832 0.707 0 -0.708 0.831 0 -0.556 0.923 0 -0.383 0.98 0 -0.196 1 0 0 0.98 0 0.195 0.923 0 0.382 0.831 0 0.555 0.707 0 0.707 0.555 0 0.831 0.382 0 0.923 0.195 0 0.98 0 0 1 -0.195 0 0.98 -0.382 0 0.923 -0.555 0 0.831 -0.707 0 0.707 -0.831 0 0.555 -0.923 0 0.382 -0.98 0 0.195 -1 0 0 -0.981 0 -0.195 -0.924 0 -0.382 -0.832 0 -0.555 -0.708 0 -0.707 -0.556 0 -0.831 -0.383 0 -0.923 -0.196 0 -0.98 0 0 -1 0.195 0 -0.981'/>
291                                               <Color>
292                                                    <IS>
293                                                         <connect nodeField='colorprotoField='color'/>
294                                                    </IS>
295                                               </Color>
296                                          </IndexedLineSet>
297                                     </Shape>
298                                </Transform>
299                                <!-- Symbol Modifier -->
300                                <Transform rotation='1 0 0 -1.57translation='1 0 -1.2'>
301                                     <Shape>
302                                          <Appearance>
303                                               <Material>
304                                                    <IS>
305                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
306                                                    </IS>
307                                               </Material>
308                                          </Appearance>
309                                          <Text>
310                                               <IS>
311                                                    <connect nodeField='stringprotoField='symbolModifier'/>
312                                               </IS>
313                                               <FontStyle justify='"BEGIN" "BEGIN"size='0.5'/>
314                                          </Text>
315                                     </Shape>
316                                </Transform>
317                           </Billboard>
318                      </Transform>
319                 </ProtoBody>
320            </ProtoDeclare>
321            <ProtoDeclare name='SurfaceSuspectappinfo='NTDS Symbology for surface vessel, classification suspected hostile'>
322                 <ProtoInterface>
323                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
324                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
325                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
326                 </ProtoInterface>
327                 <ProtoBody>
328                      <Transform>
329                           <ProtoInstance name='SymbolVector'>
330                                <fieldValue name='colorvalue='1 0 0'/>
331                                <fieldValue name='labelColorvalue='1 0 0'/>
332                           </ProtoInstance>
333                           <Billboard>
334                                <Transform rotation='0 1 0 .785'>
335                                     <!-- TODO: Save -> Symbol Geometry (broken lined square) -->
336                                     <!-- Shape> <IndexedLineSet colorIndex='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0' colorPerVertex='false' coordIndex='0 1 -1 2 3 -1 4 5 -1 6 7 8 -1 9 10 -1 11 12 -1 13 14 15 -1 16 17 -1 18 19 -1 20 21 22 -1 23 24 -1 25 26 -1 27 28'> <Coordinate point='-1.0 0 1.0 -0.8 0 1.0 -0.4 0 1.0 -0.2 0 1.0 0.2 0 1.0 0.4 0 1.0 0.8 0 1.0 1.0 0 1.0 1.0 0 0.8 1.0 0 0.4 1.0 0 0.2 1.0 0 -0.2 1.0 0 -0.4 1.0 0 -0.8 1.0 0 -1.0 0.8 0 -1.0 0.4 0 -1.0 0.2 0 -1.0 -0.2 0 -1.0 -0.4 0 -1.0 -0.8 0 -1.0 -1.0 0 -1.0 -1.0 0 -0.8 -1.0 0 -0.4 -1.0 0 -0.2 -1.0 0 0.2 -1.0 0 0.4 -1.0 0 0.8 -1.0 0 1.0'/> <Color> <IS> <connect nodeField='color' protoField='color'/> </IS> </Color> </IndexedLineSet> </Shape -->
337                                     <!-- Symbol Geometry -->
338                                     <Shape>
339                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0coordIndex='0 1 2 3 0'>
340                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0 -1.0 0 -1.0'/>
341                                               <Color>
342                                                    <IS>
343                                                         <connect nodeField='colorprotoField='color'/>
344                                                    </IS>
345                                               </Color>
346                                          </IndexedLineSet>
347                                     </Shape>
348                                </Transform>
349                                <!-- Symbol Modifier -->
350                                <Transform rotation='1 0 0 -1.57translation='1 0 -1.2'>
351                                     <Shape>
352                                          <Appearance>
353                                               <Material>
354                                                    <IS>
355                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
356                                                    </IS>
357                                               </Material>
358                                          </Appearance>
359                                          <Text>
360                                               <IS>
361                                                    <connect nodeField='stringprotoField='symbolModifier'/>
362                                               </IS>
363                                               <FontStyle justify='"BEGIN" "BEGIN"size='0.5'/>
364                                          </Text>
365                                     </Shape>
366                                </Transform>
367                           </Billboard>
368                      </Transform>
369                 </ProtoBody>
370            </ProtoDeclare>
371            <!-- Air Units -->
372            <ProtoDeclare name='AirPendingappinfo='NTDS Symbology for air vessel, classification pending'>
373                 <ProtoInterface>
374                      <field name='colortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
375                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
376                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
377                 </ProtoInterface>
378                 <ProtoBody>
379                      <Transform>
380                           <ProtoInstance name='SymbolVector'>
381                                <fieldValue name='colorvalue='1 1 0'/>
382                                <fieldValue name='labelColorvalue='1 1 0'/>
383                           </ProtoInstance>
384                           <Billboard>
385                                <!-- Symbol Geometry Top arc -->
386                                <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
387 
                                   <!-- Shape SemiCircle3 is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                   <Shape DEF='SemiCircle3'>
388                                          <Arc2D endAngle='3.1415926536'/>
389                                          <Appearance>
390                                               <Material>
391                                                    <IS>
392                                                         <connect nodeField='emissiveColorprotoField='color'/>
393                                                    </IS>
394                                               </Material>
395                                          </Appearance>
396                                     </Shape>
397                                </Transform>
398                                <!-- Right arc -->
399                                <Transform rotation='0 -1 0 1.57'>
400                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
401                                          <Shape USE='SemiCircle3'/>
402                                     </Transform>
403                                </Transform>
404                                <!-- Left arc -->
405                                <Transform rotation='0 1 0 1.57'>
406                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
407                                          <Shape USE='SemiCircle3'/>
408                                     </Transform>
409                                </Transform>
410                                <!-- Symbol Modifier -->
411                                <Transform rotation='1 0 0 -1.57translation='0 0 -1.1'>
412                                     <Shape>
413                                          <Appearance>
414                                               <Material>
415                                                    <IS>
416                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
417                                                    </IS>
418                                               </Material>
419                                          </Appearance>
420                                          <Text>
421                                               <IS>
422                                                    <connect nodeField='stringprotoField='symbolModifier'/>
423                                               </IS>
424                                               <FontStyle justify='"MIDDLE" "MIDDLE"size='2'/>
425                                          </Text>
426                                     </Shape>
427                                </Transform>
428                           </Billboard>
429                      </Transform>
430                 </ProtoBody>
431            </ProtoDeclare>
432            <ProtoDeclare name='AirUnknownappinfo='NTDS Symbology for air vessel, classification unknown'>
433                 <ProtoInterface>
434                      <field name='colortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
435                 </ProtoInterface>
436                 <ProtoBody>
437                      <Transform>
438                           <ProtoInstance name='SymbolVector'>
439                                <fieldValue name='colorvalue='1 1 0'/>
440                                <fieldValue name='labelColorvalue='1 1 0'/>
441                           </ProtoInstance>
442                           <Billboard>
443                                <!-- Symbol Geometry Top arc -->
444                                <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
445 
                                   <!-- Shape SemiCircle4 is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                   <Shape DEF='SemiCircle4'>
446                                          <Arc2D endAngle='3.1415926536'/>
447                                          <Appearance>
448                                               <Material>
449                                                    <IS>
450                                                         <connect nodeField='emissiveColorprotoField='color'/>
451                                                    </IS>
452                                               </Material>
453                                          </Appearance>
454                                     </Shape>
455                                </Transform>
456                                <!-- Right arc -->
457                                <Transform rotation='0 -1 0 1.57'>
458                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
459                                          <Shape USE='SemiCircle4'/>
460                                     </Transform>
461                                </Transform>
462                                <!-- Left arc -->
463                                <Transform rotation='0 1 0 1.57'>
464                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
465                                          <Shape USE='SemiCircle4'/>
466                                     </Transform>
467                                </Transform>
468                           </Billboard>
469                      </Transform>
470                 </ProtoBody>
471            </ProtoDeclare>
472            <ProtoDeclare name='AirFriendappinfo='NTDS Symbology for air vessel, classification friendly'>
473                 <ProtoInterface>
474                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
475                 </ProtoInterface>
476                 <ProtoBody>
477                      <Transform>
478                           <ProtoInstance name='SymbolVector'>
479                                <fieldValue name='colorvalue='0 0 1'/>
480                                <fieldValue name='labelColorvalue='0 0 1'/>
481                           </ProtoInstance>
482                           <Billboard>
483                                <Transform rotation='0 1 0 3.14'>
484                                     <!-- Symbol Geometry -->
485                                     <Shape>
486                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0coordIndex='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16'>
487                                               <Coordinate point='1 0 0 0.98 0 0.195 0.923 0 0.382 0.831 0 0.555 0.707 0 0.707 0.555 0 0.831 0.382 0 0.923 0.195 0 0.98 0 0 1 -0.195 0 0.98 -0.382 0 0.923 -0.555 0 0.831 -0.707 0 0.707 -0.831 0 0.555 -0.923 0 0.382 -0.98 0 0.195 -1 0 0'/>
488                                               <Color>
489                                                    <IS>
490                                                         <connect nodeField='colorprotoField='color'/>
491                                                    </IS>
492                                               </Color>
493                                          </IndexedLineSet>
494                                     </Shape>
495                                </Transform>
496                           </Billboard>
497                      </Transform>
498                 </ProtoBody>
499            </ProtoDeclare>
500            <ProtoDeclare name='AirNeutralappinfo='NTDS Symbology for air vessel, classification neutral'>
501                 <ProtoInterface>
502                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
503                 </ProtoInterface>
504                 <ProtoBody>
505                      <Transform>
506                           <ProtoInstance name='SymbolVector'>
507                                <fieldValue name='colorvalue='0 1 0'/>
508                                <fieldValue name='labelColorvalue='0 1 0'/>
509                           </ProtoInstance>
510                           <Billboard>
511                                <Transform>
512                                     <!-- Symbol Geometry -->
513                                     <Shape>
514                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0coordIndex='0 1 2 3'>
515                                               <Coordinate point='-1.0 0 0 -1.0 0 -1.0 1.0 0 -1.0 1.0 0 0'/>
516                                               <Color>
517                                                    <IS>
518                                                         <connect nodeField='colorprotoField='color'/>
519                                                    </IS>
520                                               </Color>
521                                          </IndexedLineSet>
522                                     </Shape>
523                                </Transform>
524                           </Billboard>
525                      </Transform>
526                 </ProtoBody>
527            </ProtoDeclare>
528            <ProtoDeclare name='AirHostileappinfo='NTDS Symbology for air vessel, classification hostile'>
529                 <ProtoInterface>
530                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
531                 </ProtoInterface>
532                 <ProtoBody>
533                      <Transform>
534                           <ProtoInstance name='SymbolVector'>
535                                <fieldValue name='colorvalue='1 0 0'/>
536                                <fieldValue name='labelColorvalue='1 0 0'/>
537                           </ProtoInstance>
538                           <Billboard>
539                                <Transform rotation='0 1 0 2.295'>
540                                     <!-- Symbol Geometry -->
541                                     <Shape>
542                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0coordIndex='0 1 2'>
543                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0'/>
544                                               <Color>
545                                                    <IS>
546                                                         <connect nodeField='colorprotoField='color'/>
547                                                    </IS>
548                                               </Color>
549                                          </IndexedLineSet>
550                                     </Shape>
551                                </Transform>
552                           </Billboard>
553                      </Transform>
554                 </ProtoBody>
555            </ProtoDeclare>
556            <ProtoDeclare name='AirAssumedFriendappinfo='NTDS Symbology for air vessel, classification assumed friendly'>
557                 <ProtoInterface>
558                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
559                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
560                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
561                 </ProtoInterface>
562                 <ProtoBody>
563                      <Transform>
564                           <ProtoInstance name='SymbolVector'>
565                                <fieldValue name='colorvalue='0 0 1'/>
566                                <fieldValue name='labelColorvalue='0 0 1'/>
567                           </ProtoInstance>
568                           <Billboard>
569                                <Transform rotation='0 1 0 1.57'>
570                                     <!-- Symbol Geometry -->
571                                     <Shape>
572                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0 0 0 0 0 0 0 0coordIndex='0 1 -1 2 3 -1 4 5 -1 6 7 -1 8 9 -1 10 11'>
573                                               <Coordinate point='0 0 -1 0.195 0 -0.981 0.555 0 -0.832 0.707 0 -0.708 0.923 0 -0.383 0.98 0 -0.196 0.98 0 0.195 0.923 0 0.382 0.707 0 0.707 0.555 0 0.831 0.195 0 0.98 0 0 1'/>
574                                               <Color>
575                                                    <IS>
576                                                         <connect nodeField='colorprotoField='color'/>
577                                                    </IS>
578                                               </Color>
579                                          </IndexedLineSet>
580                                     </Shape>
581                                </Transform>
582                                <!-- Symbol Modifier -->
583                                <Transform rotation='1 0 0 -1.57translation='1 0 -1.2'>
584                                     <Shape>
585                                          <Appearance>
586                                               <Material>
587                                                    <IS>
588                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
589                                                    </IS>
590                                               </Material>
591                                          </Appearance>
592                                          <Text>
593                                               <IS>
594                                                    <connect nodeField='stringprotoField='symbolModifier'/>
595                                               </IS>
596                                               <FontStyle justify='"BEGIN" "BEGIN"size='0.5'/>
597                                          </Text>
598                                     </Shape>
599                                </Transform>
600                           </Billboard>
601                      </Transform>
602                 </ProtoBody>
603            </ProtoDeclare>
604            <ProtoDeclare name='AirSuspectappinfo='NTDS Symbology for air vessel, classification suspect'>
605                 <ProtoInterface>
606                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
607                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
608                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
609                 </ProtoInterface>
610                 <ProtoBody>
611                      <Transform>
612                           <ProtoInstance name='SymbolVector'>
613                                <fieldValue name='colorvalue='1 0 0'/>
614                                <fieldValue name='labelColorvalue='1 0 0'/>
615                           </ProtoInstance>
616                           <Billboard>
617                                <Transform rotation='0 1 0 2.295'>
618                                     <Shape>
619                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0coordIndex='0 1 2 3 0'>
620                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0 -1.0 0 -1.0'/>
621                                               <Color>
622                                                    <IS>
623                                                         <connect nodeField='colorprotoField='color'/>
624                                                    </IS>
625                                               </Color>
626                                          </IndexedLineSet>
627                                     </Shape>
628                                </Transform>
629                                <!-- Symbol Modifier -->
630                                <Transform rotation='1 0 0 -1.57translation='1 0 -1.2'>
631                                     <Shape>
632                                          <Appearance>
633                                               <Material>
634                                                    <IS>
635                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
636                                                    </IS>
637                                               </Material>
638                                          </Appearance>
639                                          <Text>
640                                               <IS>
641                                                    <connect nodeField='stringprotoField='symbolModifier'/>
642                                               </IS>
643                                               <FontStyle justify='"BEGIN" "BEGIN"size='0.5'/>
644                                          </Text>
645                                     </Shape>
646                                </Transform>
647                           </Billboard>
648                      </Transform>
649                 </ProtoBody>
650            </ProtoDeclare>
651            <!-- Sub-Surface Units -->
652            <ProtoDeclare name='SubSurfacePendingappinfo='NTDS Symbology for subsurface vessel, classification pending'>
653                 <ProtoInterface>
654                      <field name='colortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
655                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
656                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
657                 </ProtoInterface>
658                 <ProtoBody>
659                      <Transform>
660                           <ProtoInstance name='SymbolVector'>
661                                <fieldValue name='colorvalue='1 1 0'/>
662                                <fieldValue name='labelColorvalue='1 1 0'/>
663                           </ProtoInstance>
664                           <Billboard>
665                                <!-- Symbol Geometry Right arc -->
666                                <Transform rotation='0 -1 0 1.57'>
667                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
668 
                                        <!-- Shape SemiCircle5 is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                        <Shape DEF='SemiCircle5'>
669                                               <Arc2D endAngle='3.1415926536'/>
670                                               <Appearance>
671                                                    <Material>
672                                                         <IS>
673                                                              <connect nodeField='emissiveColorprotoField='color'/>
674                                                         </IS>
675                                                    </Material>
676                                               </Appearance>
677                                          </Shape>
678                                     </Transform>
679                                </Transform>
680                                <!-- Left arc -->
681                                <Transform rotation='0 1 0 1.57'>
682                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
683                                          <Shape USE='SemiCircle5'/>
684                                     </Transform>
685                                </Transform>
686                                <!-- Bottom arc -->
687                                <Transform rotation='1 0 0 1.57translation='0 0 1'>
688                                     <Shape USE='SemiCircle5'/>
689                                </Transform>
690                                <!-- Symbol Modifier -->
691                                <Transform rotation='1 0 0 -1.57translation='0 0 -1.1'>
692                                     <Shape>
693                                          <Appearance>
694                                               <Material>
695                                                    <IS>
696                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
697                                                    </IS>
698                                               </Material>
699                                          </Appearance>
700                                          <Text>
701                                               <IS>
702                                                    <connect nodeField='stringprotoField='symbolModifier'/>
703                                               </IS>
704                                               <FontStyle justify='"MIDDLE" "MIDDLE"size='2'/>
705                                          </Text>
706                                     </Shape>
707                                </Transform>
708                           </Billboard>
709                      </Transform>
710                 </ProtoBody>
711            </ProtoDeclare>
712            <ProtoDeclare name='SubSurfaceUnknownappinfo='NTDS Symbology for subsurface vessel, classification unknown'>
713                 <ProtoInterface>
714                      <field name='colortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
715                 </ProtoInterface>
716                 <ProtoBody>
717                      <Transform>
718                           <ProtoInstance name='SymbolVector'>
719                                <fieldValue name='colorvalue='1 1 0'/>
720                                <fieldValue name='labelColorvalue='1 1 0'/>
721                           </ProtoInstance>
722                           <Billboard>
723                                <!-- Symbol Geometry Right arc -->
724                                <Transform rotation='0 -1 0 1.57'>
725                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
726 
                                        <!-- Shape SemiCircle6 is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                        <Shape DEF='SemiCircle6'>
727                                               <Arc2D endAngle='3.1415926536'/>
728                                               <Appearance>
729                                                    <Material>
730                                                         <IS>
731                                                              <connect nodeField='emissiveColorprotoField='color'/>
732                                                         </IS>
733                                                    </Material>
734                                               </Appearance>
735                                          </Shape>
736                                     </Transform>
737                                </Transform>
738                                <!-- Left arc -->
739                                <Transform rotation='0 1 0 1.57'>
740                                     <Transform rotation='-1 0 0 1.57translation='0 0 -1'>
741                                          <Shape USE='SemiCircle6'/>
742                                     </Transform>
743                                </Transform>
744                                <!-- Bottom arc -->
745                                <Transform rotation='1 0 0 1.57translation='0 0 1'>
746                                     <Shape USE='SemiCircle6'/>
747                                </Transform>
748                           </Billboard>
749                      </Transform>
750                 </ProtoBody>
751            </ProtoDeclare>
752            <ProtoDeclare name='SubSurfaceFriendappinfo='NTDS Symbology for subsurface vessel, classification friendly'>
753                 <ProtoInterface>
754                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
755                 </ProtoInterface>
756                 <ProtoBody>
757                      <Transform>
758                           <ProtoInstance name='SymbolVector'>
759                                <fieldValue name='colorvalue='0 0 1'/>
760                                <fieldValue name='labelColorvalue='0 0 1'/>
761                           </ProtoInstance>
762                           <Billboard>
763                                <Transform>
764                                     <!-- Symbol Geometry -->
765                                     <Shape>
766                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0coordIndex='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16'>
767                                               <Coordinate point='1 0 0 0.98 0 0.195 0.923 0 0.382 0.831 0 0.555 0.707 0 0.707 0.555 0 0.831 0.382 0 0.923 0.195 0 0.98 0 0 1 -0.195 0 0.98 -0.382 0 0.923 -0.555 0 0.831 -0.707 0 0.707 -0.831 0 0.555 -0.923 0 0.382 -0.98 0 0.195 -1 0 0'/>
768                                               <Color>
769                                                    <IS>
770                                                         <connect nodeField='colorprotoField='color'/>
771                                                    </IS>
772                                               </Color>
773                                          </IndexedLineSet>
774                                     </Shape>
775                                </Transform>
776                           </Billboard>
777                      </Transform>
778                 </ProtoBody>
779            </ProtoDeclare>
780            <ProtoDeclare name='SubSurfaceNeutralappinfo='NTDS Symbology for subsurface vessel, classification neutral'>
781                 <ProtoInterface>
782                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
783                 </ProtoInterface>
784                 <ProtoBody>
785                      <Transform>
786                           <ProtoInstance name='SymbolVector'>
787                                <fieldValue name='colorvalue='0 1 0'/>
788                                <fieldValue name='labelColorvalue='0 1 0'/>
789                           </ProtoInstance>
790                           <Billboard>
791                                <Transform rotation='0 1 0 3.14'>
792                                     <!-- Symbol Geometry -->
793                                     <Shape>
794                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0coordIndex='0 1 2 3'>
795                                               <Coordinate point='-1.0 0 0 -1.0 0 -1.0 1.0 0 -1.0 1.0 0 0'/>
796                                               <Color>
797                                                    <IS>
798                                                         <connect nodeField='colorprotoField='color'/>
799                                                    </IS>
800                                               </Color>
801                                          </IndexedLineSet>
802                                     </Shape>
803                                </Transform>
804                           </Billboard>
805                      </Transform>
806                 </ProtoBody>
807            </ProtoDeclare>
808            <ProtoDeclare name='SubSurfaceHostileappinfo='NTDS Symbology for subsurface vessel, classification hostile'>
809                 <ProtoInterface>
810                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
811                 </ProtoInterface>
812                 <ProtoBody>
813                      <Transform>
814                           <ProtoInstance name='SymbolVector'>
815                                <fieldValue name='colorvalue='1 0 0'/>
816                                <fieldValue name='labelColorvalue='1 0 0'/>
817                           </ProtoInstance>
818                           <Billboard>
819                                <Transform rotation='0 1 0 -.785'>
820                                     <!-- Symbol Geometry -->
821                                     <Shape>
822                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0coordIndex='0 1 2'>
823                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0'/>
824                                               <Color>
825                                                    <IS>
826                                                         <connect nodeField='colorprotoField='color'/>
827                                                    </IS>
828                                               </Color>
829                                          </IndexedLineSet>
830                                     </Shape>
831                                </Transform>
832                           </Billboard>
833                      </Transform>
834                 </ProtoBody>
835            </ProtoDeclare>
836            <ProtoDeclare name='SubSurfaceAssumedFriendappinfo='NTDS Symbology for subsurface vessel, classification assumed friendly'>
837                 <ProtoInterface>
838                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
839                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
840                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
841                 </ProtoInterface>
842                 <ProtoBody>
843                      <Transform>
844                           <ProtoInstance name='SymbolVector'>
845                                <fieldValue name='colorvalue='0 0 1'/>
846                                <fieldValue name='labelColorvalue='0 0 1'/>
847                           </ProtoInstance>
848                           <Billboard>
849                                <Transform rotation='0 1 0 -1.57'>
850                                     <!-- Symbol Geometry -->
851                                     <Shape>
852                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0 0 0 0 0 0 0 0coordIndex='0 1 -1 2 3 -1 4 5 -1 6 7 -1 8 9 -1 10 11'>
853                                               <Coordinate point='0 0 -1 0.195 0 -0.981 0.555 0 -0.832 0.707 0 -0.708 0.923 0 -0.383 0.98 0 -0.196 0.98 0 0.195 0.923 0 0.382 0.707 0 0.707 0.555 0 0.831 0.195 0 0.98 0 0 1'/>
854                                               <Color>
855                                                    <IS>
856                                                         <connect nodeField='colorprotoField='color'/>
857                                                    </IS>
858                                               </Color>
859                                          </IndexedLineSet>
860                                     </Shape>
861                                </Transform>
862                                <!-- Symbol Modifier -->
863                                <Transform rotation='1 0 0 -1.57translation='1 0 -1.2'>
864                                     <Shape>
865                                          <Appearance>
866                                               <Material>
867                                                    <IS>
868                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
869                                                    </IS>
870                                               </Material>
871                                          </Appearance>
872                                          <Text>
873                                               <IS>
874                                                    <connect nodeField='stringprotoField='symbolModifier'/>
875                                               </IS>
876                                               <FontStyle justify='"BEGIN" "BEGIN"size='0.5'/>
877                                          </Text>
878                                     </Shape>
879                                </Transform>
880                           </Billboard>
881                      </Transform>
882                 </ProtoBody>
883            </ProtoDeclare>
884            <ProtoDeclare name='SubSurfaceSuspectappinfo='NTDS Symbology for subsurface vessel, classification suspect'>
885                 <ProtoInterface>
886                      <field name='colortype='MFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Single color value for symbol'/>
887                      <field name='labelColortype='SFColorvalue='0.8 0.8 0.8accessType='inputOutput'
                     appinfo='Color for labels'/>
888                      <field name='symbolModifiertype='MFStringaccessType='inputOutput'
                     appinfo='Symbol Modifier'/>
889                 </ProtoInterface>
890                 <ProtoBody>
891                      <Transform>
892                           <ProtoInstance name='SymbolVector'>
893                                <fieldValue name='colorvalue='1 0 0'/>
894                                <fieldValue name='labelColorvalue='1 0 0'/>
895                           </ProtoInstance>
896                           <Billboard>
897                                <Transform rotation='0 1 0 -.785'>
898                                     <Shape>
899                                          <IndexedLineSet colorPerVertex='falsecolorIndex='0 0 0 0 0coordIndex='0 1 2 3 0'>
900                                               <Coordinate point='-1.0 0 1.0 1.0 0 1.0 1.0 0 -1.0 -1.0 0 -1.0'/>
901                                               <Color>
902                                                    <IS>
903                                                         <connect nodeField='colorprotoField='color'/>
904                                                    </IS>
905                                               </Color>
906                                          </IndexedLineSet>
907                                     </Shape>
908                                </Transform>
909                                <!-- Symbol Modifier -->
910                                <Transform rotation='1 0 0 -1.57translation='1 0 -1.2'>
911                                     <Shape>
912                                          <Appearance>
913                                               <Material>
914                                                    <IS>
915                                                         <connect nodeField='diffuseColorprotoField='labelColor'/>
916                                                    </IS>
917                                               </Material>
918                                          </Appearance>
919                                          <Text>
920                                               <IS>
921                                                    <connect nodeField='stringprotoField='symbolModifier'/>
922                                               </IS>
923                                               <FontStyle justify='"BEGIN" "BEGIN"size='0.5'/>
924                                          </Text>
925                                     </Shape>
926                                </Transform>
927                           </Billboard>
928                      </Transform>
929                 </ProtoBody>
930            </ProtoDeclare>
931            <!-- Ground Equipment (exactly the same as Sea Surface symbols) -->
932            <ProtoDeclare name='GroundEquipmentPendingappinfo='NTDS Symbology for Ground Equipment, classification pending'>
933                 <ProtoBody>
934                      <Transform>
935                           <ProtoInstance name='SurfacePending'>
936                                <fieldValue name='colorvalue='1 1 0'/>
937                                <fieldValue name='labelColorvalue='1 1 0'/>
938                                <fieldValue name='symbolModifiervalue='"?"'/>
939                           </ProtoInstance>
940                      </Transform>
941                 </ProtoBody>
942            </ProtoDeclare>
943            <ProtoDeclare name='GroundEquipmentUnknownappinfo='NTDS Symbology for Ground Equipment, classification unknown'>
944                 <ProtoBody>
945                      <Transform>
946                           <ProtoInstance name='SurfaceUnknown'>
947                                <fieldValue name='colorvalue='1 1 0'/>
948                           </ProtoInstance>
949                      </Transform>
950                 </ProtoBody>
951            </ProtoDeclare>
952            <ProtoDeclare name='GroundEquipmentFriendappinfo='NTDS Symbology for Ground Equipment, classification friendly'>
953                 <ProtoBody>
954                      <Transform>
955                           <ProtoInstance name='SurfaceFriend'>
956                                <fieldValue name='colorvalue='0 0 1'/>
957                           </ProtoInstance>
958                      </Transform>
959                 </ProtoBody>
960            </ProtoDeclare>
961            <ProtoDeclare name='GroundEquipmentNeutralappinfo='NTDS Symbology for Ground Equipment, classification neutral'>
962                 <ProtoBody>
963                      <Transform>
964                           <ProtoInstance name='SurfaceNeutral'>
965                                <fieldValue name='colorvalue='0 1 0'/>
966                           </ProtoInstance>
967                      </Transform>
968                 </ProtoBody>
969            </ProtoDeclare>
970            <ProtoDeclare name='GroundEquipmentHostileappinfo='NTDS Symbology for Ground Equipment, classification hostile'>
971                 <ProtoBody>
972                      <Transform>
973                           <ProtoInstance name='SurfaceHostile'>
974                                <fieldValue name='colorvalue='1 0 0'/>
975                           </ProtoInstance>
976                      </Transform>
977                 </ProtoBody>
978            </ProtoDeclare>
979            <ProtoDeclare name='GroundEquipmentAssumedFriendappinfo='NTDS Symbology for Ground Equipment, classification assumed friendly'>
980                 <ProtoBody>
981                      <Transform>
982                           <ProtoInstance name='SurfaceAssumedFriend'>
983                                <fieldValue name='colorvalue='0 0 1'/>
984                                <fieldValue name='labelColorvalue='0 0 1'/>
985                                <fieldValue name='symbolModifiervalue='"?"'/>
986                           </ProtoInstance>
987                      </Transform>
988                 </ProtoBody>
989            </ProtoDeclare>
990            <ProtoDeclare name='GroundEquipmentSuspectappinfo='NTDS Symbology for Ground Equipment, classification suspect'>
991                 <ProtoBody>
992                      <Transform>
993                           <ProtoInstance name='SurfaceSuspect'>
994                                <fieldValue name='colorvalue='1 0 0'/>
995                                <fieldValue name='labelColorvalue='1 0 0'/>
996                                <fieldValue name='symbolModifiervalue='"?"'/>
997                           </ProtoInstance>
998                      </Transform>
999                 </ProtoBody>
1000            </ProtoDeclare>
1001            <!-- Viewable geometry for this scene is anchored text that links to an example showing ExternProtoDeclare usage of BeamCylinder -->
1002            <Viewpoint description='NTDS Symbology Prototypesposition='0 0 12'/>
1003            <Anchor description='NTDS Symbology Examples'   url=' "NTDSExternProtoExamples.x3d" "../../CommunicationsAndSensors/Beam/NTDSExternProtoExamples.x3d" "https://www.web3d.org/x3d/content/examples/Savage/CommunicationsAndSensors/Beam/NTDSExternProtoExamples.x3d" "NTDSExternProtoExamples.wrl" "../../CommunicationsAndSensors/Beam/NTDSExternProtoExamples.wrl" "https://www.web3d.org/x3d/content/examples/Savage/CommunicationsAndSensors/Beam/NTDSExternProtoExamples.wrl" '>
1004                 <Shape>
1005                      <Appearance>
1006                           <Material diffuseColor='0 1 1emissiveColor='0 1 1'/>
1007                      </Appearance>
1008                      <Text string='"BeamHemispherePrototype" "is a Prototype definition file." "" "Select this text to view" "NTDSExternProtoExamples"'>
1009                           <FontStyle justify='"MIDDLE" "MIDDLE"'/>
1010                      </Text>
1011                 </Shape>
1012                 <!-- Transparent box to simplify user selection (i.e. "clickability") -->
1013                 <Shape>
1014                      <Box size='12 6 0.1'/>
1015                      <Appearance>
1016                           <Material transparency='0.8'/>
1017                      </Appearance>
1018                 </Shape>
1019            </Anchor>
1020            <!-- ***THE FOLLOWING NOT YET IMPLEMENTED*** -->
1021            <!-- Space Units -->
1022            <!-- Ground Installations -->
1023            <!-- Special Ops Units -->
1024       </Scene>
1025  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: SemiCircle, SemiCircle2, SemiCircle3, SemiCircle4, SemiCircle5, SemiCircle6

Index for Viewpoint node: Viewpoint_1

Index for ProtoDeclare definitions: AirAssumedFriend, AirFriend, AirHostile, AirNeutral, AirPending, AirSuspect, AirUnknown, GroundEquipmentAssumedFriend, GroundEquipmentFriend, GroundEquipmentHostile, GroundEquipmentNeutral, GroundEquipmentPending, GroundEquipmentSuspect, GroundEquipmentUnknown, SubSurfaceAssumedFriend, SubSurfaceFriend, SubSurfaceHostile, SubSurfaceNeutral, SubSurfacePending, SubSurfaceSuspect, SubSurfaceUnknown, SurfaceAssumedFriend, SurfaceFriend, SurfaceHostile, SurfaceNeutral, SurfacePending, SurfaceSuspect, SurfaceUnknown, SymbolLabel, SymbolVector
-->
X3D Tooltips element index: Anchor, Appearance, Arc2D, Billboard, Box, Color, component, connect, Coordinate, field, fieldValue, FontStyle, head, IndexedLineSet, IndexedTriangleSet, IS, Material, meta, ProtoBody, ProtoDeclare, ProtoInstance, ProtoInterface, Scene, Shape, Text, Transform, Viewpoint, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

Event Graph ROUTE Table with 0 ROUTE connections total, showing X3D event-model relationships for this scene.

Each row shows an event cascade that may occur during a single timestamp interval between frame renderings, as part of the X3D execution model.

line 87
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 149
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 193
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 221
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 249
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 279
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 329
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 380
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 438
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 478
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 506
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 534
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 564
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 612
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 660
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 718
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 758
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 786
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 814
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 844
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 892
ProtoInstance
SymbolVector
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 935
ProtoInstance
SurfacePending
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 946
ProtoInstance
SurfaceUnknown
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 955
ProtoInstance
SurfaceFriend
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 964
ProtoInstance
SurfaceNeutral
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 973
ProtoInstance
SurfaceHostile
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 982
ProtoInstance
SurfaceAssumedFriend
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 993
ProtoInstance
SurfaceSuspect
No direct ROUTE connection found for events to/from this node.
This ProtoInstance contains SFNode/MFNode fieldValue declarations with
direct access to other nodes, and thus has potential to produce run-time animation. 

line 1003
Anchor
description='NTDS Symbology Examples' 
User-interaction hint for this node. 

Additional guidance on X3D animation can be found in the 10-Step Animation Design Process and Event Tracing hint sheets. Have fun with X3D! 😀

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/Savage/Tools/Symbology/NTDSPrototypesIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/Tools/Symbology/NTDSPrototypes.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)
    <ProtoInstance name='ProtoName'> <field name='fieldName'/> </ProtoInstance> -->

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