<?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>
<meta name='titlecontent=' SoundVisualization.x3d '/>
<meta name='descriptioncontent='An example of the Sound node for testing X3D-Edit author-assist visualization'/>
<meta name='createdcontent='15 November 2009'/>
<meta name='modifiedcontent='27 October 2023'/>
<meta name='Imagecontent='SoundVisualization.png' />
<meta name='referencecontent=' https://X3dGraphics.com '/>
<meta name='referencecontent=' https://www.web3d.org/x3d/content/examples/X3dResources.html '/>
<meta name='creatorcontent='Don Brutzman'/>
<meta name='rightscontent='Copyright 2009, Daly Realism and Don Brutzman'/>
<meta name='subjectcontent=' X3D book, X3D graphics, X3D-Edit, http://www.x3dGraphics.com '/>
<meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter12EnvironmentSensorSound/SoundVisualization.x3d '/>
<meta name='generatorcontent='X3D-Edit 4.0, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../license.html'/>
</head>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: CoordinateAxes, GridXZ_20x20Fixed, NavInside, NavOutside, ViewAbove, ViewInside, ViewOutside, WaterSounds

Index for Viewpoint nodes: ViewAbove, ViewInside, ViewOutside
-->
<Scene>
<!-- Note that navigation mode shifts to WALK when ViewInside is bound, otherwise default is EXAMINE -->
<WorldInfo title='SoundVisualization.x3d'/>
<!-- ROUTE information for ViewOutside node:  [from isBound to NavOutside.set_bind ] -->
<Viewpoint DEF='ViewOutsidedescription='outsideposition='0 8 40'/>

<!-- ROUTE information for NavOutside node:  [from ViewOutside.isBound to set_bind ] [from ViewAbove.isBound to set_bind ] -->
<NavigationInfo DEF='NavOutside'/>

< ROUTE  fromNode=' ViewOutside' fromField='isBound' toNode=' NavOutside' toField='set_bind'/>
<!-- ROUTE information for ViewInside node:  [from isBound to NavInside.set_bind ] -->
<Viewpoint DEF='ViewInsidedescription='insideposition='0 1.6 6'/>

<!-- ROUTE information for NavInside node:  [from ViewInside.isBound to set_bind ] -->
<NavigationInfo DEF='NavInsidetype='"WALK" "ANY"'/>

< ROUTE  fromNode=' ViewInside' fromField='isBound' toNode=' NavInside' toField='set_bind'/>
<!-- ROUTE information for ViewAbove node:  [from isBound to NavOutside.set_bind ] -->
<Viewpoint DEF='ViewAbovedescription='aboveorientation='1 0 0 -1.57079position='0 40 0'/>

<Inline DEF='GridXZ_20x20Fixed'
  url=' "../../Savage/Tools/Authoring/GridXZ_20x20Fixed.x3d" "https://savage.nps.edu/Savage/Tools/Authoring/GridXZ_20x20Fixed.x3d" "../../Savage/Tools/Authoring/GridXZ_20x20Fixed.wrl" "https://savage.nps.edu/Savage/Tools/Authoring/GridXZ_20x20Fixed.wrl" ' />

< ROUTE  fromNode=' ViewAbove' fromField='isBound' toNode=' NavOutside' toField='set_bind'/>
<!-- Sound node example -->
<Sound direction='1 0 1location='-3 1.6 -3maxBack='6minBack='5'> </Sound>
<!-- ================== -->
<!-- Sound outlines, patterned after https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter12EnvironmentSensorSound/SoundAudioClip.x3d -->
<!-- Approximate ellipsoidal footprints and envelope using Cylinders and Spheres, respectively -->
<!-- Sound direction is x axis, so minimum-attenuation minLength = (minBack + minFront) and minRadius = minLength/2 along x axis -->
<!-- and so width, height dimensions ~= maximum-attenuation halfwidth = maxWidth ~= 45 along y, z axes -->
<!-- Ellipsoid focus is (0 0 0) but geometric center offset for spheroidal approximation is (-minBack + minRadius) -->
<Transform rotation='0 1 0 -2.356194490192345translation='-3 1.6 -3'>
<Transform rotation='1 0 0 0.0'>
<!-- here is local center of sound ellipse, with local X axis pointed along direction vector -->
<Inline DEF='CoordinateAxes'
  url=' "../Chapter03Grouping/CoordinateAxes.x3d" "../../Savage/Tools/Authoring/CoordinateAxes.x3d" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d" "https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.x3d" "../Chapter03Grouping/CoordinateAxes.wrl" "../../Savage/Tools/Authoring/CoordinateAxes.wrl" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.wrl" "https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.wrl" ' />

<Transform scale='6.0 2.23606797749979 2.23606797749979translation='-2 0 0'>
<Collision enabled='false'>
<Shape>
<Cylinder height='0.04radius='0.5side='false'/>
<Appearance>
<Material diffuseColor='0.8 0.6 0.4emissiveColor='0.8 0.6 0.4transparency='0.7'/>
</Appearance>
</Shape>
<Shape>
<Sphere radius='0.5'/>
<Appearance>
<Material diffuseColor='0.8 0.6 0.4emissiveColor='0.8 0.6 0.4transparency='0.7'/>
</Appearance>
</Shape>
</Collision>
</Transform>
<Transform scale='16.0 7.745966692414834 7.745966692414834translation='2 0 0'>
<Collision enabled='false'>
<Shape>
<Cylinder height='0.02radius='0.5side='false'/>
<Appearance>
<Material diffuseColor='0.4 0.3 0.2emissiveColor='0.4 0.3 0.2transparency='0.85'/>
</Appearance>
</Shape>
<Shape>
<Sphere radius='0.5'/>
<Appearance>
<Material diffuseColor='0.4 0.3 0.2emissiveColor='0.4 0.3 0.2transparency='0.85'/>
</Appearance>
</Shape>
</Collision>
</Transform>
</Transform>
</Transform>
<!-- ================== -->
</Scene>
</X3D>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: CoordinateAxes, GridXZ_20x20Fixed, NavInside, NavOutside, ViewAbove, ViewInside, ViewOutside, WaterSounds

Index for Viewpoint nodes: ViewAbove, ViewInside, ViewOutside
-->

Event Graph ROUTE Table with 3 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.


-->

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

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