<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Immersive' version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation =' http://www.web3d.org/specifications/x3d-3.0.xsd '>
<head>
<meta name='titlecontent='PushButtonExample.x3d'/>
<meta name='descriptioncontent='PushButton widget example use, inner button and outer shape can be round or square'/>
<meta name='creatorcontent='Don Brutzman, Murat Onder and MV4205 class, Spring 2004 Quarter'/>
<meta name='createdcontent='12 May 2004'/>
<meta name='modifiedcontent='6 March 2010'/>
<meta name='referencecontent='PushButtonPrototype.x3d'/>
<meta name='identifiercontent=' https://savage.nps.edu/Savage/Tools/Animation/PushButtonExample.x3d '/>
<meta name='generatorcontent='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../../license.html'/>
</head>
<!--

Index for ExternProtoDeclare definition : PushButton

Index for DEF nodes : RoundRound, RoundSquare

Index for Viewpoint image : Viewpoint_1
-->
<Scene>
<Viewpoint description='Initial Viewpointorientation='0.123 -0.991 0.05 0.7741position='-2 -0.1 2'/>
<Background skyColor='0.8 0.6 0.1'/>
<ExternProtoDeclare name='PushButtonappinfo='PushButton widget, inner button and outer shape can be round or square'
  url=' "PushButtonPrototype.x3d#PushButton" "../../Tools/Animation/PushButtonPrototype.x3d#PushButton" "https://savage.nps.edu/Savage/Tools/Animation/PushButtonPrototype.x3d#PushButton" "../../Tools/Animation/PushButtonPrototype.wrl#PushButton" "PushButtonPrototype.wrl#PushButton" "https://savage.nps.edu/Savage/Tools/Animation/PushButtonPrototype.wrl#PushButton" '>
<field name='traceEnabledtype='SFBoolaccessType='initializeOnly'
 appinfo='enables the console print-out in case of assigning wrong values default is true'/>

<field name='outerShapeMaterialtype='SFNodeaccessType='initializeOnly'/>
<field name='defaultMaterialtype='SFNodeaccessType='initializeOnly'
 appinfo='defaultMaterial for inner pushbutton'/>

<field name='toggleMaterialtype='SFNodeaccessType='initializeOnly'
 appinfo='toggleMaterial for inner pushbutton'/>

<field name='value_changedtype='SFBoolaccessType='outputOnly'
 appinfo='boolean output of button selection'/>

<field name='outerSwitchStyletype='SFStringaccessType='initializeOnly'
 appinfo='allowed values: round or square default is round'/>

<field name='set_outerSwitchStyletype='SFStringaccessType='inputOnly'
 appinfo='allowed values: round or square default is round'/>

<field name='innerSwitchStyletype='SFStringaccessType='initializeOnly'
 appinfo='allowed values: round square. default is round'/>

<field name='set_innerSwitchStyletype='SFStringaccessType='inputOnly'
 appinfo='allowed values: round square. default is round'/>

<field name='delayIntervaltype='SFTimeaccessType='initializeOnly'
 appinfo='time delay for button movement so for color change default is 0.5 sec.'/>
</ExternProtoDeclare>
<Transform DEF='RoundRoundtranslation='-.7 0 0'>
<ProtoInstance name='PushButton'>
<fieldValue name='outerSwitchStylevalue='square'/>
<fieldValue name='innerSwitchStylevalue='round'/>
<fieldValue name='outerShapeMaterial'>
<Material ambientIntensity='0.25diffuseColor='0.029158 0.026292 0.026964shininess='0.06specularColor='0.641609 0.651044 0.979592'>
<!-- Universal Media Library: Metals 17 -->
</Material>
</fieldValue>
<fieldValue name='defaultMaterial'>
<Material diffuseColor='0 0.8 0shininess='0.35'/>
</fieldValue>
<fieldValue name='toggleMaterial'>
<Material diffuseColor='0.8 0 0shininess='0.35'/>
</fieldValue>
</ProtoInstance>
</Transform>
<Transform DEF='RoundSquaretranslation='.7 0 0'>
<ProtoInstance name='PushButton'>
<fieldValue name='traceEnabledvalue='true'/>
<fieldValue name='outerSwitchStylevalue='round'/>
<fieldValue name='innerSwitchStylevalue='square'/>
<fieldValue name='outerShapeMaterial'>
<Material ambientIntensity='0.25diffuseColor='0.029158 0.026292 0.026964shininess='0.06specularColor='0.641609 0.651044 0.979592'>
<!-- Universal Media Library: Metals 17 -->
</Material>
</fieldValue>
<fieldValue name='defaultMaterial'>
<Material ambientIntensity='0diffuseColor='0 0 0emissiveColor='0 1 0.168349shininess='0.05102specularColor='0.622449 0.622449 0.622449'>
<!-- Universal Media Library: Neon 5 -->
</Material>
</fieldValue>
<fieldValue name='toggleMaterial'>
<Material ambientIntensity='0diffuseColor='0 0 0emissiveColor='1 0 0.080733shininess='0.05102specularColor='0.622449 0.622449 0.622449'>
<!-- Universal Media Library: Neon 17 -->
</Material>
</fieldValue>
<fieldValue name='delayIntervalvalue='1'/>
</ProtoInstance>
</Transform>
</Scene>
</X3D>
<!--

Index for ExternProtoDeclare definition : PushButton

Index for DEF nodes : RoundRound, RoundSquare

Index for Viewpoint image : Viewpoint_1
-->

<!-- Color key: <X3dNode DEF='idName' field='value'/> matches <XmlElement DEF='idName' attribute='value'/>
(Light blue background: behavior node) (Grey background: inserted documentation) (Magenta background: X3D Extensibility)
    <Prototype name='ProtoName'> <field name='fieldName'/> </Prototype> -->

<!-- Additional help information about X3D scenes: X3D Resources, X3D Scene Authoring Hints and X3D Tooltips -->