X3D Model Documentation: CircleFishLodPrototype.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2  <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
  3  <X3D profile='Immersive' version='3.3 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.3.xsd'>
  4       <head>
  5            <meta name='titlecontent='CircleFishLodPrototype.x3d'/>
  6            <meta name='descriptioncontent='Modifies an externally defined CircleFish prototype by adding Level of Detail (LOD)'/>
  7            <meta name='creatorcontent='Ildeniz Duman'/>
  8            <meta name='translatorcontent='Scott Tufts'/>
  9            <meta name='createdcontent='1998'/>
 10            <meta name='translatedcontent='11 December 2001'/>
 11            <meta name='modifiedcontent='20 October 2019'/>
 12            <meta name='identifiercontent='https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishLodPrototype.x3d'/>
 13            <meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
 14            <meta name='licensecontent='../license.html'/>
 15       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top Index for DEF nodes: MidRangeInstance, NearInstance

Index for ExternProtoDeclare definition: CircleFish

Index for ProtoDeclare definition: CircleFishLod
-->
 16       <Scene>
 17            <ExternProtoDeclare name='CircleFishappinfo='Simple model of a fish swimming in a cirlce'   url=' "CircleFishPrototype.x3d#CircleFish" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishPrototype.x3d#CircleFish" "CircleFishPrototype.wrl#CircleFish" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishPrototype.wrl#CircleFish" '>
 18                 <field name='skinTextureUrltype='MFStringaccessType='inputOutput'/>
 19                 <field name='fishScaletype='SFVec3faccessType='inputOutput'/>
 20                 <field name='fishColortype='SFColoraccessType='inputOutput'/>
 21                 <field name='finColortype='SFColoraccessType='inputOutput'/>
 22                 <field name='positionKeytype='MFFloataccessType='inputOutput'/>
 23                 <field name='positionKeyValuetype='MFVec3faccessType='inputOutput'/>
 24                 <field name='orientationKeytype='MFFloataccessType='inputOutput'/>
 25                 <field name='orientationKeyValuetype='MFRotationaccessType='inputOutput'/>
 26                 <field name='orbitTimetype='SFTimeaccessType='inputOutput'/>
 27            </ExternProtoDeclare>
 28            <!-- new LOD prototype extends a previously defined prototype -->
 29            <ProtoDeclare name='CircleFishLodappinfo='CircleFish prototype with LOD added'>
 30                 <ProtoInterface>
 31                      <field name='skinTextureUrltype='MFStringaccessType='inputOutput'/>
 32                      <field name='fishScaletype='SFVec3fvalue='1 1 1accessType='inputOutput'/>
 33                      <field name='fishColortype='SFColorvalue='0.5 0.5 0.5accessType='inputOutput'/>
 34                      <field name='finColortype='SFColorvalue='0.5 0.5 0.5accessType='inputOutput'/>
 35                      <field name='positionKeytype='MFFloatvalue='0.0 0.125 0.25 0.375 0.5 0.625 0.750 0.875 1accessType='inputOutput'/>
 36                      <field name='positionKeyValuetype='MFVec3fvalue='1.5 0.5 0 1.3 0 -0.8 0 -0.5 -1.0 -1.3 0 -0.8 -1.5 0.5 0 -1.3 0 0.8 0 -0.5 1.0 1.3 0 0.8 1.5 0.5 0accessType='inputOutput'/>
 37                      <field name='orientationKeytype='MFFloatvalue='0.0 0.25 0.5 0.750 1accessType='inputOutput'/>
 38                      <field name='orientationKeyValuetype='MFRotationvalue='0 1 0 -3.14 0 1 0 -1.57 0 1 0 0 0 1 0 1.57 0 1 0 3.14accessType='inputOutput'/>
 39                      <field name='orbitTimetype='SFTimevalue='45accessType='inputOutput'/>
 40                 </ProtoInterface>
 41                 <ProtoBody>
 42                      <LOD forceTransitions='truerange='20 40'>
 43                           <ProtoInstance name='CircleFishDEF='NearInstance'>
 44                                <IS>
 45                                     <connect nodeField='skinTextureUrlprotoField='skinTextureUrl'/>
 46                                     <connect nodeField='fishScaleprotoField='fishScale'/>
 47                                     <connect nodeField='fishColorprotoField='fishColor'/>
 48                                     <connect nodeField='finColorprotoField='finColor'/>
 49                                     <connect nodeField='positionKeyprotoField='positionKey'/>
 50                                     <connect nodeField='positionKeyValueprotoField='positionKeyValue'/>
 51                                     <connect nodeField='orientationKeyprotoField='orientationKey'/>
 52                                     <connect nodeField='orientationKeyValueprotoField='orientationKeyValue'/>
 53                                     <connect nodeField='orbitTimeprotoField='orbitTime'/>
 54                                </IS>
 55                           </ProtoInstance>
 56                           <ProtoInstance name='CircleFishDEF='MidRangeInstance'>
 57                                <!-- no skinTexture at midRange for better performance -->
 58                                <IS>
 59                                     <connect nodeField='fishScaleprotoField='fishScale'/>
 60                                     <connect nodeField='fishColorprotoField='fishColor'/>
 61                                     <connect nodeField='finColorprotoField='finColor'/>
 62                                     <connect nodeField='positionKeyprotoField='positionKey'/>
 63                                     <connect nodeField='positionKeyValueprotoField='positionKeyValue'/>
 64                                     <connect nodeField='orientationKeyprotoField='orientationKey'/>
 65                                     <connect nodeField='orientationKeyValueprotoField='orientationKeyValue'/>
 66                                     <connect nodeField='orbitTimeprotoField='orbitTime'/>
 67                                </IS>
 68                           </ProtoInstance>
 69                           <!-- Disappear at far range -->
 70                           <WorldInfo info='"null node"'/>
 71                      </LOD>
 72                 </ProtoBody>
 73            </ProtoDeclare>
 74            <!-- ==================== -->
 75            <Anchor description='CircleFishLod Exampleparameter='"target=_blank"'   url=' "CircleFishLodExample.x3d" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishLodExample.x3d" "CircleFishLodExample.wrl" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishLodExample.wrl" '>
 76                 <Shape>
 77                      <Appearance>
 78                           <Material diffuseColor='0 1 1emissiveColor='0 1 1'/>
 79                      </Appearance>
 80                      <Text string='"CircleFishLodPrototype" "is a Prototype declaration file." "" "To see an example using this new node," "click this text and view" "CircleFishLodExample scene"'>
 81                           <FontStyle justify='"MIDDLE" "MIDDLE"size='0.7'/>
 82                      </Text>
 83                 </Shape>
 84                 <!-- Selectable Text design pattern has transparent Box and TouchSensor description as a tooltip -->
 85                 <Shape>
 86                      <Box size='12 5 .001'/>
 87                      <Appearance>
 88                           <Material transparency='1'/>
 89                      </Appearance>
 90                 </Shape>
 91            </Anchor>
 92       </Scene>
 93  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top Index for DEF nodes: MidRangeInstance, NearInstance

Index for ExternProtoDeclare definition: CircleFish

Index for ProtoDeclare definition: CircleFishLod
-->
X3D Tooltips element index: Anchor, Appearance, Box, connect, ExternProtoDeclare, field, FontStyle, head, IS, LOD, Material, meta, ProtoBody, ProtoDeclare, ProtoInstance, ProtoInterface, Scene, Shape, Text, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishLodPrototypeIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/CircleFishLodPrototype.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. -->