<div dir="ltr"><div dir="ltr"><span style="font-family:"Segoe UI"">Here are the roll-pitch-yaw rotation examples we explored during today's call.  Useful widgets.</span><div><span style="font-family:"Segoe UI""><br></span></div><div><span style="font-family:"Segoe UI"">General index link for gimbals example:<br><ul><li><span style="font-family:"Segoe UI""><b><i>X3D Example Archives: </i></b><b>Basic, Distributed Interactive Simulation, Gimbals<br></b></span></li><li><span style="font-family:"Segoe UI""><a href="https://www.web3d.org/x3d/content/Basic/DistributedInteractiveSimulation/GimbalsIndex.html" target="_blank"><b>https://www.web3d.org/x3d/content/Basic/DistributedInteractiveSimulation/GimbalsIndex.html</b></a></span></li><li><a href="https://www.web3d.org/x3d/content/Basic/DistributedInteractiveSimulation/GimbalsExampleX_ITE.png">https://www.web3d.org/x3d/content/Basic/DistributedInteractiveSimulation/GimbalsExampleX_ITE.png</a></li><li><img src="cid:ii_me7v8rjo3" alt="image.png" width="224" height="134" style="margin-right: 0px;"><br></li></ul><br>General index link for cylinder sensor example:<br><ul><li><span style="font-family:"Segoe UI""><b><i>X3D Example Archives: </i></b><b>Savage, Tools, Animation, Arbitrary Axis Cylinder Sensor Examples<br></b></span></li><li><span style="font-family:"Segoe UI""><a href="https://savage.nps.edu/Savage/Tools/Animation/ArbitraryAxisCylinderSensorExamplesIndex.html" target="_blank"><b>https://savage.nps.edu/Savage/Tools/Animation/ArbitraryAxisCylinderSensorExamplesIndex.html</b></a><b> </b></span> </li><li>(<a href="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/Tools/Animation/ArbitraryAxisCylinderSensorExamples.rotated.png">sourceforge copy</a>)</li><li><img src="cid:ii_me7uwuse2" alt="image.png" width="224" height="153" style="margin-right: 0px;"></li><li>(forked archive soon to migrate to <a href="http://web3d.org">web3d.org</a> so future url addresses will change)<br></li></ul></span></div><div><span style="font-family:"Segoe UI"">Hopefully these illustrate why I think it is possible for us to control and constrain rotations to predefine Range of Motion (ROM) in an HAnimJoint.  As ever, implementation and evaluation is necessary.</span></div><div><font face="Segoe UI"><br></font></div><div><font face="Segoe UI">This is slightly analagous to the joint widgets in the amazing video that Aaron shared.</font></div><div><ul><li><font face="Segoe UI">antCGi Rigging & Animation Tools Preview</font></li><li><font face="Segoe UI"><a href="https://youtu.be/CY7TKtalFaQ?t=62" target="_blank">https://youtu.be/CY7TKtalFaQ?t=62</a></font></li><li><font face="Segoe UI"><img src="cid:ii_me7ul3ku0" alt="image.png" width="562" height="316"><br></font></li></ul></div><div><span style="font-family:"Segoe UI""><b><br></b></span></div><div><span style="font-family:"Segoe UI""><b>Suggested implementation approach, next steps:</b></span></div><div><span style="font-family:"Segoe UI""><b>- </b>use the Cylinder Sensor approach, which is a prototype, with a single </span><span style="font-family:"Segoe UI"">humanoid</span><span style="font-family:"Segoe UI""> joint</span></div><div><span style="font-family:"Segoe UI"">- get comfortable with that, maybe the Red Box roll, Green </span></div><div><font face="Segoe UI">- i turn the gimbals into a prototype as well</font></div><div><font face="Segoe UI">- we hook that up to a humanoid joint too</font></div><div><font face="Segoe UI">- then figure out good ways to illustrate HAnimJoint minAngle/maxAngle range of motion (ROM) examples.</font></div><div><font face="Segoe UI"><br></font></div><div><font face="Segoe UI">Onward we go...  Have fun with X3D and HAnim!  😀</font></div><div><font face="Segoe UI"><br></font></div><div><font face="Segoe UI">all the best, Don</font></div><div><font face="Segoe UI"><br></font></div></div>
</div>