Lampiran Koding
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "http://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='http://www.web3d.org/specificati ons/x3d-3.3.xsd'>
<head>
<meta content='TanganRobotProposal.x3d' name='title'/> <meta content='Nurul Fadilla' name='creator'/>
<meta content='29 Maret 2017' name='created'/> <meta content='29 Maret 2017' name='modified'/> </head>
<Scene>
<Viewpoint centerOfRotation="0 0 0" position="0 .3 11" orientation="0.1 0.7 0 0.1" />
<!-- ori <Viewpoint DEF='PosisiTampilanAwal' position='0 0.3 11'/> -->
<Background skyColor='0.5 0.6 0.3'/>
<TimeSensor DEF="TimerKanan" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="MuterKanan" key = "0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1"
keyValue = "0 0 1 0,
0 1 0 5.96903, 0 0 1 0 "/>
<TimeSensor DEF="TimerKiri" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="MuterKiri" key = "0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1"
keyValue = "0 0 1 0,
0 1 0 -0.314159, 0 1 0 -0.628318, 0 1 0 -0.942478, 0 1 0 -1.25664, 0 1 0 -1.5708, 0 1 0 -1.88496, 0 1 0 -2.19911, 0 1 0 -2.51327, 0 1 0 -2.82743, 0 1 0 -3.14159, 0 1 0 -3.45575, 0 1 0 -3.76991, 0 1 0 -4.08407, 0 1 0 -4.39823, 0 1 0 -4.71239, 0 1 0 -5.02655, 0 1 0 -5.34071, 0 1 0 -5.65487, 0 1 0 -5.96903, 0 0 1 0 "/>
<TimeSensor DEF="Timer45Derajat1" cycleInterval="8" loop="false"/>
<OrientationInterpolator DEF="Turun45Derajat"
key = "0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80, 0.90"
keyValue = "0 1 0 0,
0 1 0 -0.19625, 0 1 0 -0.3925, 0 1 0 -0.58875, 0 1 0 -0.785, 0 1 0 -0.98125, 0 1 0 -1.1775, 0 1 0 -1.37375, 0 1 0 -1.57" />
<TimeSensor DEF="Timer45Derajat0" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="Naik45Derajat"
key = "0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80, 0.90"
0 1 0 -1.37375, 0 1 0 -1.1775, 0 1 0 -0.98125, 0 1 0 -0.785, 0 1 0 0" />
<TimeSensor DEF="Timer90Derajat1" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="Naik90Derajat" key = "0.0, 0.1, 0.2, 0.3, 0.4" keyValue =
"
0 1 0 -0.628318, 0 1 0 -0.471239, 0 1 0 -0.314159, 0 1 0 -0.15708, 0 1 0 0" />
<TimeSensor DEF="Timer90Derajat0" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="Turun90Derajat"
key = "0.0, 0.1, 0.2, 0.3, 0.4, 0.5" keyValue =
"0 1 0 0,
0 1 0 -0.15708, 0 1 0 -0.314159, 0 1 0 -0.471239, 0 1 0 -0.628318" />
<TimeSensor DEF="TimerKananRingDepan" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="MuterKananRingDepan" key = "0, 0.05, 0.1, 0.15,
0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1"
keyValue = "0 0 1 0,
<TimeSensor DEF="TimerKiriRingDepan" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="MuterKiriRingDepan" key = "0, 0.05, 0.1, 0.15,
0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1"
keyValue = "0 0 1 0,
0 1 0 -0.314159, 0 1 0 -0.628318, 0 1 0 -0.942478, 0 1 0 -1.25664, 0 1 0 -1.5708, 0 1 0 -1.88496, 0 1 0 -2.19911, 0 1 0 -2.51327, 0 1 0 -2.82743, 0 1 0 -3.14159, 0 1 0 -3.45575, 0 1 0 -3.76991, 0 1 0 -4.08407, 0 0 1 0 "/>
<TimeSensor DEF="Timer90DerajatAsDepan1" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="Naik90DerajatAsDepan" key = "0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1"
keyValue = "0 1 0 -1.5708, 0 1 0 -1.41372, 0 1 0 -1.25664, 0 1 0 -1.09956, 0 1 0 -0.942478, 0 1 0 -0.785398, 0 1 0 -0.628318, 0 1 0 -0.471239, 0 1 0 -0.314159, 0 1 0 -0.15708, 0 1 0 0" />
<TimeSensor DEF="Timer90DerajatAsDepan0" cycleInterval="5" loop="false"/>
<OrientationInterpolator DEF="Turun90DerajatAsDepan" key = "0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1"
keyValue = "0 1 0 0,
0 1 0 -1.25664, 0 1 0 -1.41372, 0 1 0 -1.5708" />
<TimeSensor DEF="TimerCloseKanan" cycleInterval="3" loop="false"/>
<PositionInterpolator DEF="KeyCloseKanan" key = "0, 0.35,0.65" keyValue = "0. 0.087 0.077 , 0. 0.087 0.03555,
0. 0.087 0.0059 " /> <TimeSensor DEF="TimerCloseKiri" cycleInterval="3" loop="false"/>
<PositionInterpolator DEF="KeyCloseKiri" key = "0, 0.35,0.65" keyValue = "0. 0.087 -0.077 , 0. 0.087 -0.03555,
0 0.087 -0.0059" /> <TimeSensor DEF="TimerOpenKanan" cycleInterval="3" loop="false"/>
<PositionInterpolator DEF="KeyOpenKanan" key = "0, 0.35,0.65" keyValue = "0. 0.087 0.0059 , 0. 0.087 0.03555,
0. 0.087 0.077" />
<TimeSensor DEF="TimerOpenKiri" cycleInterval="3" loop="false"/>
<PositionInterpolator DEF="KeyOpenKiri" key = "0, 0.35,0.65" keyValue = "0. 0.087 -0.0059 , 0. 0.087 -0.03555 ,
0. 0.087 -0.077 " />
<!-- -Akhir dari Timer routing - -->
<Group DEF="Pondasi">
<Transform DEF="Lantai" translation="0 0 0"> <Shape>
<Appearance>
<Material diffuseColor="0 0 0" transparency="0"/>
</Appearance>
<Box size="5 0.3 3.7" solid="true"/> </Shape>
</Transform>
<Transform DEF="AlasRobotBawah" translation="0 0.3 0">
<Shape DEF="LingkaranBawah"> <Appearance>
<Material diffuseColor="0 2.0 4.1" transparency="0"/>
</Appearance>
</Shape> </Transform>
<Transform DEF="TiangPenyangga1Depan" translation="-0.6 0.9 1">
<Shape DEF="TiangP1"> <Appearance>
<Material diffuseColor="4 2 3.1" transparency="0"/>
</Appearance>
<Cylinder radius="0.12" height="0.9"/> </Shape>
</Transform>
<Transform DEF="TiangPenyangga2Depan" translation="0.6 0.9 1">
<Shape USE="TiangP1"/> </Transform>
<Transform DEF="TiangPenyangga1Belakang" translation="0.6 0.9 -1">
<Shape USE="TiangP1"/> </Transform>
<Transform DEF="TiangPenyangga2Belakang" translation="-0.6 0.9 -1">
<Shape USE="TiangP1"/> </Transform>
<Transform DEF="TiangPenyanggaKanan" translation="-1.2 0.9 0">
<Shape USE="TiangP1"/> </Transform>
<Transform DEF="TiangPenyanggaKiri" translation="1.2 0.9 0">
<Shape USE="TiangP1"/> </Transform>
<Transform DEF="LingkaranAtas" translation="0 1.19 0">
<Shape USE="LingkaranBawah"/> </Transform>
<Transform DEF="AlasPetakKecil" translation="0 1.4 0">
<Shape>
<Appearance>
<Material diffuseColor="4 1 0" transparency="0"/>
</Appearance>
<Box size="1.5 0.2 1.5"/> </Shape>
</Transform>
<Transform DEF="Bullet1" translation="0.5 1.456 0.5">
<Shape DEF="Baut1"> <Appearance>
<Material specularColor="0 1 2" transparency="0" shininess='1'/>
<Sphere radius="0.1" solid="true"/> </Shape>
</Transform>
<Transform DEF="Bullet2" translation="-0.5 1.456 0.5">
<Shape USE="Baut1"/> </Transform>
<Transform DEF="Bullet3" translation="0.5 1.456 -0.5">
<Shape USE="Baut1"/> </Transform>
<Transform DEF="Bullet4" translation="0.5 1.456 -0.5">
<Shape USE="Baut1"/> </Transform>
<Transform DEF="KotakBawah1" translation="0 1.7 0"> <Shape >
<Appearance>
<Material diffuseColor="0.2 0.5 0.01" transparency="0"/>
</Appearance>
<Box size="0.8 .43 0.8"/> </Shape>
</Transform>
<Transform DEF="LingkaranLenganBawah" translation="0 1.8 0">
<Shape DEF="LingkarLenganBawah"> <Appearance>
<Material specularColor="0 2 3.2" transparency="0"/>
</Appearance>
<Cylinder radius="0.5" height="0.35" solid="true"/>
</Shape> </Transform> </Group>
<!-- Bagian Lengan Robot Keseluruhan-->
<Transform DEF="AllArmRobot" translation="0 2.03 0" rotation="0 0 0 0" center="0 0 0">
<Shape DEF="RingBiruBawah"> <Appearance>
<Material specularColor="0 0 3.1" transparency="0" />
</Appearance>
<Cylinder radius="0.61" height="0.11" solid="true"/>
</Shape>
<Transform DEF="KotakBawah" translation="0 0.25 0"> <Shape DEF="KotakLenganBawah">
<Appearance>
</Appearance>
<Box size="0.5 0.4 0.5"/> </Shape>
</Transform>
<Transform translation="0 0.23 0" rotation="0 0 1 1.57" center="0 0 0">
<Transform DEF="AsBawah">
<Transform center="0 0 0" translation="0 0 0">
<Shape DEF="AsBawahCylinder"> <Appearance>
<Material specularColor="0 0 1.2" />
</Appearance>
<Cylinder radius="0.1" height="0.85"/>
</Shape>
<Transform translation="0.8 0.346 -0.39" rotation="0.5 0 1 1.57" center="0 0 0">
<Shape DEF="TulangKanan"> <Appearance>
<Material specularColor="0 0 0" />
</Appearance>
<Cylinder radius="0.077" height="1.85"/>
</Shape> </Transform>
<Transform translation="0.8 0.346 -0.39" rotation="0.5 0 1 1.57" center="0 0 0">
<Shape DEF="TulangKiri"> <Appearance>
<Material specularColor="0 0 0" />
</Appearance>
<Cylinder radius="0.077" height="1.85"/>
</Shape> </Transform>
<Transform DEF="AsTengahCylinder" center="0 0 0" translation="1.57 0 -0.77">
<Shape >
<Appearance>
<Material specularColor="0 0 1.2" />
</Appearance>
<Cylinder radius="0.06" height="0.85"/>
</Shape>
<Shape>
<Appearance> <Material specularColor="0 1 1" transparency="0"/>
</Appearance>
<Box size="0.35 0.5 0.7" /> </Shape>
</Transform>
<Transform center="0 0 0" translation="0 0.113 0.5" rotation="1 0 0 1.57">
<Shape>
<Appearance> <Material specularColor="0 0 0" />
</Appearance>
<Box size="0.135 1.1 0.123" solid="true"/>
</Shape> </Transform>
<Transform center="0 0 0" translation="0 -0.113 0.5" rotation="1 0 0 1.57" >
<Shape>
<Appearance> <Material specularColor="0 0 0" />
</Appearance>
<Box size="0.135 1.1 0.123" solid="true"/>
</Shape> </Transform>
<Transform DEF="AsDepanCylinder" center="0 0 0" translation="0 0 0.9889">
<Shape >
<Appearance> <Material specularColor="0 0 1.3" />
</Appearance>
<Cylinder radius="0.06" height="0.25"/>
</Shape>
<Transform translation="0 0 0.12" rotation="1 0 0 1.57" center="0 0 0">
<Shape>
<Appearance> <Material specularColor="0 0 0" transparency="0"/>
</Appearance>
<Cylinder radius="0.045" height="0.3"/>
</Transform>
<Transform center="0 0 0" translation="0 0 0.2" rotation="1 0 0 1.57">
<Shape>
<Appearance> <Material specularColor="0 0 0"/>
</Appearance>
<Cylinder radius="0.175" height="0.07"/>
</Shape> </Transform>
<Transform translation="0 0 0.25" rotation="1 0 0 1.57">
<Transform DEF="RingTapakTangan" center="0 0 0"> <Shape>
<Appearance> <Material specularColor="0 0 0"/>
</Appearance>
<Cylinder radius="0.13" height="0.03"/>
</Shape>
<Transform DEF="RuasJari" translation="0 0.0098 0" rotation="1 0 0 1.57">
<Shape>
<Appearance> <Material specularColor="0 0 0"/>
</Appearance> <Cylinder radius="0.018" height="0.21"/>
</Shape> </Transform>
<Transform DEF="JariKiri" translation="0 0.087 -0.09" rotation="1 0 0 1.57">
<Shape>
<Appearance> <Material specularColor="0 0 0"/>
</Appearance>
<Box size="0.05 0.043 0.16"/>
</Shape>
<CylinderSensor DEF="SensorJariKiri"/>
</Transform>
<Transform DEF="JariKanan" translation="0 0.087 0.09" rotation="1 0 0 1.57">
<Shape>
<Material specularColor="0 0 0"/>
</Appearance>
<Box size="0.05 0.043 0.16"/>
</Shape>
<CylinderSensor DEF="SensorJariKanan"/>
</Transform> <CylinderSensor DEF="SensorRingTapakTangan"/>
</Transform> </Transform> <CylinderSensor DEF="SensorAsDepanCylinder"/>
</Transform>
<CylinderSensor DEF="SensorAsTengah" />
</Transform>
<CylinderSensor DEF="SensorAsBawah" minAngle='-1.57' maxAngle='0.1'/>
</Transform> </Transform> </Transform>
<CylinderSensor DEF="SensorAllArmRobot"/> </Transform>
<Group DEF="BagianTombol"> <!-- Bagian TOmbol Tombol -->
<Transform DEF="Tombol" translation="-2 -1.5 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhKanan"/> <Shape DEF="TombolBox">
<Appearance>
<Material diffuseColor="0.3 0.5 0.1"/> </Appearance>
<Box size="1.2 0.3 0.01"/> </Shape>
</Transform>
<Transform DEF="Tombol2" translation="-0.7 -1.5 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhKiri"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="TombolRingDepan" translation="-2 -2.1 0">
<TouchSensor DEF="SensorSentuhRingDepanKanan"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="TombolRingDepanKiri" translation="-0.7 -2.1 0">
<Shape USE="TombolBox"/> </Transform>
<Transform DEF="OpenJari" translation="-2 -2.65 0"> <TouchSensor DEF="SensorSentuhJariKananClose"/> <TouchSensor DEF="SensorSentuhJariKiriClose"/> <Shape USE="TombolBox"/>
</Transform>
<Transform translation="-0.7 -2.65 0">
<TouchSensor DEF="SensorSentuhJariKananOpen"/> <TouchSensor DEF="SensorSentuhJariKiriOpen"/> <Shape USE="TombolBox"/>
</Transform> <!-- sisi kiri -->
<!-- sisi kanan -->
<Transform DEF="Tombol45DerjtNaik" translation="0.8 -1.5 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhAsBelakangNaik"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="Tombol45DerajatTurun" translation="2.1 -1.5 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhAsBelakangTurun"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="Tombol90DerajatNaik" translation="0.8 -2.1 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhAsTengahNaik"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="Tombol90Derajat" translation="2.1 -2.1 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhAsTengahTurun"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="Tombol45DerajatDepanNaik" translation="0.8 -2.65 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhAsDepanNaik"/> <Shape USE="TombolBox"/>
</Transform>
<Transform DEF="Tombol45DerajatDepanTurun" translation="2.1 -2.65 0" rotation="0 0 0 0">
<TouchSensor DEF="SensorSentuhAsDepanTurun"/> <Shape USE="TombolBox"/>
</Transform>
<!-- Label sisi Kiri
<Billboard> <Shape>
<Appearance DEF='LABEL_APPEARANCE'>
<Material diffuseColor='1 1 .3'
</Appearance>
<Text string='"Y"'>
<FontStyle DEF='LABEL_FONT' family='"SANS"' justify='"MIDDLE" "MIDDLE"' size='.2'/>
</Text> </Shape> </Billboard>
-->
<Transform translation='-2 -1.45 0.1'> <Billboard>
<Shape DEF="sleft">
<Appearance DEF="WarnaHitam">
<Material diffuseColor="1 1 .4" emissiveColor=".34 .43 .1"/>
</Appearance>
<Text string='"Left"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' family='"SANS"' size='0.2'/>
</Text> </Shape> </Billboard> </Transform>
<Transform translation="-0.7 -1.515 0.1"> <Billboard>
<Shape DEF="right">
<Appearance USE="WarnaHitam"/> <Text string='"Right"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' family='"SANS"' size='0.2'/>
</Text> </Shape> </Billboard> </Transform>
<Transform translation="-0.7 -2.11 0.1"> <Shape USE="right"/>
</Transform>
<Transform translation="-2 -2.05 0.1"> <Shape USE="sleft"/>
</Transform>
<Transform translation="-2 -2.65 0.1">
<Shape >
<Appearance USE="WarnaHitam"/> <Text string='"Close"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' family='"SANS"' size='0.2'/>
</Text>
</Shape>
</Transform>
<Shape DEF="sright">
<Appearance USE="WarnaHitam"/> <Text string='"Open"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' family='"SANS"' size='0.2'/>
</Text> </Shape> </Transform>
<!-- Label Sisi Kanan -->
<Transform translation="0.8 -1.5 0.1"> <Shape DEF="sNaik">
<Appearance USE="WarnaHitam"/> <Text string='"Up"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' family='"SANS"' size='0.2'/>
</Text>
</Shape> </Transform>
<Transform translation="2.1 -1.5 0.1"> <Shape DEF="sTurun">
<Appearance USE="WarnaHitam"/> <Text string='"Down"'>
<FontStyle justify='"MIDDLE" "MIDDLE"' family='"SANS"' size='0.2'/>
</Text>
</Shape> </Transform>
<Transform translation="0.8 -2.1 0.1"> <Shape USE="sNaik"/>
</Transform>
<Transform translation="2.1 -2.1 0.1"> <Shape USE="sTurun"/>
</Transform>
<Transform translation="0.8 -2.65 0.1"> <Shape USE="sNaik"/>
</Transform>
<Transform translation="2.1 -2.65 0.1"> <Shape USE="sTurun"/>
</Transform> -->
<!-- akhir bagian tombol tombol -->
</Group>
<!--
<ROUTE fromNode="SensorAsBawah" fromField="rotation_changed" toField="rotation" toNode="AsBawah"/>
<ROUTE fromNode="SensorAsTengah"
fromField="rotation_changed" toField="rotation" toNode="AsTengahCylinder"/>
<ROUTE fromNode="SensorRingTapakTangan" fromField="rotation_changed" toField="rotation" toNode="RingTapakTangan"/>
<ROUTE fromNode="SensorLenganBawah" fromField="rotation_changed" toField="rotation" toNode="UntukSensorPutarLenganBawah"/>
<ROUTE fromNode="SensorAsDepanCylinder" fromField="rotation_changed" toField="rotation" toNode="AsDepanCylinder"/>
<ROUTE fromField='rotation_changed'
fromNode='SensorRingTapakTangan' toField='rotation'
toNode='RingTapakTangan'/> -->
<!--bagian route tombol -->
<!--Muter ke kanan -->
<ROUTE fromNode="SensorSentuhKanan" fromField="touchTime" toField="startTime" toNode="TimerKanan"/>
<ROUTE fromNode="TimerKanan"
fromField="fraction_changed" toField="set_fraction" toNode="MuterKanan"/>
<ROUTE fromNode="MuterKanan" fromField="value_changed" toField="rotation" toNode="AllArmRobot"/>
<!--Muter ke kiri -->
<ROUTE fromNode="SensorSentuhKiri" fromField="touchTime" toField="startTime" toNode="TimerKiri"/>
<ROUTE fromNode="TimerKiri"
fromField="fraction_changed" toField="set_fraction" toNode="MuterKiri"/>
<ROUTE fromNode="MuterKiri" fromField="value_changed" toField="rotation" toNode="AllArmRobot"/>
<!--AsBawah Naik 45 Derajat -->
<ROUTE fromNode="SensorSentuhAsBelakangNaik" fromField="touchTime" toField="startTime" toNode="Timer45Derajat1"/>
<ROUTE fromNode="Timer45Derajat1"
fromField="fraction_changed" toField="set_fraction" toNode="Naik45Derajat"/>
<ROUTE fromNode="Naik45Derajat"
fromField="value_changed" toField="rotation" toNode="AsBawah"/>
<!--AsBawah Turun 45 Derajat -->
<ROUTE fromNode="Timer45Derajat0" fromField="fraction_changed" toField="set_fraction" toNode="Turun45Derajat"/>
<ROUTE fromNode="Turun45Derajat"
fromField="value_changed" toField="rotation" toNode="AsBawah"/>
<!--AsTengah Naik 90 Derajat -->
<ROUTE fromNode="SensorSentuhAsTengahNaik" fromField="touchTime" toField="startTime" toNode="Timer90Derajat1"/>
<ROUTE fromNode="Timer90Derajat1"
fromField="fraction_changed" toField="set_fraction" toNode="Naik90Derajat"/>
<ROUTE fromNode="Naik90Derajat"
fromField="value_changed" toField="rotation" toNode="AsTengahCylinder"/>
<!--Astengah Turun 90 Derajat -->
<ROUTE fromNode="SensorSentuhAsTengahTurun" fromField="touchTime" toField="startTime" toNode="Timer90Derajat0"/>
<ROUTE fromNode="Timer90Derajat0"
fromField="fraction_changed" toField="set_fraction" toNode="Turun90Derajat"/>
<ROUTE fromNode="Turun90Derajat"
fromField="value_changed" toField="rotation" toNode="AsTengahCylinder"/>
<!--Muter ke kanan -->
<ROUTE fromNode="SensorSentuhRingDepanKanan" fromField="touchTime" toField="startTime" toNode="TimerKananRingDepan"/>
<ROUTE fromNode="TimerKananRingDepan" fromField="fraction_changed" toField="set_fraction" toNode="MuterKananRingDepan"/>
<ROUTE fromNode="MuterKananRingDepan" fromField="value_changed" toField="rotation" toNode="RingTapakTangan"/>
<!--Muter ke kiri -->
<ROUTE fromNode="SensorSentuhRingDepanKiri" fromField="touchTime" toField="startTime" toNode="TimerKiriRingDepan"/>
<ROUTE fromNode="TimerKiriRingDepan" fromField="fraction_changed" toField="set_fraction" toNode="MuterKiriRingDepan"/>
<ROUTE fromNode="MuterKiriRingDepan" fromField="value_changed" toField="rotation" toNode="RingTapakTangan"/>
<ROUTE fromNode="SensorSentuhAsDepanNaik" fromField="touchTime" toField="startTime" toNode="Timer90DerajatAsDepan1"/>
<ROUTE fromNode="Timer90DerajatAsDepan1" fromField="fraction_changed" toField="set_fraction" toNode="Naik90DerajatAsDepan"/>
<ROUTE fromNode="Naik90DerajatAsDepan" fromField="value_changed" toField="rotation" toNode="AsDepanCylinder"/>
<!--PorosDepan Turun 90 Derajat -->
<ROUTE fromNode="SensorSentuhAsDepanTurun" fromField="touchTime" toField="startTime" toNode="Timer90DerajatAsDepan0"/>
<ROUTE fromNode="Timer90DerajatAsDepan0" fromField="fraction_changed" toField="set_fraction" toNode="Turun90DerajatAsDepan"/>
<!-- Close -->
<ROUTE fromNode="SensorSentuhJariKiriClose" fromField="touchTime" toField="startTime" toNode="TimerCloseKiri"/>
<ROUTE fromNode="TimerCloseKiri"
fromField="fraction_changed" toField="set_fraction" toNode="KeyCloseKiri"/>
<ROUTE fromNode="KeyCloseKiri"
fromField="value_changed" toField="set_translation" toNode="JariKiri"/>
<ROUTE fromNode="SensorSentuhJariKananClose" fromField="touchTime" toField="startTime" toNode="TimerCloseKanan"/>
<ROUTE fromNode="TimerCloseKanan"
fromField="fraction_changed" toField="set_fraction" toNode="KeyCloseKanan"/>
<ROUTE fromNode="KeyCloseKanan"
fromField="value_changed" toField="set_translation" toNode="JariKanan"/>
<!-- Open -->
<ROUTE fromNode="SensorSentuhJariKiriOpen" fromField="touchTime" toField="startTime" toNode="TimerOpenKiri"/>
<ROUTE fromNode="TimerOpenKiri"
fromField="fraction_changed" toField="set_fraction" toNode="KeyOpenKiri"/>
<ROUTE fromNode="KeyOpenKiri" fromField="value_changed" toField="set_translation" toNode="JariKiri"/>
<ROUTE fromNode="SensorSentuhJariKananOpen" fromField="touchTime" toField="startTime" toNode="TimerOpenKanan"/>
<ROUTE fromNode="TimerOpenKanan"
<ROUTE fromNode="KeyOpenKanan" fromField="value_changed" toField="set_translation" toNode="JariKanan"/>
</Scene> </X3D>
Koding HTML
<!DOCTYPE html> <html>
<head>
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
<meta http-equiv="Pragma" content="no-cache"/> <meta http-equiv="Expires" content="0"/>
<meta charset="utf-8"/>
<link rel="stylesheet" type="text/css" href="cobweb.css"/>
<script type="text/javascript"
src="cobweb.js"></script> <style>
@import
url(https://fonts.googleapis.com/css?family=PT+Sans:400,400ital ic,700,700italic);
html, body {
margin: 0px; padding: 0px; border: 0px; width: 100%; height: 100%; overflow: hidden; }
body {
background: #414141; color: white;
font-family: PT Sans; font-size: 16px; }
.browser {
position: absolute; display: block; top: 0px;
width: auto; height: auto; }
.fallback {
position: absolute; display: block; top: 35%;
right: 30px; left: 30px;
text-align: center; }
</style>
<script type="text/javascript"> X3D (function (element)
{
var url = new X3D .MFString (new (X3D .require ("standard/Networking/URI")) (location) .query .split (","));
X3D .getBrowser (element) .loadURL (url, new X3D .MFString ());
});
</script> </head>
<body>
<X3DCanvas class="browser" src="perbaikan.x3d"> <p class="fallback">Sorry,<br/>
it wasn't me!<br/> <br/>
Your browser may not support all features required by Cobweb! You should use the latest version of Firefox, Chrome,
or Microsoft Edge, because this is currently the choice of the choice. We will continuously
keep you informed on technical
developments and as soon as Cobweb is running in other browser too.
</p> </X3DCanvas> </body>