<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://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 =' https://www.web3d.org/specifications/x3d-3.0.xsd ' >
<head>
<meta name='titlecontent=' ManualXYZBalanceBlockPrototype.x3d '/>
<meta name='descriptioncontent='Prototype for one of two types of balance blocks on the MSADS Assembly'/>
<meta name='creatorcontent='Ron Hatt'/>
<meta name='createdcontent='14 September 2006'/>
<meta name='modifiedcontent='28 November 2019'/>
<meta name='identifiercontent=' https://savage.nps.edu/Savage/Space/SatelliteLab/ManualXYZBalanceBlockPrototype.x3d '/>
<meta name='generatorcontent='Wings3D, VizX3D'/>
<meta name='generatorcontent='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../../license.html'/>
</head>
<!-- -->
<Scene>
<WorldInfo title='ManualXYZBalanceBlockPrototype.x3d'/>
<ProtoDeclare name='ManualXYZBalanceBlockappinfo='Manual Balance Block for XYZ stability' >
<ProtoBody>
<Group DEF='ManualXYZBalanceBlock'>
<Shape DEF='ControlBlock'>
<Appearance>
<Material ambientIntensity='0.4diffuseColor='1.0 0.77 0.31shininess='0.16specularColor='0.71 0.70 0.56'/>
</Appearance>
<IndexedFaceSet creaseAngle='0.000coordIndex='0 1 2 -1 0 3 1 -1 0 4 3 -1 0 5 6 -1 0 2 5 -1 0 6 4 -1 1 3 2 -1 3 4 6 -1 3 7 2 -1 3 6 7 -1 5 2 6 -1 2 7 6 -1'>
<Coordinate point='-.675 -.35 .35 -.675 .35 .35 -.675 .35 -.35 .675 .35 .35 .675 -.35 .35 -.675 -.35 -.35 .675 -.35 -.35 .675 .35 -.35'/>
</IndexedFaceSet>
</Shape>
<Shape DEF='LowerSpindle'>
<Appearance>
<Material DEF='SpindleColordiffuseColor='0.6 0.6 0.6'/>
</Appearance>
<IndexedFaceSet creaseAngle='0.524coordIndex='0 1 2 -1 0 3 1 -1 0 4 5 -1 0 2 4 -1 0 5 3 -1 1 6 2 -1 1 3 6 -1 6 7 8 -1 6 9 7 -1 6 3 9 -1 6 10 2 -1 6 8 10 -1 7 11 8 -1 7 12 11 -1 7 9 12 -1 11 13 14 -1 11 15 13 -1 11 12 15 -1 11 16 8 -1 11 14 16 -1 13 17 14 -1 13 18 17 -1 13 15 18 -1 17 19 20 -1 17 21 19 -1 17 18 21 -1 17 22 14 -1 17 20 22 -1 19 23 20 -1 19 24 23 -1 19 21 24 -1 23 25 26 -1 23 27 25 -1 23 24 27 -1 23 28 20 -1 23 26 28 -1 25 29 26 -1 25 30 29 -1 25 27 30 -1 29 31 32 -1 29 33 31 -1 29 30 33 -1 29 34 26 -1 29 32 34 -1 31 35 32 -1 31 36 35 -1 31 33 36 -1 35 37 38 -1 35 39 37 -1 35 36 39 -1 35 40 32 -1 35 38 40 -1 37 41 38 -1 37 42 41 -1 37 39 42 -1 41 43 44 -1 41 45 43 -1 41 42 45 -1 41 46 38 -1 41 44 46 -1 43 47 44 -1 43 48 47 -1 43 45 48 -1 47 48 49 -1 47 50 44 -1 47 49 50 -1 48 45 49 -1 45 42 51 -1 45 52 49 -1 45 51 52 -1 42 39 51 -1 39 36 53 -1 39 54 51 -1 39 53 54 -1 36 33 53 -1 33 30 55 -1 33 56 53 -1 33 55 56 -1 30 27 55 -1 27 24 57 -1 27 58 55 -1 27 57 58 -1 24 21 57 -1 21 18 59 -1 21 60 57 -1 21 59 60 -1 18 15 59 -1 15 12 61 -1 15 62 59 -1 15 61 62 -1 12 9 61 -1 9 3 5 -1 9 63 61 -1 9 5 63 -1 4 2 5 -1 2 10 63 -1 2 63 5 -1 10 8 61 -1 10 61 63 -1 8 16 62 -1 8 62 61 -1 16 14 59 -1 16 59 62 -1 14 22 60 -1 14 60 59 -1 22 20 57 -1 22 57 60 -1 20 28 58 -1 20 58 57 -1 28 26 55 -1 28 55 58 -1 26 34 56 -1 26 56 55 -1 34 32 53 -1 34 53 56 -1 32 40 54 -1 32 54 53 -1 40 38 51 -1 40 51 54 -1 38 46 52 -1 38 52 51 -1 46 44 49 -1 46 49 52 -1 44 50 49 -1'>
<Coordinate point='.1 -.35 0 .098 -.35 .02 .098 -1.65 .02 .098 -.35 -.02 .1 -1.65 0 .098 -1.65 -.02 .092 -.35 .038 .083 -.35 .056 .083 -1.65 .056 .092 -.35 -.038 .092 -1.65 .038 .071 -.35 .071 .083 -.35 -.056 .056 -.35 .083 .056 -1.65 .083 .071 -.35 -.071 .071 -1.65 .071 .038 -.35 .092 .056 -.35 -.083 .02 -.35 .098 .02 -1.65 .098 .038 -.35 -.092 .038 -1.65 .092 0 -.35 .1 .02 -.35 -.098 -.02 -.35 .098 -.02 -1.65 .098 0 -.35 -.1 0 -1.65 .1 -.038 -.35 .092 -.02 -.35 -.098 -.056 -.35 .083 -.056 -1.65 .083 -.038 -.35 -.092 -.038 -1.65 .092 -.071 -.35 .071 -.056 -.35 -.083 -.083 -.35 .056 -.083 -1.65 .056 -.071 -.35 -.071 -.071 -1.65 .071 -.092 -.35 .038 -.083 -.35 -.056 -.098 -.35 .02 -.098 -1.65 .02 -.092 -.35 -.038 -.092 -1.65 .038 -.1 -.35 0 -.098 -.35 -.02 -.098 -1.65 -.02 -.1 -1.65 0 -.083 -1.65 -.056 -.092 -1.65 -.038 -.056 -1.65 -.083 -.071 -1.65 -.071 -.02 -1.65 -.098 -.038 -1.65 -.092 .02 -1.65 -.098 0 -1.65 -.1 .056 -1.65 -.083 .038 -1.65 -.092 .083 -1.65 -.056 .071 -1.65 -.071 .092 -1.65 -.038'/>
</IndexedFaceSet>
</Shape>
<Shape DEF='UpperSpindle'>
<Appearance>
<Material USE=' SpindleColor'/>
</Appearance>
<IndexedFaceSet creaseAngle='0.524coordIndex='0 1 2 -1 0 3 1 -1 0 4 3 -1 0 5 4 -1 0 6 7 -1 0 2 6 -1 0 7 5 -1 1 8 2 -1 1 9 8 -1 1 3 9 -1 8 10 11 -1 8 12 10 -1 8 9 12 -1 8 13 2 -1 8 11 13 -1 10 14 11 -1 10 15 14 -1 10 12 15 -1 14 16 17 -1 14 18 16 -1 14 15 18 -1 14 19 11 -1 14 17 19 -1 16 20 17 -1 16 21 20 -1 16 18 21 -1 20 22 23 -1 20 24 22 -1 20 21 24 -1 20 25 17 -1 20 23 25 -1 22 26 23 -1 22 27 26 -1 22 24 27 -1 26 27 28 -1 26 29 23 -1 26 28 29 -1 27 24 28 -1 24 21 30 -1 24 31 28 -1 24 30 31 -1 21 18 30 -1 18 15 32 -1 18 33 30 -1 18 32 33 -1 15 12 32 -1 12 9 34 -1 12 35 32 -1 12 34 35 -1 9 3 34 -1 3 4 36 -1 3 37 34 -1 3 36 37 -1 4 38 36 -1 4 5 38 -1 38 39 40 -1 38 41 39 -1 38 5 41 -1 38 42 36 -1 38 40 42 -1 39 43 40 -1 39 44 43 -1 39 41 44 -1 43 45 46 -1 43 47 45 -1 43 44 47 -1 43 48 40 -1 43 46 48 -1 45 49 46 -1 45 50 49 -1 45 47 50 -1 49 51 52 -1 49 53 51 -1 49 50 53 -1 49 54 46 -1 49 52 54 -1 51 55 52 -1 51 56 55 -1 51 53 56 -1 55 56 57 -1 55 58 52 -1 55 57 58 -1 56 53 57 -1 53 50 59 -1 53 60 57 -1 53 59 60 -1 50 47 59 -1 47 44 61 -1 47 62 59 -1 47 61 62 -1 44 41 61 -1 41 5 7 -1 41 63 61 -1 41 7 63 -1 6 2 34 -1 6 34 37 -1 6 37 7 -1 2 13 35 -1 2 35 34 -1 13 11 32 -1 13 32 35 -1 11 19 33 -1 11 33 32 -1 19 17 30 -1 19 30 33 -1 17 25 31 -1 17 31 30 -1 25 23 28 -1 25 28 31 -1 23 29 28 -1 37 36 7 -1 36 42 63 -1 36 63 7 -1 42 40 61 -1 42 61 63 -1 40 48 62 -1 40 62 61 -1 48 46 59 -1 48 59 62 -1 46 54 60 -1 46 60 59 -1 54 52 57 -1 54 57 60 -1 52 58 57 -1'>
<Coordinate point='.1 0 2.001 .098 -.02 2.001 .098 -.02 .351 -.1 0 2.001 -.098 .02 2.001 .098 .02 2.001 .1 0 .351 .098 .02 .351 .092 -.038 2.001 -.098 -.02 2.001 .083 -.056 2.001 .083 -.056 .351 -.092 -.038 2.001 .092 -.038 .351 .071 -.071 2.001 -.083 -.056 2.001 .056 -.083 2.001 .056 -.083 .351 -.071 -.071 2.001 .071 -.071 .351 .038 -.092 2.001 -.056 -.083 2.001 .02 -.098 2.001 .02 -.098 .351 -.038 -.092 2.001 .038 -.092 .351 0 -.1 2.001 -.02 -.098 2.001 -.02 -.098 .351 0 -.1 .351 -.056 -.083 .351 -.038 -.092 .351 -.083 -.056 .351 -.071 -.071 .351 -.098 -.02 .351 -.092 -.038 .351 -.098 .02 .351 -.1 0 .351 -.092 .038 2.001 -.083 .056 2.001 -.083 .056 .351 .092 .038 2.001 -.092 .038 .351 -.071 .071 2.001 .083 .056 2.001 -.056 .083 2.001 -.056 .083 .351 .071 .071 2.001 -.071 .071 .351 -.038 .092 2.001 .056 .083 2.001 -.02 .098 2.001 -.02 .098 .351 .038 .092 2.001 -.038 .092 .351 0 .1 2.001 .02 .098 2.001 .02 .098 .351 0 .1 .351 .056 .083 .351 .038 .092 .351 .083 .056 .351 .071 .071 .351 .092 .038 .351'/>
</IndexedFaceSet>
</Shape>
<!-- ROUTE information for MovableTwoAxisBalanceWeight node:  [from XZDirector.value_changed to set_translation ] -->
<Transform DEF='MovableTwoAxisBalanceWeight'>
<Shape DEF='TwoAxisBalanceWeight'>
<Appearance>
<Material DEF='WeightColordiffuseColor='0.2 0.2 0.2'/>
</Appearance>
<IndexedFaceSet creaseAngle='0.524coordIndex='0 1 2 -1 0 3 1 -1 0 4 3 -1 0 5 4 -1 0 6 7 -1 0 2 6 -1 0 7 5 -1 1 8 2 -1 1 9 8 -1 1 3 9 -1 8 10 11 -1 8 12 10 -1 8 9 12 -1 8 13 2 -1 8 11 13 -1 10 14 11 -1 10 15 14 -1 10 12 15 -1 14 16 17 -1 14 18 16 -1 14 15 18 -1 14 19 11 -1 14 17 19 -1 16 20 17 -1 16 21 20 -1 16 18 21 -1 20 22 23 -1 20 24 22 -1 20 21 24 -1 20 25 17 -1 20 23 25 -1 22 26 23 -1 22 27 26 -1 22 24 27 -1 26 27 28 -1 26 29 23 -1 26 28 29 -1 27 24 28 -1 24 21 30 -1 24 31 28 -1 24 30 31 -1 21 18 30 -1 18 15 32 -1 18 33 30 -1 18 32 33 -1 15 12 32 -1 12 9 34 -1 12 35 32 -1 12 34 35 -1 9 3 34 -1 3 4 36 -1 3 37 34 -1 3 36 37 -1 4 38 36 -1 4 5 38 -1 38 39 40 -1 38 41 39 -1 38 5 41 -1 38 42 36 -1 38 40 42 -1 39 43 40 -1 39 44 43 -1 39 41 44 -1 43 45 46 -1 43 47 45 -1 43 44 47 -1 43 48 40 -1 43 46 48 -1 45 49 46 -1 45 50 49 -1 45 47 50 -1 49 51 52 -1 49 53 51 -1 49 50 53 -1 49 54 46 -1 49 52 54 -1 51 55 52 -1 51 56 55 -1 51 53 56 -1 55 56 57 -1 55 58 52 -1 55 57 58 -1 56 53 57 -1 53 50 59 -1 53 60 57 -1 53 59 60 -1 50 47 59 -1 47 44 61 -1 47 62 59 -1 47 61 62 -1 44 41 61 -1 41 5 7 -1 41 63 61 -1 41 7 63 -1 6 2 34 -1 6 34 37 -1 6 37 7 -1 2 13 35 -1 2 35 34 -1 13 11 32 -1 13 32 35 -1 11 19 33 -1 11 33 32 -1 19 17 30 -1 19 30 33 -1 17 25 31 -1 17 31 30 -1 25 23 28 -1 25 28 31 -1 23 29 28 -1 37 36 7 -1 36 42 63 -1 36 63 7 -1 42 40 61 -1 42 61 63 -1 40 48 62 -1 40 62 61 -1 48 46 59 -1 48 59 62 -1 46 54 60 -1 46 60 59 -1 54 52 57 -1 54 57 60 -1 52 58 57 -1'>
<Coordinate point='.3 0 1.7 .294 -.059 1.7 .294 -.059 .85 -.3 0 1.7 -.294 .059 1.7 .294 .059 1.7 .3 0 .85 .294 .059 .85 .277 -.115 1.7 -.294 -.059 1.7 .249 -.167 1.7 .249 -.167 .85 -.277 -.115 1.7 .277 -.115 .85 .212 -.212 1.7 -.249 -.167 1.7 .167 -.249 1.7 .167 -.249 .85 -.212 -.212 1.7 .212 -.212 .85 .115 -.277 1.7 -.167 -.249 1.7 .059 -.294 1.7 .059 -.294 .85 -.115 -.277 1.7 .115 -.277 .85 0 -.3 1.7 -.059 -.294 1.7 -.059 -.294 .85 0 -.3 .85 -.167 -.249 .85 -.115 -.277 .85 -.249 -.167 .85 -.212 -.212 .85 -.294 -.059 .85 -.277 -.115 .85 -.294 .059 .85 -.3 0 .85 -.277 .115 1.7 -.249 .167 1.7 -.249 .167 .85 .277 .115 1.7 -.277 .115 .85 -.212 .212 1.7 .249 .167 1.7 -.167 .249 1.7 -.167 .249 .85 .212 .212 1.7 -.212 .212 .85 -.115 .277 1.7 .167 .249 1.7 -.059 .294 1.7 -.059 .294 .85 .115 .277 1.7 -.115 .277 .85 0 .3 1.7 .059 .294 1.7 .059 .294 .85 0 .3 .85 .167 .249 .85 .115 .277 .85 .249 .167 .85 .212 .212 .85 .277 .115 .85'/>
</IndexedFaceSet>
</Shape>
<!-- ROUTE information for MoveXZWeightBack node:  [from touchTime to XZWeightMotionClock.set_startTime ] -->
<TouchSensor DEF='MoveXZWeightBackdescription='Click to move XZ weight'/>
</Transform>
<!-- ROUTE information for MovableYAxisBalanceWeight node:  [from YDirector.value_changed to set_translation ] -->
<Transform DEF='MovableYAxisBalanceWeight'>
<Shape DEF='YAxisBalanceWeight'>
<Appearance>
<Material USE=' WeightColor'/>
</Appearance>
<IndexedFaceSet creaseAngle='0.524coordIndex='0 1 2 -1 0 3 1 -1 0 4 5 -1 0 2 4 -1 0 5 3 -1 1 6 2 -1 1 3 6 -1 6 7 8 -1 6 9 7 -1 6 3 9 -1 6 10 2 -1 6 8 10 -1 7 11 8 -1 7 12 11 -1 7 9 12 -1 11 13 14 -1 11 15 13 -1 11 12 15 -1 11 16 8 -1 11 14 16 -1 13 17 14 -1 13 18 17 -1 13 15 18 -1 17 19 20 -1 17 21 19 -1 17 18 21 -1 17 22 14 -1 17 20 22 -1 19 23 20 -1 19 24 23 -1 19 21 24 -1 23 25 26 -1 23 27 25 -1 23 24 27 -1 23 28 20 -1 23 26 28 -1 25 29 26 -1 25 30 29 -1 25 27 30 -1 29 31 32 -1 29 33 31 -1 29 30 33 -1 29 34 26 -1 29 32 34 -1 31 35 32 -1 31 36 35 -1 31 33 36 -1 35 37 38 -1 35 39 37 -1 35 36 39 -1 35 40 32 -1 35 38 40 -1 37 41 38 -1 37 42 41 -1 37 39 42 -1 41 43 44 -1 41 45 43 -1 41 42 45 -1 41 46 38 -1 41 44 46 -1 43 47 44 -1 43 48 47 -1 43 45 48 -1 47 48 49 -1 47 50 44 -1 47 49 50 -1 48 45 49 -1 45 42 51 -1 45 52 49 -1 45 51 52 -1 42 39 51 -1 39 36 53 -1 39 54 51 -1 39 53 54 -1 36 33 53 -1 33 30 55 -1 33 56 53 -1 33 55 56 -1 30 27 55 -1 27 24 57 -1 27 58 55 -1 27 57 58 -1 24 21 57 -1 21 18 59 -1 21 60 57 -1 21 59 60 -1 18 15 59 -1 15 12 61 -1 15 62 59 -1 15 61 62 -1 12 9 61 -1 9 3 5 -1 9 63 61 -1 9 5 63 -1 4 2 5 -1 2 10 63 -1 2 63 5 -1 10 8 61 -1 10 61 63 -1 8 16 62 -1 8 62 61 -1 16 14 59 -1 16 59 62 -1 14 22 60 -1 14 60 59 -1 22 20 57 -1 22 57 60 -1 20 28 58 -1 20 58 57 -1 28 26 55 -1 28 55 58 -1 26 34 56 -1 26 56 55 -1 34 32 53 -1 34 53 56 -1 32 40 54 -1 32 54 53 -1 40 38 51 -1 40 51 54 -1 38 46 52 -1 38 52 51 -1 46 44 49 -1 46 49 52 -1 44 50 49 -1'>
<Coordinate point='.3 -.7 0 .294 -.7 .059 .294 -1.1 .059 .294 -.7 -.059 .3 -1.1 0 .294 -1.1 -.059 .277 -.7 .115 .249 -.7 .167 .249 -1.1 .167 .277 -.7 -.115 .277 -1.1 .115 .212 -.7 .212 .249 -.7 -.167 .167 -.7 .249 .167 -1.1 .249 .212 -.7 -.212 .212 -1.1 .212 .115 -.7 .277 .167 -.7 -.249 .059 -.7 .294 .059 -1.1 .294 .115 -.7 -.277 .115 -1.1 .277 0 -.7 .3 .059 -.7 -.294 -.059 -.7 .294 -.059 -1.1 .294 0 -.7 -.3 0 -1.1 .3 -.115 -.7 .277 -.059 -.7 -.294 -.167 -.7 .249 -.167 -1.1 .249 -.115 -.7 -.277 -.115 -1.1 .277 -.212 -.7 .212 -.167 -.7 -.249 -.249 -.7 .167 -.249 -1.1 .167 -.212 -.7 -.212 -.212 -1.1 .212 -.277 -.7 .115 -.249 -.7 -.167 -.294 -.7 .059 -.294 -1.1 .059 -.277 -.7 -.115 -.277 -1.1 .115 -.3 -.7 0 -.294 -.7 -.059 -.294 -1.1 -.059 -.3 -1.1 0 -.249 -1.1 -.167 -.277 -1.1 -.115 -.167 -1.1 -.249 -.212 -1.1 -.212 -.059 -1.1 -.294 -.115 -1.1 -.277 .059 -1.1 -.294 0 -1.1 -.3 .167 -1.1 -.249 .115 -1.1 -.277 .249 -1.1 -.167 .212 -1.1 -.212 .277 -1.1 -.115'/>
</IndexedFaceSet>
</Shape>
<!-- ROUTE information for MoveYWeightBack node:  [from touchTime to YWeightMotionClock.set_startTime ] -->
<TouchSensor DEF='MoveYWeightBackdescription='Click to move Y weight'/>
</Transform>
<Group DEF='TouchableHandle'>
<Shape DEF='Handle'>
<Appearance>
<Material diffuseColor='1.0 1.0 0.0'/>
</Appearance>
<IndexedFaceSet creaseAngle='0.524coordIndex='0 1 2 -1 0 2 3 -1 0 4 1 -1 0 3 4 -1 1 5 6 -1 1 7 2 -1 1 6 7 -1 1 4 5 -1 5 8 6 -1 5 4 8 -1 8 9 10 -1 8 11 6 -1 8 10 11 -1 8 4 9 -1 9 12 10 -1 9 4 12 -1 12 13 14 -1 12 15 10 -1 12 14 15 -1 12 4 13 -1 13 16 14 -1 13 4 16 -1 16 17 18 -1 16 19 14 -1 16 18 19 -1 16 4 17 -1 17 20 18 -1 17 4 20 -1 20 21 22 -1 20 23 18 -1 20 22 23 -1 20 4 21 -1 21 24 22 -1 21 4 24 -1 24 25 26 -1 24 27 22 -1 24 26 27 -1 24 4 25 -1 25 28 26 -1 25 4 28 -1 28 29 30 -1 28 31 26 -1 28 30 31 -1 28 4 29 -1 29 32 30 -1 29 4 32 -1 32 33 34 -1 32 35 30 -1 32 34 35 -1 32 4 33 -1 33 4 36 -1 33 36 34 -1 2 7 37 -1 2 38 39 -1 2 37 38 -1 2 40 3 -1 2 39 40 -1 7 6 37 -1 6 11 41 -1 6 42 37 -1 6 41 42 -1 11 10 41 -1 10 15 43 -1 10 44 41 -1 10 43 44 -1 15 14 43 -1 14 19 45 -1 14 46 43 -1 14 45 46 -1 19 18 45 -1 18 23 47 -1 18 48 45 -1 18 47 48 -1 23 22 47 -1 22 27 49 -1 22 50 47 -1 22 49 50 -1 27 26 49 -1 26 31 51 -1 26 52 49 -1 26 51 52 -1 31 30 51 -1 30 35 53 -1 30 54 51 -1 30 53 54 -1 35 34 53 -1 34 55 53 -1 34 56 55 -1 34 57 56 -1 34 36 57 -1 38 37 58 -1 38 58 39 -1 37 42 59 -1 37 60 58 -1 37 59 60 -1 42 41 59 -1 41 44 61 -1 41 62 59 -1 41 61 62 -1 44 43 61 -1 43 46 63 -1 43 64 61 -1 43 63 64 -1 46 45 63 -1 45 48 65 -1 45 66 63 -1 45 65 66 -1 48 47 65 -1 47 50 67 -1 47 68 65 -1 47 67 68 -1 50 49 67 -1 49 52 69 -1 49 70 67 -1 49 69 70 -1 52 51 69 -1 51 54 71 -1 51 72 69 -1 51 71 72 -1 54 53 71 -1 53 55 73 -1 53 74 71 -1 53 73 74 -1 55 56 73 -1 58 60 75 -1 58 76 77 -1 58 75 76 -1 58 78 39 -1 58 77 78 -1 60 59 75 -1 59 62 79 -1 59 80 75 -1 59 79 80 -1 62 61 79 -1 61 64 81 -1 61 82 79 -1 61 81 82 -1 64 63 81 -1 63 66 83 -1 63 84 81 -1 63 83 84 -1 66 65 83 -1 65 68 85 -1 65 86 83 -1 65 85 86 -1 68 67 85 -1 67 70 87 -1 67 88 85 -1 67 87 88 -1 70 69 87 -1 69 72 89 -1 69 90 87 -1 69 89 90 -1 72 71 89 -1 71 74 91 -1 71 92 89 -1 71 91 92 -1 74 73 91 -1 73 93 91 -1 73 94 93 -1 73 95 94 -1 73 56 95 -1 76 75 96 -1 76 96 77 -1 75 80 97 -1 75 98 96 -1 75 97 98 -1 80 79 97 -1 79 82 99 -1 79 100 97 -1 79 99 100 -1 82 81 99 -1 81 84 101 -1 81 102 99 -1 81 101 102 -1 84 83 101 -1 83 86 103 -1 83 104 101 -1 83 103 104 -1 86 85 103 -1 85 88 105 -1 85 106 103 -1 85 105 106 -1 88 87 105 -1 87 90 107 -1 87 108 105 -1 87 107 108 -1 90 89 107 -1 89 92 109 -1 89 110 107 -1 89 109 110 -1 92 91 109 -1 91 93 111 -1 91 112 109 -1 91 111 112 -1 93 94 111 -1 96 98 113 -1 96 114 115 -1 96 113 114 -1 96 116 77 -1 96 115 116 -1 98 97 113 -1 97 100 117 -1 97 118 113 -1 97 117 118 -1 100 99 117 -1 99 102 119 -1 99 120 117 -1 99 119 120 -1 102 101 119 -1 101 104 121 -1 101 122 119 -1 101 121 122 -1 104 103 121 -1 103 106 123 -1 103 124 121 -1 103 123 124 -1 106 105 123 -1 105 108 125 -1 105 126 123 -1 105 125 126 -1 108 107 125 -1 107 110 127 -1 107 128 125 -1 107 127 128 -1 110 109 127 -1 109 112 129 -1 109 130 127 -1 109 129 130 -1 112 111 129 -1 111 131 129 -1 111 132 131 -1 111 133 132 -1 111 94 133 -1 114 113 134 -1 114 134 115 -1 113 118 135 -1 113 136 134 -1 113 135 136 -1 118 117 135 -1 117 120 137 -1 117 138 135 -1 117 137 138 -1 120 119 137 -1 119 122 139 -1 119 140 137 -1 119 139 140 -1 122 121 139 -1 121 124 141 -1 121 142 139 -1 121 141 142 -1 124 123 141 -1 123 126 143 -1 123 144 141 -1 123 143 144 -1 126 125 143 -1 125 128 145 -1 125 146 143 -1 125 145 146 -1 128 127 145 -1 127 130 147 -1 127 148 145 -1 127 147 148 -1 130 129 147 -1 129 131 149 -1 129 150 147 -1 129 149 150 -1 131 132 149 -1 134 136 151 -1 134 152 153 -1 134 151 152 -1 134 154 115 -1 134 153 154 -1 136 135 151 -1 135 138 155 -1 135 156 151 -1 135 155 156 -1 138 137 155 -1 137 140 157 -1 137 158 155 -1 137 157 158 -1 140 139 157 -1 139 142 159 -1 139 160 157 -1 139 159 160 -1 142 141 159 -1 141 144 161 -1 141 162 159 -1 141 161 162 -1 144 143 161 -1 143 146 163 -1 143 164 161 -1 143 163 164 -1 146 145 163 -1 145 148 165 -1 145 166 163 -1 145 165 166 -1 148 147 165 -1 147 150 167 -1 147 168 165 -1 147 167 168 -1 150 149 167 -1 149 169 167 -1 149 170 169 -1 149 171 170 -1 149 132 171 -1 152 151 172 -1 152 172 153 -1 151 156 173 -1 151 174 172 -1 151 173 174 -1 156 155 173 -1 155 158 175 -1 155 176 173 -1 155 175 176 -1 158 157 175 -1 157 160 177 -1 157 178 175 -1 157 177 178 -1 160 159 177 -1 159 162 179 -1 159 180 177 -1 159 179 180 -1 162 161 179 -1 161 164 181 -1 161 182 179 -1 161 181 182 -1 164 163 181 -1 163 166 183 -1 163 184 181 -1 163 183 184 -1 166 165 183 -1 165 168 185 -1 165 186 183 -1 165 185 186 -1 168 167 185 -1 167 169 187 -1 167 188 185 -1 167 187 188 -1 169 170 187 -1 172 174 189 -1 172 190 191 -1 172 189 190 -1 172 192 153 -1 172 191 192 -1 174 173 189 -1 173 176 193 -1 173 194 189 -1 173 193 194 -1 176 175 193 -1 175 178 195 -1 175 196 193 -1 175 195 196 -1 178 177 195 -1 177 180 197 -1 177 198 195 -1 177 197 198 -1 180 179 197 -1 179 182 199 -1 179 200 197 -1 179 199 200 -1 182 181 199 -1 181 184 201 -1 181 202 199 -1 181 201 202 -1 184 183 201 -1 183 186 203 -1 183 204 201 -1 183 203 204 -1 186 185 203 -1 185 188 205 -1 185 206 203 -1 185 205 206 -1 188 187 205 -1 187 207 205 -1 187 208 207 -1 187 209 208 -1 187 170 209 -1 190 189 210 -1 190 210 191 -1 189 194 211 -1 189 212 210 -1 189 211 212 -1 194 193 211 -1 193 196 213 -1 193 214 211 -1 193 213 214 -1 196 195 213 -1 195 198 215 -1 195 216 213 -1 195 215 216 -1 198 197 215 -1 197 200 217 -1 197 218 215 -1 197 217 218 -1 200 199 217 -1 199 202 219 -1 199 220 217 -1 199 219 220 -1 202 201 219 -1 201 204 221 -1 201 222 219 -1 201 221 222 -1 204 203 221 -1 203 206 223 -1 203 224 221 -1 203 223 224 -1 206 205 223 -1 205 207 225 -1 205 226 223 -1 205 225 226 -1 207 208 225 -1 210 212 227 -1 210 228 229 -1 210 227 228 -1 210 230 191 -1 210 229 230 -1 212 211 227 -1 211 214 231 -1 211 232 227 -1 211 231 232 -1 214 213 231 -1 213 216 233 -1 213 234 231 -1 213 233 234 -1 216 215 233 -1 215 218 235 -1 215 236 233 -1 215 235 236 -1 218 217 235 -1 217 220 237 -1 217 238 235 -1 217 237 238 -1 220 219 237 -1 219 222 239 -1 219 240 237 -1 219 239 240 -1 222 221 239 -1 221 224 241 -1 221 242 239 -1 221 241 242 -1 224 223 241 -1 223 226 243 -1 223 244 241 -1 223 243 244 -1 226 225 243 -1 225 245 243 -1 225 246 245 -1 225 247 246 -1 225 208 247 -1 228 227 248 -1 228 248 229 -1 227 232 249 -1 227 250 248 -1 227 249 250 -1 232 231 249 -1 231 234 251 -1 231 252 249 -1 231 251 252 -1 234 233 251 -1 233 236 253 -1 233 254 251 -1 233 253 254 -1 236 235 253 -1 235 238 255 -1 235 256 253 -1 235 255 256 -1 238 237 255 -1 237 240 257 -1 237 258 255 -1 237 257 258 -1 240 239 257 -1 239 242 259 -1 239 260 257 -1 239 259 260 -1 242 241 259 -1 241 244 261 -1 241 262 259 -1 241 261 262 -1 244 243 261 -1 243 245 263 -1 243 264 261 -1 243 263 264 -1 245 246 263 -1 248 250 265 -1 248 266 267 -1 248 265 266 -1 248 268 229 -1 248 267 268 -1 250 249 265 -1 249 252 269 -1 249 270 265 -1 249 269 270 -1 252 251 269 -1 251 254 271 -1 251 272 269 -1 251 271 272 -1 254 253 271 -1 253 256 273 -1 253 274 271 -1 253 273 274 -1 256 255 273 -1 255 258 275 -1 255 276 273 -1 255 275 276 -1 258 257 275 -1 257 260 277 -1 257 278 275 -1 257 277 278 -1 260 259 277 -1 259 262 279 -1 259 280 277 -1 259 279 280 -1 262 261 279 -1 261 264 281 -1 261 282 279 -1 261 281 282 -1 264 263 281 -1 263 283 281 -1 263 284 283 -1 263 285 284 -1 263 246 285 -1 266 265 286 -1 266 286 267 -1 265 270 286 -1 270 269 286 -1 269 272 286 -1 272 271 286 -1 271 274 286 -1 274 273 286 -1 273 276 286 -1 276 275 286 -1 275 278 286 -1 278 277 286 -1 277 280 286 -1 280 279 286 -1 279 282 286 -1 282 281 286 -1 281 283 286 -1 283 284 286 -1 4 287 36 -1 4 3 287 -1 286 288 267 -1 286 284 288 -1 287 3 36 -1 3 40 57 -1 3 57 36 -1 40 39 56 -1 40 56 57 -1 39 78 95 -1 39 95 56 -1 78 77 94 -1 78 94 95 -1 77 116 133 -1 77 133 94 -1 116 115 132 -1 116 132 133 -1 115 154 171 -1 115 171 132 -1 154 153 170 -1 154 170 171 -1 153 192 209 -1 153 209 170 -1 192 191 208 -1 192 208 209 -1 191 230 247 -1 191 247 208 -1 230 229 246 -1 230 246 247 -1 229 268 285 -1 229 285 246 -1 268 267 284 -1 268 284 285 -1 267 288 284 -1'>
<Coordinate point='.068 .343 2.2 .067 .343 2.213 .134 .323 2.2 .068 .343 2 0 .35 2.2 .063 .343 2.226 .124 .323 2.251 .131 .323 2.226 .057 .343 2.238 .048 .343 2.248 .095 .323 2.295 .111 .323 2.274 .038 .343 2.257 .026 .343 2.263 .051 .323 2.324 .074 .323 2.311 .013 .343 2.267 0 .343 2.268 0 .323 2.334 .026 .323 2.331 -.013 .343 2.267 -.026 .343 2.263 -.051 .323 2.324 -.026 .323 2.331 -.038 .343 2.257 -.048 .343 2.248 -.095 .323 2.295 -.074 .323 2.311 -.057 .343 2.238 -.063 .343 2.226 -.124 .323 2.251 -.111 .323 2.274 -.067 .343 2.213 -.068 .343 2.2 -.134 .323 2.2 -.131 .323 2.226 -.068 .343 2 .191 .291 2.238 .194 .291 2.2 .194 .291 2 .134 .323 2 .162 .291 2.308 .18 .291 2.274 .108 .291 2.362 .137 .291 2.338 .038 .291 2.391 .074 .291 2.38 -.038 .291 2.391 0 .291 2.394 -.108 .291 2.362 -.074 .291 2.38 -.162 .291 2.308 -.137 .291 2.338 -.191 .291 2.238 -.18 .291 2.274 -.194 .291 2.2 -.194 .291 2 -.134 .323 2 .247 .247 2.2 .229 .247 2.295 .243 .247 2.248 .175 .247 2.375 .206 .247 2.338 .095 .247 2.429 .137 .247 2.406 0 .247 2.447 .048 .247 2.443 -.095 .247 2.429 -.048 .247 2.443 -.175 .247 2.375 -.137 .247 2.406 -.229 .247 2.295 -.206 .247 2.338 -.247 .247 2.2 -.243 .247 2.248 .285 .194 2.257 .291 .194 2.2 .291 .194 2 .247 .247 2 .242 .194 2.362 .269 .194 2.311 .162 .194 2.442 .206 .194 2.406 .057 .194 2.485 .111 .194 2.469 -.057 .194 2.485 0 .194 2.491 -.162 .194 2.442 -.111 .194 2.469 -.242 .194 2.362 -.206 .194 2.406 -.285 .194 2.257 -.269 .194 2.311 -.291 .194 2.2 -.291 .194 2 -.247 .247 2 .323 .134 2.2 .299 .134 2.324 .317 .134 2.263 .229 .134 2.429 .269 .134 2.38 .124 .134 2.499 .18 .134 2.469 0 .134 2.523 .063 .134 2.517 -.124 .134 2.499 -.063 .134 2.517 -.229 .134 2.429 -.18 .134 2.469 -.299 .134 2.324 -.269 .134 2.38 -.323 .134 2.2 -.317 .134 2.263 .337 .068 2.267 .343 .068 2.2 .343 .068 2 .323 .134 2 .285 .068 2.391 .317 .068 2.331 .191 .068 2.485 .243 .068 2.443 .067 .068 2.537 .131 .068 2.517 -.067 .068 2.537 0 .068 2.543 -.191 .068 2.485 -.131 .068 2.517 -.285 .068 2.391 -.243 .068 2.443 -.337 .068 2.267 -.317 .068 2.331 -.343 .068 2.2 -.343 .068 2 -.323 .134 2 .35 0 2.2 .323 0 2.334 .343 0 2.268 .247 0 2.447 .291 0 2.394 .134 0 2.523 .194 0 2.491 0 0 2.55 .068 0 2.543 -.134 0 2.523 -.068 0 2.543 -.247 0 2.447 -.194 0 2.491 -.323 0 2.334 -.291 0 2.394 -.35 0 2.2 -.343 0 2.268 .337 -.068 2.267 .343 -.068 2.2 .343 -.068 2 .35 0 2 .285 -.068 2.391 .317 -.068 2.331 .191 -.068 2.485 .243 -.068 2.443 .067 -.068 2.537 .131 -.068 2.517 -.067 -.068 2.537 0 -.068 2.543 -.191 -.068 2.485 -.131 -.068 2.517 -.285 -.068 2.391 -.243 -.068 2.443 -.337 -.068 2.267 -.317 -.068 2.331 -.343 -.068 2.2 -.343 -.068 2 -.35 0 2 .323 -.134 2.2 .299 -.134 2.324 .317 -.134 2.263 .229 -.134 2.429 .269 -.134 2.38 .124 -.134 2.499 .18 -.134 2.469 0 -.134 2.523 .063 -.134 2.517 -.124 -.134 2.499 -.063 -.134 2.517 -.229 -.134 2.429 -.18 -.134 2.469 -.299 -.134 2.324 -.269 -.134 2.38 -.323 -.134 2.2 -.317 -.134 2.263 .285 -.194 2.257 .291 -.194 2.2 .291 -.194 2 .323 -.134 2 .242 -.194 2.362 .269 -.194 2.311 .162 -.194 2.442 .206 -.194 2.406 .057 -.194 2.485 .111 -.194 2.469 -.057 -.194 2.485 0 -.194 2.491 -.162 -.194 2.442 -.111 -.194 2.469 -.242 -.194 2.362 -.206 -.194 2.406 -.285 -.194 2.257 -.269 -.194 2.311 -.291 -.194 2.2 -.291 -.194 2 -.323 -.134 2 .247 -.247 2.2 .229 -.247 2.295 .243 -.247 2.248 .175 -.247 2.375 .206 -.247 2.338 .095 -.247 2.429 .137 -.247 2.406 0 -.247 2.447 .048 -.247 2.443 -.095 -.247 2.429 -.048 -.247 2.443 -.175 -.247 2.375 -.137 -.247 2.406 -.229 -.247 2.295 -.206 -.247 2.338 -.247 -.247 2.2 -.243 -.247 2.248 .191 -.291 2.238 .194 -.291 2.2 .194 -.291 2 .247 -.247 2 .162 -.291 2.308 .18 -.291 2.274 .108 -.291 2.362 .137 -.291 2.338 .038 -.291 2.391 .074 -.291 2.38 -.038 -.291 2.391 0 -.291 2.394 -.108 -.291 2.362 -.074 -.291 2.38 -.162 -.291 2.308 -.137 -.291 2.338 -.191 -.291 2.238 -.18 -.291 2.274 -.194 -.291 2.2 -.194 -.291 2 -.247 -.247 2 .134 -.323 2.2 .124 -.323 2.251 .131 -.323 2.226 .095 -.323 2.295 .111 -.323 2.274 .051 -.323 2.324 .074 -.323 2.311 0 -.323 2.334 .026 -.323 2.331 -.051 -.323 2.324 -.026 -.323 2.331 -.095 -.323 2.295 -.074 -.323 2.311 -.124 -.323 2.251 -.111 -.323 2.274 -.134 -.323 2.2 -.131 -.323 2.226 .067 -.343 2.213 .068 -.343 2.2 .068 -.343 2 .134 -.323 2 .057 -.343 2.238 .063 -.343 2.226 .038 -.343 2.257 .048 -.343 2.248 .013 -.343 2.267 .026 -.343 2.263 -.013 -.343 2.267 0 -.343 2.268 -.038 -.343 2.257 -.026 -.343 2.263 -.057 -.343 2.238 -.048 -.343 2.248 -.067 -.343 2.213 -.063 -.343 2.226 -.068 -.343 2.2 -.068 -.343 2 -.134 -.323 2 0 -.35 2.2 0 .35 2 0 -.35 2'/>
</IndexedFaceSet>
</Shape>
</Group>
</Group>
<Group DEF='WeightMotion'>
<!-- ROUTE information for XZWeightMotionClock node:  [from MoveXZWeightBack.touchTime to set_startTime ] [from fraction_changed to XZDirector.set_fraction ] -->
<TimeSensor DEF='XZWeightMotionClockcycleInterval='4'/>

<!-- ROUTE information for YWeightMotionClock node:  [from MoveYWeightBack.touchTime to set_startTime ] [from fraction_changed to YDirector.set_fraction ] -->
<TimeSensor DEF='YWeightMotionClockcycleInterval='4'/>

<!-- ROUTE information for XZDirector node:  [from XZWeightMotionClock.fraction_changed to set_fraction ] [from value_changed to MovableTwoAxisBalanceWeight.set_translation ] -->
<PositionInterpolator DEF='XZDirectorkey='0 0.5 1.0keyValue='0 0 0 0 0 -0.1 0 0 -0.2'/>

< ROUTE  fromNode=' XZWeightMotionClock' fromField='fraction_changed' toNode=' XZDirector' toField='set_fraction'/>
< ROUTE  fromNode=' XZDirector' fromField='value_changed' toNode=' MovableTwoAxisBalanceWeight' toField='set_translation'/>
< ROUTE  fromNode=' MoveXZWeightBack' fromField='touchTime' toNode=' XZWeightMotionClock' toField='set_startTime'/>
<!-- ROUTE information for YDirector node:  [from YWeightMotionClock.fraction_changed to set_fraction ] [from value_changed to MovableYAxisBalanceWeight.set_translation ] -->
<PositionInterpolator DEF='YDirectorkey='0 0.5 1.0keyValue='0 0 0 0 0.1 0 0 0.2 0'/>

< ROUTE  fromNode=' YWeightMotionClock' fromField='fraction_changed' toNode=' YDirector' toField='set_fraction'/>
< ROUTE  fromNode=' YDirector' fromField='value_changed' toNode=' MovableYAxisBalanceWeight' toField='set_translation'/>
< ROUTE  fromNode=' MoveYWeightBack' fromField='touchTime' toNode=' YWeightMotionClock' toField='set_startTime'/>
</Group>
</ProtoBody>
</ProtoDeclare>
</Scene>
</X3D>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: ControlBlock, Handle, LowerSpindle, ManualXYZBalanceBlock, MovableTwoAxisBalanceWeight, MovableYAxisBalanceWeight, MoveXZWeightBack, MoveYWeightBack, SpindleColor, TouchableHandle, TwoAxisBalanceWeight, UpperSpindle, WeightColor, WeightMotion, XZDirector, XZWeightMotionClock, YAxisBalanceWeight, YDirector, YWeightMotionClock

Index for ProtoDeclare definition: ManualXYZBalanceBlock
-->

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

MoveXZWeightBack
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
XZWeightMotionClock
TimeSensor
set_startTime
SFTime

 
 
then
XZWeightMotionClock
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
XZDirector
PositionInterpolator
set_fraction
SFFloat

 
 
then
XZDirector
PositionInterpolator
value_changed
SFVec3f

ROUTE
event to
(3)
MovableTwoAxisBalanceWeight
Transform
set_translation
SFVec3f


MoveYWeightBack
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
YWeightMotionClock
TimeSensor
set_startTime
SFTime

 
 
then
YWeightMotionClock
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
YDirector
PositionInterpolator
set_fraction
SFFloat

 
 
then
YDirector
PositionInterpolator
value_changed
SFVec3f

ROUTE
event to
(3)
MovableYAxisBalanceWeight
Transform
set_translation
SFVec3f



-->

<!-- Online at
https://savage.nps.edu/Savage/Space/SatelliteLab/ManualXYZBalanceBlockPrototypeIndex.html -->
<!-- Version control at
https://gitlab.nps.edu/Savage/Savage/Space/SatelliteLab/ManualXYZBalanceBlockPrototype.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> -->

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