<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
<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
'
>
<head>
</head>
<!--
<!--
Event Graph ROUTE Table
shows event connections
-->
<!--
Index for DEF nodes:
BLADE,
blade_X1,
blade_X2,
blade_X3,
blade_Y1,
blade_Y2,
blade_Y3,
blade_Y4,
bladeRotateZ,
bladeToTheSide,
Blade-Z,
bulb,
Clock,
horizontalStipe,
horizontalStipeMover,
kelpColor,
rotateBlade90,
stemShape,
stipe,
TouchTextForExample
Index for Viewpoint node:
Viewpoint_1
Index for ProtoDeclare definition:
Kelp
-->
<Scene>
<WorldInfo title='KelpPrototype.x3d'/>
<ProtoDeclare name='Kelp' appinfo='Kelp strands and bulbs with no base'
>
<ProtoInterface>
<field name='frontBladeSize' type='SFVec3f' value='0.7 0.7 0.7' accessType='inputOutput'/>
<field name='frontSideBladeHeight' type='SFVec3f' value='0 4 0' accessType='inputOutput'/>
<field name='rightBladeSize' type='SFVec3f' value='0.7 0.7 0.7' accessType='inputOutput'/>
<field name='rightSideBladeHeight' type='SFVec3f' value='0 12 0' accessType='inputOutput'/>
<field name='rearBladeSize' type='SFVec3f' value='0.4 0.4 0.4' accessType='inputOutput'/>
<field name='rearSideBladeHeight' type='SFVec3f' value='0 20 0' accessType='inputOutput'/>
<field name='leftBladeSize' type='SFVec3f' value='0.4 0.4 0.4' accessType='inputOutput'/>
<field name='leftSideBladeHeight' type='SFVec3f' value='0 24 0' accessType='inputOutput'/>
</ProtoInterface>
<ProtoBody>
<Group>
<Transform DEF='stipe' center='0 -16 0' translation='0 14 0'>
<Shape DEF='stemShape'>
<Appearance DEF='kelpColor'>
<Material diffuseColor='0.882 0.757 0.184'/>
</Appearance>
<Cylinder bottom='false' height='28.0' radius='0.2' top='false'/>
</Shape>
<Transform>
</Transform>
<Transform DEF='blade_X1' rotation='0 1 0 1.0' translation='0 12 0'>
<Transform DEF='bladeRotateZ' rotation='0 0 1 -1.2'>
<Transform DEF='BLADE' center='-0.5 0 0' translation='1 0 0'>
</Transform>
</Transform>
</Transform>
<Transform DEF='blade_X2' rotation='0 1 0 -1.0'>
</Transform>
<Transform DEF='blade_X3' rotation='0 1 0 4.342' translation='0 -12 0'>
</Transform>
</Transform>
<Transform translation='0 14 0'>
</Transform>
</Transform>
<Transform DEF='blade_Y1' rotation='0 0 1 1.2'>
<IS>
</IS>
<Transform USE='
BLADE'/>
</Transform>
<Transform DEF='blade_Y2' rotation='0 1 0 4.2'>
<IS>
</IS>
<Transform DEF='bladeToTheSide' rotation='1 0 0 3.142'>
<Transform rotation='0 0 1 -1.2'>
<Transform DEF='rotateBlade90' center='-0.5 0 0' rotation='1 0 0 1.5707' translation='1 0 0'>
</Transform>
</Transform>
</Transform>
</Transform>
<Transform DEF='blade_Y3' rotation='0 1 0 3.2'>
<IS>
</IS>
<Transform DEF='Blade-Z' rotation='1 0 0 3.142'>
<Transform rotation='0 0 1 -1.2'>
<Transform USE='
BLADE'/>
</Transform>
</Transform>
</Transform>
<Transform DEF='blade_Y4' rotation='0 1 0 1.2'>
</Transform>
</Group>
<
ROUTE
fromNode='
Clock' fromField='fraction_changed' toNode='
horizontalStipeMover' toField='set_fraction'/>
<
ROUTE
fromNode='
horizontalStipeMover' fromField='value_changed' toNode='
horizontalStipe' toField='set_rotation'/>
</ProtoBody>
</ProtoDeclare>
<!-- Example use of this prototype is in KelpNoBase.x3d, .wrl -->
<Viewpoint description='click message to view example' position='0 0 8'/>
<!-- Redirection text in case a user examines this PROTO file via a 3D browser: -->
<Anchor DEF='TouchTextForExample' description='KelpNoBase' parameter='"target=_blank"'
url='
KelpExamplesNoBase.x3d"https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/KelpExamplesNoBase.x3d" "KelpExamplesNoBase.wrl" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/KelpExamplesNoBase.wrl" '
>
<Shape>
<Appearance>
<Material diffuseColor='0 1 1' emissiveColor='0 1 1'/>
</Appearance>
<Text string='"KelpPrototype" "is a Prototype declaration file." "" "To see an example using 3 instances of" "this new node, click this text and view" "KelpNoBase scene"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' size='0.5'/>
</Text>
</Shape>
<!-- Selectable Text design pattern has transparent Box and TouchSensor description as a tooltip -->
<Shape>
<Box size='8 3 .001'/>
<Appearance>
<Material transparency='1'/>
</Appearance>
</Shape>
</Anchor>
</Scene>
</X3D>
<!--
<!--
Event Graph ROUTE Table
shows event connections
-->
<!--
Index for DEF nodes:
BLADE,
blade_X1,
blade_X2,
blade_X3,
blade_Y1,
blade_Y2,
blade_Y3,
blade_Y4,
bladeRotateZ,
bladeToTheSide,
Blade-Z,
bulb,
Clock,
horizontalStipe,
horizontalStipeMover,
kelpColor,
rotateBlade90,
stemShape,
stipe,
TouchTextForExample
Index for Viewpoint node:
Viewpoint_1
Index for ProtoDeclare definition:
Kelp
-->
-->
<!--
Online at
https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/KelpPrototypeIndex.html
-->
<!--
Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/X3dForWebAuthors/KelpForestExhibit/KelpPrototype.x3d
-->
<!--
Color legend: X3D terminology
<X3dNode
DEF='idName' field='value'/>
matches XML terminology
<XmlElement
DEF='idName' attribute='value'/>
(Light-blue background: event-based behavior node or statement)
(Grey background inside box: inserted documentation)
(Magenta background: X3D Extensibility)
<ProtoDeclare
name='ProtoName'>
<field
name='fieldName'/> </ProtoDeclare>
-->
<!--
For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints.
-->