x_ite 8.4.3 → 8.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +5 -1
- package/Makefile +0 -3
- package/build/bin/components.js +173 -0
- package/build/bin/tags.pl +28 -0
- package/build/bin/tests.pl +80 -2
- package/build/bin/version.pl +12 -7
- package/dist/assets/components/Annotation.js +13 -13
- package/dist/assets/components/Annotation.min.js +1 -1
- package/dist/assets/components/CADGeometry.js +13 -13
- package/dist/assets/components/CADGeometry.min.js +1 -1
- package/dist/assets/components/CubeMapTexturing.js +28 -29
- package/dist/assets/components/CubeMapTexturing.min.js +1 -1
- package/dist/assets/components/DIS.js +13 -13
- package/dist/assets/components/DIS.min.js +1 -1
- package/dist/assets/components/EventUtilities.js +9 -9
- package/dist/assets/components/EventUtilities.min.js +1 -1
- package/dist/assets/components/Geometry2D.js +19 -19
- package/dist/assets/components/Geometry2D.min.js +1 -1
- package/dist/assets/components/Geospatial.js +33 -33
- package/dist/assets/components/Geospatial.min.js +1 -1
- package/dist/assets/components/HAnim.js +63 -42
- package/dist/assets/components/HAnim.min.js +1 -1
- package/dist/assets/components/KeyDeviceSensor.js +8 -8
- package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
- package/dist/assets/components/Layout.js +37 -29
- package/dist/assets/components/Layout.min.js +1 -1
- package/dist/assets/components/NURBS.js +29 -31
- package/dist/assets/components/NURBS.min.js +1 -1
- package/dist/assets/components/ParticleSystems.js +23 -23
- package/dist/assets/components/ParticleSystems.min.js +1 -1
- package/dist/assets/components/Picking.js +19 -19
- package/dist/assets/components/Picking.min.js +1 -1
- package/dist/assets/components/RigidBodyPhysics.js +24 -19
- package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
- package/dist/assets/components/Scripting.js +30 -30
- package/dist/assets/components/Scripting.min.js +1 -1
- package/dist/assets/components/Text.js +172 -594
- package/dist/assets/components/Text.min.js +1 -1
- package/dist/assets/components/TextureProjector.js +31 -47
- package/dist/assets/components/TextureProjector.min.js +1 -1
- package/dist/assets/components/Texturing3D.js +367 -346
- package/dist/assets/components/Texturing3D.min.js +1 -1
- package/dist/assets/components/VolumeRendering.js +19 -19
- package/dist/assets/components/VolumeRendering.min.js +1 -1
- package/dist/assets/components/X_ITE.js +9 -9
- package/dist/assets/components/X_ITE.min.js +1 -1
- package/dist/x_ite.css +1 -1
- package/dist/x_ite.js +12174 -3553
- package/dist/x_ite.min.js +1 -1
- package/dist/x_ite.zip +0 -0
- package/docs/_config.yml +5 -136
- package/docs/_data/nav/components-CADGeometry.yml +14 -0
- package/docs/_data/nav/components-Core.yml +16 -0
- package/docs/_data/nav/components-CubeMapTexturing.yml +8 -0
- package/docs/_data/nav/components-DIS.yml +14 -0
- package/docs/_data/nav/components-EnvironmentalEffects.yml +12 -0
- package/docs/_data/nav/components-EnvironmentalSensor.yml +8 -0
- package/docs/_data/nav/components-EventUtilities.yml +16 -0
- package/docs/_data/nav/components-Followers.yml +30 -0
- package/docs/_data/nav/components-Geometry2D.yml +18 -0
- package/docs/_data/nav/components-Geometry3D.yml +16 -0
- package/docs/_data/nav/components-Geospatial.yml +24 -0
- package/docs/_data/nav/components-Grouping.yml +10 -0
- package/docs/_data/nav/components-HAnim.yml +14 -0
- package/docs/_data/nav/components-Interpolation.yml +28 -0
- package/docs/_data/nav/components-KeyDeviceSensor.yml +6 -0
- package/docs/_data/nav/components-Layering.yml +8 -0
- package/docs/_data/nav/components-Layout.yml +12 -0
- package/docs/_data/nav/components-Lighting.yml +10 -0
- package/docs/_data/nav/components-NURBS.yml +30 -0
- package/docs/_data/nav/components-Navigation.yml +16 -0
- package/docs/_data/nav/components-Networking.yml +8 -0
- package/docs/_data/nav/components-ParticleSystems.yml +22 -0
- package/docs/_data/nav/components-Picking.yml +12 -0
- package/docs/_data/nav/components-PointingDeviceSensor.yml +10 -0
- package/docs/_data/nav/components-Rendering.yml +30 -0
- package/docs/_data/nav/components-RigidBodyPhysics.yml +30 -0
- package/docs/_data/nav/components-Scripting.yml +4 -0
- package/docs/_data/nav/components-Shaders.yml +18 -0
- package/docs/_data/nav/components-Shape.yml +22 -0
- package/docs/_data/nav/components-Sound.yml +44 -0
- package/docs/_data/nav/components-Text.yml +6 -0
- package/docs/_data/nav/components-TextureProjector.yml +6 -0
- package/docs/_data/nav/components-Texturing.yml +22 -0
- package/docs/_data/nav/components-Texturing3D.yml +18 -0
- package/docs/_data/nav/components-Time.yml +4 -0
- package/docs/_data/nav/components-VolumeRendering.yml +28 -0
- package/docs/_data/nav/components-X_ITE.yml +4 -0
- package/docs/_data/nav/main.yml +26 -0
- package/docs/_data/nav/reference.yml +18 -0
- package/docs/_data/nav/tutorials-animation-sensors-and-geometry.yml +18 -0
- package/docs/_data/nav/tutorials-basic.yml +6 -0
- package/docs/_data/nav/tutorials-optimize-your-scene.yml +6 -0
- package/docs/_data/nav/tutorials-scripts-and-prototypes.yml +12 -0
- package/docs/_data/nav/tutorials-shapes-geometry-and-appearance.yml +16 -0
- package/docs/_data/nav/tutorials-textures-lights-and-environment.yml +20 -0
- package/docs/_includes/nav.html +2 -2
- package/docs/_includes/scripts.html +2 -1
- package/docs/_posts/accessing-the-external-browser.md +1 -1
- package/docs/_posts/browser-support.md +1 -1
- package/docs/_posts/components/CADGeometry/CADAssembly.md +83 -0
- package/docs/_posts/components/CADGeometry/CADFace.md +70 -0
- package/docs/_posts/components/CADGeometry/CADLayer.md +84 -0
- package/docs/_posts/components/CADGeometry/CADPart.md +117 -0
- package/docs/_posts/components/CADGeometry/IndexedQuadSet.md +125 -0
- package/docs/_posts/components/CADGeometry/QuadSet.md +113 -0
- package/docs/_posts/components/Core/MetadataBoolean.md +90 -0
- package/docs/_posts/components/Core/MetadataDouble.md +67 -0
- package/docs/_posts/components/Core/MetadataFloat.md +67 -0
- package/docs/_posts/components/Core/MetadataInteger.md +66 -0
- package/docs/_posts/components/Core/MetadataSet.md +63 -0
- package/docs/_posts/components/Core/MetadataString.md +66 -0
- package/docs/_posts/components/Core/WorldInfo.md +54 -0
- package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +76 -0
- package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +65 -0
- package/docs/_posts/components/CubeMapTexturing/ImageCubeMapTexture.md +66 -0
- package/docs/_posts/components/DIS/DISEntityManager.md +73 -0
- package/docs/_posts/components/DIS/DISEntityTypeMapping.md +88 -0
- package/docs/_posts/components/DIS/EspduTransform.md +416 -0
- package/docs/_posts/components/DIS/ReceiverPdu.md +168 -0
- package/docs/_posts/components/DIS/SignalPdu.md +168 -0
- package/docs/_posts/components/DIS/TransmitterPdu.md +232 -0
- package/docs/_posts/components/EnvironmentalEffects/Background.md +189 -0
- package/docs/_posts/components/EnvironmentalEffects/Fog.md +97 -0
- package/docs/_posts/components/EnvironmentalEffects/FogCoordinate.md +40 -0
- package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +84 -0
- package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +142 -0
- package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +90 -0
- package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +91 -0
- package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +73 -0
- package/docs/_posts/components/EventUtilities/BooleanFilter.md +62 -0
- package/docs/_posts/components/EventUtilities/BooleanSequencer.md +86 -0
- package/docs/_posts/components/EventUtilities/BooleanToggle.md +46 -0
- package/docs/_posts/components/EventUtilities/BooleanTrigger.md +47 -0
- package/docs/_posts/components/EventUtilities/IntegerSequencer.md +90 -0
- package/docs/_posts/components/EventUtilities/IntegerTrigger.md +51 -0
- package/docs/_posts/components/EventUtilities/TimeTrigger.md +47 -0
- package/docs/_posts/components/Followers/ColorChaser.md +77 -0
- package/docs/_posts/components/Followers/ColorDamper.md +85 -0
- package/docs/_posts/components/Followers/CoordinateChaser.md +76 -0
- package/docs/_posts/components/Followers/CoordinateDamper.md +80 -0
- package/docs/_posts/components/Followers/OrientationChaser.md +72 -0
- package/docs/_posts/components/Followers/OrientationDamper.md +80 -0
- package/docs/_posts/components/Followers/PositionChaser.md +72 -0
- package/docs/_posts/components/Followers/PositionChaser2D.md +72 -0
- package/docs/_posts/components/Followers/PositionDamper.md +80 -0
- package/docs/_posts/components/Followers/PositionDamper2D.md +80 -0
- package/docs/_posts/components/Followers/ScalarChaser.md +76 -0
- package/docs/_posts/components/Followers/ScalarDamper.md +80 -0
- package/docs/_posts/components/Followers/TexCoordChaser2D.md +72 -0
- package/docs/_posts/components/Followers/TexCoordDamper2D.md +80 -0
- package/docs/_posts/components/Geometry2D/Arc2D.md +71 -0
- package/docs/_posts/components/Geometry2D/ArcClose2D.md +91 -0
- package/docs/_posts/components/Geometry2D/Circle2D.md +55 -0
- package/docs/_posts/components/Geometry2D/Disk2D.md +75 -0
- package/docs/_posts/components/Geometry2D/Polyline2D.md +54 -0
- package/docs/_posts/components/Geometry2D/Polypoint2D.md +54 -0
- package/docs/_posts/components/Geometry2D/Rectangle2D.md +66 -0
- package/docs/_posts/components/Geometry2D/TriangleSet2D.md +66 -0
- package/docs/_posts/components/Geometry3D/Box.md +66 -0
- package/docs/_posts/components/Geometry3D/Cone.md +90 -0
- package/docs/_posts/components/Geometry3D/Cylinder.md +98 -0
- package/docs/_posts/components/Geometry3D/ElevationGrid.md +162 -0
- package/docs/_posts/components/Geometry3D/Extrusion.md +170 -0
- package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +208 -0
- package/docs/_posts/components/Geometry3D/Sphere.md +66 -0
- package/docs/_posts/components/Geospatial/GeoCoordinate.md +65 -0
- package/docs/_posts/components/Geospatial/GeoElevationGrid.md +180 -0
- package/docs/_posts/components/Geospatial/GeoLOD.md +128 -0
- package/docs/_posts/components/Geospatial/GeoLocation.md +93 -0
- package/docs/_posts/components/Geospatial/GeoMetadata.md +75 -0
- package/docs/_posts/components/Geospatial/GeoOrigin.md +69 -0
- package/docs/_posts/components/Geospatial/GeoPositionInterpolator.md +95 -0
- package/docs/_posts/components/Geospatial/GeoProximitySensor.md +109 -0
- package/docs/_posts/components/Geospatial/GeoTouchSensor.md +108 -0
- package/docs/_posts/components/Geospatial/GeoTransform.md +121 -0
- package/docs/_posts/components/Geospatial/GeoViewpoint.md +126 -0
- package/docs/_posts/components/Grouping/Group.md +75 -0
- package/docs/_posts/components/Grouping/StaticGroup.md +65 -0
- package/docs/_posts/components/Grouping/Switch.md +89 -0
- package/docs/_posts/components/Grouping/Transform.md +126 -0
- package/docs/_posts/components/HAnim/HAnimDisplacer.md +89 -0
- package/docs/_posts/components/HAnim/HAnimHumanoid.md +136 -0
- package/docs/_posts/components/HAnim/HAnimJoint.md +165 -0
- package/docs/_posts/components/HAnim/HAnimMotion.md +68 -0
- package/docs/_posts/components/HAnim/HAnimSegment.md +107 -0
- package/docs/_posts/components/HAnim/HAnimSite.md +108 -0
- package/docs/_posts/components/Interpolation/ColorInterpolator.md +73 -0
- package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +76 -0
- package/docs/_posts/components/Interpolation/CoordinateInterpolator2D.md +73 -0
- package/docs/_posts/components/Interpolation/EaseInEaseOut.md +67 -0
- package/docs/_posts/components/Interpolation/NormalInterpolator.md +68 -0
- package/docs/_posts/components/Interpolation/OrientationInterpolator.md +72 -0
- package/docs/_posts/components/Interpolation/PositionInterpolator.md +72 -0
- package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +77 -0
- package/docs/_posts/components/Interpolation/ScalarInterpolator.md +76 -0
- package/docs/_posts/components/Interpolation/SplinePositionInterpolator.md +93 -0
- package/docs/_posts/components/Interpolation/SplinePositionInterpolator2D.md +93 -0
- package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +106 -0
- package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +78 -0
- package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +78 -0
- package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +70 -0
- package/docs/_posts/components/Layering/Layer.md +67 -0
- package/docs/_posts/components/Layering/LayerSet.md +78 -0
- package/docs/_posts/components/Layering/Viewport.md +80 -0
- package/docs/_posts/components/Layout/Layout.md +107 -0
- package/docs/_posts/components/Layout/LayoutGroup.md +85 -0
- package/docs/_posts/components/Layout/LayoutLayer.md +74 -0
- package/docs/_posts/components/Layout/ScreenFontStyle.md +137 -0
- package/docs/_posts/components/Layout/ScreenGroup.md +71 -0
- package/docs/_posts/components/Lighting/DirectionalLight.md +100 -0
- package/docs/_posts/components/Lighting/EnvironmentLight.md +91 -0
- package/docs/_posts/components/Lighting/PointLight.md +103 -0
- package/docs/_posts/components/Lighting/SpotLight.md +132 -0
- package/docs/_posts/components/NURBS/Contour2D.md +57 -0
- package/docs/_posts/components/NURBS/ContourPolyline2D.md +46 -0
- package/docs/_posts/components/NURBS/CoordinateDouble.md +47 -0
- package/docs/_posts/components/NURBS/NurbsCurve.md +71 -0
- package/docs/_posts/components/NURBS/NurbsCurve2D.md +66 -0
- package/docs/_posts/components/NURBS/NurbsOrientationInterpolator.md +70 -0
- package/docs/_posts/components/NURBS/NurbsPatchSurface.md +106 -0
- package/docs/_posts/components/NURBS/NurbsPositionInterpolator.md +70 -0
- package/docs/_posts/components/NURBS/NurbsSet.md +66 -0
- package/docs/_posts/components/NURBS/NurbsSurfaceInterpolator.md +90 -0
- package/docs/_posts/components/NURBS/NurbsSweptSurface.md +69 -0
- package/docs/_posts/components/NURBS/NurbsSwungSurface.md +65 -0
- package/docs/_posts/components/NURBS/NurbsTextureCoordinate.md +77 -0
- package/docs/_posts/components/NURBS/NurbsTrimmedSurface.md +114 -0
- package/docs/_posts/components/Navigation/Billboard.md +88 -0
- package/docs/_posts/components/Navigation/Collision.md +102 -0
- package/docs/_posts/components/Navigation/LOD.md +99 -0
- package/docs/_posts/components/Navigation/NavigationInfo.md +122 -0
- package/docs/_posts/components/Navigation/OrthoViewpoint.md +117 -0
- package/docs/_posts/components/Navigation/Viewpoint.md +117 -0
- package/docs/_posts/components/Navigation/ViewpointGroup.md +80 -0
- package/docs/_posts/components/Networking/Anchor.md +111 -0
- package/docs/_posts/components/Networking/Inline.md +115 -0
- package/docs/_posts/components/Networking/LoadSensor.md +91 -0
- package/docs/_posts/components/ParticleSystems/BoundedPhysicsModel.md +54 -0
- package/docs/_posts/components/ParticleSystems/ConeEmitter.md +76 -0
- package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +72 -0
- package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +58 -0
- package/docs/_posts/components/ParticleSystems/ParticleSystem.md +177 -0
- package/docs/_posts/components/ParticleSystems/PointEmitter.md +76 -0
- package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +94 -0
- package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +90 -0
- package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +90 -0
- package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +68 -0
- package/docs/_posts/components/Picking/LinePickSensor.md +125 -0
- package/docs/_posts/components/Picking/PickableGroup.md +93 -0
- package/docs/_posts/components/Picking/PointPickSensor.md +112 -0
- package/docs/_posts/components/Picking/PrimitivePickSensor.md +114 -0
- package/docs/_posts/components/Picking/VolumePickSensor.md +107 -0
- package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +122 -0
- package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +114 -0
- package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +89 -0
- package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +87 -0
- package/docs/_posts/components/Rendering/ClipPlane.md +67 -0
- package/docs/_posts/components/Rendering/Color.md +56 -0
- package/docs/_posts/components/Rendering/ColorRGBA.md +61 -0
- package/docs/_posts/components/Rendering/Coordinate.md +45 -0
- package/docs/_posts/components/Rendering/IndexedLineSet.md +128 -0
- package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +128 -0
- package/docs/_posts/components/Rendering/IndexedTriangleSet.md +128 -0
- package/docs/_posts/components/Rendering/IndexedTriangleStripSet.md +116 -0
- package/docs/_posts/components/Rendering/LineSet.md +85 -0
- package/docs/_posts/components/Rendering/Normal.md +41 -0
- package/docs/_posts/components/Rendering/PointSet.md +76 -0
- package/docs/_posts/components/Rendering/TriangleFanSet.md +112 -0
- package/docs/_posts/components/Rendering/TriangleSet.md +108 -0
- package/docs/_posts/components/Rendering/TriangleStripSet.md +116 -0
- package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +78 -0
- package/docs/_posts/components/RigidBodyPhysics/CollidableOffset.md +75 -0
- package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +83 -0
- package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +90 -0
- package/docs/_posts/components/RigidBodyPhysics/CollisionSensor.md +65 -0
- package/docs/_posts/components/RigidBodyPhysics/CollisionSpace.md +70 -0
- package/docs/_posts/components/RigidBodyPhysics/Contact.md +117 -0
- package/docs/_posts/components/RigidBodyPhysics/DoubleAxisHingeJoint.md +162 -0
- package/docs/_posts/components/RigidBodyPhysics/MotorJoint.md +183 -0
- package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +175 -0
- package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +120 -0
- package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +108 -0
- package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +106 -0
- package/docs/_posts/components/RigidBodyPhysics/UniversalJoint.md +119 -0
- package/docs/_posts/components/Scripting/Script.md +81 -0
- package/docs/_posts/components/Shaders/ComposedShader.md +81 -0
- package/docs/_posts/components/Shaders/FloatVertexAttribute.md +65 -0
- package/docs/_posts/components/Shaders/Matrix3VertexAttribute.md +53 -0
- package/docs/_posts/components/Shaders/Matrix4VertexAttribute.md +53 -0
- package/docs/_posts/components/Shaders/PackagedShader.md +77 -0
- package/docs/_posts/components/Shaders/ProgramShader.md +71 -0
- package/docs/_posts/components/Shaders/ShaderPart.md +76 -0
- package/docs/_posts/components/Shaders/ShaderProgram.md +68 -0
- package/docs/_posts/components/Shape/AcousticProperties.md +52 -0
- package/docs/_posts/components/Shape/Appearance.md +123 -0
- package/docs/_posts/components/Shape/FillProperties.md +67 -0
- package/docs/_posts/components/Shape/LineProperties.md +63 -0
- package/docs/_posts/components/Shape/Material.md +217 -0
- package/docs/_posts/components/Shape/PhysicalMaterial.md +173 -0
- package/docs/_posts/components/Shape/PointProperties.md +84 -0
- package/docs/_posts/components/Shape/Shape.md +63 -0
- package/docs/_posts/components/Shape/TwoSidedMaterial.md +149 -0
- package/docs/_posts/components/Shape/UnlitMaterial.md +115 -0
- package/docs/_posts/components/Sound/Analyser.md +72 -0
- package/docs/_posts/components/Sound/AudioClip.md +139 -0
- package/docs/_posts/components/Sound/AudioDestination.md +52 -0
- package/docs/_posts/components/Sound/BiquadFilter.md +70 -0
- package/docs/_posts/components/Sound/BufferAudioSource.md +86 -0
- package/docs/_posts/components/Sound/ChannelMerger.md +46 -0
- package/docs/_posts/components/Sound/ChannelSelector.md +48 -0
- package/docs/_posts/components/Sound/ChannelSplitter.md +48 -0
- package/docs/_posts/components/Sound/Convolver.md +66 -0
- package/docs/_posts/components/Sound/Delay.md +66 -0
- package/docs/_posts/components/Sound/DynamicsCompressor.md +74 -0
- package/docs/_posts/components/Sound/Gain.md +62 -0
- package/docs/_posts/components/Sound/ListenerPointSource.md +62 -0
- package/docs/_posts/components/Sound/MicrophoneSource.md +54 -0
- package/docs/_posts/components/Sound/OscillatorSource.md +58 -0
- package/docs/_posts/components/Sound/PeriodicWave.md +42 -0
- package/docs/_posts/components/Sound/Sound.md +92 -0
- package/docs/_posts/components/Sound/SpatialSound.md +68 -0
- package/docs/_posts/components/Sound/StreamAudioDestination.md +52 -0
- package/docs/_posts/components/Sound/StreamAudioSource.md +54 -0
- package/docs/_posts/components/Sound/WaveShaper.md +66 -0
- package/docs/_posts/components/Text/FontStyle.md +145 -0
- package/docs/_posts/components/Text/Text.md +102 -0
- package/docs/_posts/components/TextureProjector/TextureProjector.md +52 -0
- package/docs/_posts/components/TextureProjector/TextureProjectorParallel.md +52 -0
- package/docs/_posts/components/Texturing/ImageTexture.md +134 -0
- package/docs/_posts/components/Texturing/MovieTexture.md +221 -0
- package/docs/_posts/components/Texturing/MultiTexture.md +100 -0
- package/docs/_posts/components/Texturing/MultiTextureCoordinate.md +47 -0
- package/docs/_posts/components/Texturing/MultiTextureTransform.md +47 -0
- package/docs/_posts/components/Texturing/PixelTexture.md +80 -0
- package/docs/_posts/components/Texturing/TextureCoordinate.md +52 -0
- package/docs/_posts/components/Texturing/TextureCoordinateGenerator.md +64 -0
- package/docs/_posts/components/Texturing/TextureProperties.md +137 -0
- package/docs/_posts/components/Texturing/TextureTransform.md +73 -0
- package/docs/_posts/components/Texturing3D/ComposedTexture3D.md +76 -0
- package/docs/_posts/components/Texturing3D/ImageTexture3D.md +132 -0
- package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +131 -0
- package/docs/_posts/components/Texturing3D/PixelTexture3D.md +75 -0
- package/docs/_posts/components/Texturing3D/TextureCoordinate3D.md +53 -0
- package/docs/_posts/components/Texturing3D/TextureCoordinate4D.md +52 -0
- package/docs/_posts/components/Texturing3D/TextureTransform3D.md +69 -0
- package/docs/_posts/components/Texturing3D/TextureTransformMatrix3D.md +57 -0
- package/docs/_posts/components/Time/TimeSensor.md +136 -0
- package/docs/_posts/components/VolumeRendering/BlendedVolumeStyle.md +92 -0
- package/docs/_posts/components/VolumeRendering/BoundaryEnhancementVolumeStyle.md +53 -0
- package/docs/_posts/components/VolumeRendering/CartoonVolumeStyle.md +83 -0
- package/docs/_posts/components/VolumeRendering/ComposedVolumeStyle.md +51 -0
- package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +67 -0
- package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +99 -0
- package/docs/_posts/components/VolumeRendering/OpacityMapVolumeStyle.md +51 -0
- package/docs/_posts/components/VolumeRendering/ProjectionVolumeStyle.md +48 -0
- package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +80 -0
- package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +75 -0
- package/docs/_posts/components/VolumeRendering/SilhouetteEnhancementVolumeStyle.md +63 -0
- package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +71 -0
- package/docs/_posts/components/VolumeRendering/VolumeData.md +71 -0
- package/docs/_posts/components/X_ITE/BlendMode.md +94 -0
- package/docs/_posts/custom-shaders.md +9 -4
- package/docs/_posts/dom-integration.md +1 -6
- package/docs/_posts/features.md +2 -2
- package/docs/_posts/getting-started.md +100 -57
- package/docs/_posts/glossary.md +1 -1
- package/docs/_posts/how-to-configure-your-web-server.md +1 -1
- package/docs/_posts/reference/browser-services.md +78 -18
- package/docs/_posts/reference/constants-services.md +1 -1
- package/docs/_posts/reference/ecmascript-object-and-function-definitions.md +1 -1
- package/docs/_posts/reference/field-services-and-objects.md +8 -8
- package/docs/_posts/reference/prototype-services.md +7 -7
- package/docs/_posts/reference/route-services.md +1 -1
- package/docs/_posts/reference/scene-services.md +5 -5
- package/docs/_posts/reference/script-node-authoring-interface.md +1 -1
- package/docs/_posts/report-a-bug.md +1 -1
- package/docs/_posts/setup-a-localhost-server.md +5 -1
- package/docs/_posts/supported-nodes.md +239 -238
- package/docs/_posts/tutorials/adding-backgrounds.md +3 -3
- package/docs/_posts/tutorials/adding-fog.md +2 -2
- package/docs/_posts/tutorials/adding-sound.md +19 -19
- package/docs/_posts/tutorials/animating-transforms.md +17 -17
- package/docs/_posts/tutorials/basic-nodes.md +30 -30
- package/docs/_posts/tutorials/building-a-x3d-world.md +3 -3
- package/docs/_posts/tutorials/building-elevation-grids.md +7 -7
- package/docs/_posts/tutorials/building-extruded-shapes.md +7 -7
- package/docs/_posts/tutorials/building-primitive-shapes.md +13 -13
- package/docs/_posts/tutorials/building-shapes-out-of-points-lines-and-faces.md +21 -21
- package/docs/_posts/tutorials/controlling-appearance-with-materials.md +7 -7
- package/docs/_posts/tutorials/controlling-color-on-coordinate-based-geometry.md +11 -11
- package/docs/_posts/tutorials/controlling-detail.md +4 -4
- package/docs/_posts/tutorials/controlling-how-textures-are-mapped.md +7 -7
- package/docs/_posts/tutorials/controlling-navigation.md +3 -3
- package/docs/_posts/tutorials/controlling-shading-on-coordinate-based-geometry.md +13 -13
- package/docs/_posts/tutorials/controlling-the-viewpoint.md +3 -3
- package/docs/_posts/tutorials/creating-new-node-types.md +4 -4
- package/docs/_posts/tutorials/grouping-nodes.md +13 -13
- package/docs/_posts/tutorials/hello-world.md +1 -1
- package/docs/_posts/tutorials/improving-performance.md +1 -1
- package/docs/_posts/tutorials/increasing-rendering-speed.md +1 -1
- package/docs/_posts/tutorials/introducing-animation.md +10 -10
- package/docs/_posts/tutorials/introducing-script-use.md +3 -3
- package/docs/_posts/tutorials/introducing-x3d.md +1 -1
- package/docs/_posts/tutorials/lighting-your-world.md +4 -4
- package/docs/_posts/tutorials/mapping-textures.md +7 -7
- package/docs/_posts/tutorials/naming-nodes.md +1 -1
- package/docs/_posts/tutorials/overview.md +1 -1
- package/docs/_posts/tutorials/providing-information-about-your-world.md +2 -2
- package/docs/_posts/tutorials/sensing-the-viewer.md +15 -15
- package/docs/_posts/tutorials/sensing-viewer-actions.md +10 -10
- package/docs/_posts/tutorials/transforming-shapes.md +4 -4
- package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +5 -5
- package/docs/_posts/what's-new.md +40 -2
- package/docs/_tabs/components.md +383 -0
- package/docs/_tabs/imprint.md +1 -1
- package/docs/_tabs/laboratory.md +38 -6
- package/docs/_tabs/playground.html +22 -66
- package/docs/_tabs/reference.md +2 -1
- package/docs/_tabs/tags.md +1 -1
- package/docs/_tabs/tutorials.md +1 -1
- package/docs/assets/X3D/Michroma-Regular.ttf +0 -0
- package/docs/assets/X3D/peakpx.jpg +0 -0
- package/docs/assets/X3D/teaser.x3d +55 -0
- package/docs/assets/css/style.scss +120 -11
- package/docs/assets/img/laboratory/blend-mode.png +0 -0
- package/docs/assets/img/laboratory/dicom-nrrd.png +0 -0
- package/docs/assets/img/laboratory/earthquake.png +0 -0
- package/docs/assets/img/laboratory/gltf.png +0 -0
- package/docs/assets/img/laboratory/l-system.png +0 -0
- package/docs/assets/js/autoupdate.js +25 -0
- package/docs/laboratory/gltf-sample-viewer.html +318 -0
- package/docs/laboratory/x3d-visual-blend-mode-editor.html +1 -0
- package/package.json +9 -2
- package/src/assets/components/Texturing3D.js +5 -3
- package/src/assets/shaders/Types.glsl.js +5 -5
- package/src/assets/shaders/webgl1/PBR.fs.js +1 -1
- package/src/assets/shaders/webgl1/include/Colors.glsl.js +5 -7
- package/src/assets/shaders/webgl1/include/Fragment.glsl.js +4 -0
- package/src/assets/shaders/webgl1/include/Hatch.glsl.js +1 -1
- package/src/assets/shaders/webgl1/include/Texture.glsl.js +3 -3
- package/src/assets/shaders/webgl2/include/Colors.glsl.js +5 -7
- package/src/assets/shaders/webgl2/include/Hatch.glsl.js +1 -1
- package/src/assets/shaders/webgl2/include/Particle.glsl.js +2 -2
- package/src/assets/shaders/webgl2/include/Texture.glsl.js +2 -2
- package/src/bookmarks.js +12 -8
- package/src/examples.js +3 -0
- package/src/lib/jquery.js +20 -0
- package/src/lib/libgif/libgif.js +1004 -0
- package/src/lib/libtess.js +1 -0
- package/src/lib/nurbs/extras/sample.js +5 -7
- package/src/standard/Math/Algorithms/Bezier.js +175 -33
- package/src/standard/Math/Geometry/Box2.js +15 -55
- package/src/standard/Math/Geometry/Box3.js +19 -66
- package/src/standard/Math/Geometry/Triangle3.js +14 -79
- package/src/standard/Math/Numbers/Color3.js +4 -0
- package/src/standard/Math/Numbers/Color4.js +4 -0
- package/src/standard/Math/Numbers/Matrix3.js +11 -3
- package/src/standard/Math/Numbers/Matrix4.js +9 -6
- package/src/standard/Math/Numbers/Rotation4.js +72 -65
- package/src/tests.js +3 -0
- package/src/x_ite/Base/X3DArrayField.js +0 -2
- package/src/x_ite/Base/X3DInfoArray.js +2 -2
- package/src/x_ite/Base/X3DObjectArrayField.js +19 -0
- package/src/x_ite/Base/X3DTypedArrayField.js +149 -0
- package/src/x_ite/Browser/Core/BrowserOptions.js +108 -64
- package/src/x_ite/Browser/Core/Context.js +1 -1
- package/src/x_ite/Browser/Core/ContextMenu.js +2 -2
- package/src/x_ite/Browser/Core/Notification.js +1 -1
- package/src/x_ite/Browser/Core/RenderingProperties.js +4 -0
- package/src/x_ite/Browser/Core/X3DCoreContext.js +99 -54
- package/src/x_ite/Browser/Navigation/ExamineViewer.js +4 -14
- package/src/x_ite/Browser/Navigation/LookAtViewer.js +3 -13
- package/src/x_ite/Browser/Navigation/PlaneViewer.js +3 -12
- package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +25 -22
- package/src/x_ite/Browser/Navigation/X3DViewer.js +12 -3
- package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +2 -2
- package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +19 -15
- package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +30 -10
- package/src/x_ite/Browser/Shaders/X3DShadersContext.js +1 -1
- package/src/x_ite/Browser/Shape/X3DShapeContext.js +30 -3
- package/src/x_ite/Browser/Text/PolygonText.js +137 -134
- package/src/x_ite/Browser/Texturing/GifMedia.js +113 -0
- package/src/x_ite/Browser/Texturing3D/DICOMParser.js +1 -6
- package/src/x_ite/Browser/Texturing3D/NRRDParser.js +81 -310
- package/src/x_ite/Browser/VERSION.js +1 -1
- package/src/x_ite/Browser/X3DBrowser.js +162 -122
- package/src/x_ite/Browser/X3DBrowserContext.js +7 -5
- package/src/x_ite/Components/Core/WorldInfo.js +3 -3
- package/src/x_ite/Components/Core/X3DNode.js +7 -7
- package/src/x_ite/Components/Core/X3DPrototypeInstance.js +1 -1
- package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +2 -3
- package/src/x_ite/Components/Geometry3D/Extrusion.js +27 -23
- package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +10 -19
- package/src/x_ite/Components/Grouping/X3DBoundedObject.js +1 -3
- package/src/x_ite/Components/HAnim/HAnimHumanoid.js +39 -15
- package/src/x_ite/Components/HAnim/HAnimJoint.js +6 -9
- package/src/x_ite/Components/Layering/X3DLayerNode.js +21 -2
- package/src/x_ite/Components/Layout/Layout.js +4 -2
- package/src/x_ite/Components/Layout/ScreenFontStyle.js +6 -0
- package/src/x_ite/Components/Lighting/DirectionalLight.js +4 -11
- package/src/x_ite/Components/Lighting/EnvironmentLight.js +1 -1
- package/src/x_ite/Components/Lighting/PointLight.js +4 -11
- package/src/x_ite/Components/Lighting/SpotLight.js +4 -11
- package/src/x_ite/Components/Lighting/X3DLightNode.js +7 -9
- package/src/x_ite/Components/Navigation/OrthoViewpoint.js +2 -2
- package/src/x_ite/Components/Navigation/X3DViewpointNode.js +14 -6
- package/src/x_ite/Components/Networking/Inline.js +48 -59
- package/src/x_ite/Components/Networking/X3DUrlObject.js +1 -1
- package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +2 -2
- package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +7 -13
- package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +4 -2
- package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +4 -2
- package/src/x_ite/Components/Scripting/Script.js +2 -2
- package/src/x_ite/Components/Shaders/ShaderPart.js +1 -1
- package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +1 -3
- package/src/x_ite/Components/Shape/Appearance.js +27 -1
- package/src/x_ite/Components/Shape/FillProperties.js +1 -0
- package/src/x_ite/Components/Shape/LineProperties.js +15 -9
- package/src/x_ite/Components/Shape/Material.js +33 -22
- package/src/x_ite/Components/Shape/PhysicalMaterial.js +22 -15
- package/src/x_ite/Components/Shape/PointProperties.js +23 -7
- package/src/x_ite/Components/Shape/UnlitMaterial.js +3 -2
- package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +25 -19
- package/src/x_ite/Components/Sound/AudioClip.js +5 -5
- package/src/x_ite/Components/Sound/X3DSoundSourceNode.js +26 -34
- package/src/x_ite/Components/Text/X3DFontStyleNode.js +1 -1
- package/src/x_ite/Components/TextureProjector/TextureProjector.js +4 -12
- package/src/x_ite/Components/TextureProjector/TextureProjectorParallel.js +6 -14
- package/src/x_ite/Components/TextureProjector/X3DTextureProjectorNode.js +7 -7
- package/src/x_ite/Components/Texturing/ImageTexture.js +15 -10
- package/src/x_ite/Components/Texturing/MovieTexture.js +51 -11
- package/src/x_ite/Components/Texturing3D/ImageTexture3D.js +2 -2
- package/src/x_ite/Components/Texturing3D/ImageTextureAtlas.js +230 -0
- package/src/x_ite/Components/Time/X3DTimeDependentNode.js +12 -10
- package/src/x_ite/Execution/BindableList.js +35 -37
- package/src/x_ite/Execution/BindableStack.js +25 -7
- package/src/x_ite/Execution/X3DScene.js +2 -2
- package/src/x_ite/Execution/X3DWorld.js +1 -1
- package/src/x_ite/Fields/SFRotation.js +2 -1
- package/src/x_ite/Fields/SFString.js +1 -1
- package/src/x_ite/InputOutput/FileLoader.js +105 -236
- package/src/x_ite/InputOutput/Generator.js +12 -8
- package/src/x_ite/Parser/Expressions.js +85 -0
- package/src/x_ite/Parser/GLB2Parser.js +147 -0
- package/src/x_ite/Parser/GLTF2Parser.js +2221 -0
- package/src/x_ite/Parser/GoldenGate.js +64 -13
- package/src/x_ite/Parser/JSONParser.js +7 -36
- package/src/x_ite/Parser/OBJParser.js +1076 -0
- package/src/x_ite/Parser/STLAParser.js +376 -0
- package/src/x_ite/Parser/STLBParser.js +156 -0
- package/src/x_ite/Parser/SVGParser.js +2476 -0
- package/src/x_ite/Parser/VRMLParser.js +127 -183
- package/src/x_ite/Parser/X3DOptimizer.js +191 -0
- package/src/x_ite/Parser/X3DParser.js +34 -0
- package/src/x_ite/Parser/XMLParser.js +11 -109
- package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +2 -2
- package/src/x_ite/Prototype/X3DProtoDeclaration.js +3 -3
- package/src/x_ite/Rendering/DependentRenderer.js +1 -1
- package/src/x_ite/Rendering/MultiSampleFrameBuffer.js +150 -0
- package/src/x_ite/Rendering/TextureBuffer.js +3 -5
- package/src/x_ite/Rendering/X3DRenderObject.js +2 -7
- package/src/x_ite/X3D.js +1 -0
- package/src/x_ite/X3DCanvas.js +10 -0
- package/src/x_ite.html +39 -17
- package/webpack.config.js +1 -0
- package/x_ite.min.html +38 -17
- package/src/standard/Networking/BinaryTransport.js +0 -116
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: DoubleAxisHingeJoint
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-RigidBodyPhysics
|
|
5
|
+
categories: [components, RigidBodyPhysics]
|
|
6
|
+
tags: [DoubleAxisHingeJoint, RigidBodyPhysics]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
DoubleAxisHingeJoint has two independent axes located around a common anchor point. axis1 has limits and a motor, axis 2 only has a motor Contains two RigidBody nodes (containerField values body1, body2).
|
|
17
|
+
|
|
18
|
+
The DoubleAxisHingeJoint node belongs to the **RigidBodyPhysics** component and its default container field is *joints.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DRigidJointNode
|
|
25
|
+
+ DoubleAxisHingeJoint
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### MFString [in, out] **forceOutput** "NONE" <small>["ALL","NONE",...]</small>
|
|
35
|
+
|
|
36
|
+
*forceOutput* controls which output fields are generated for the next frame. Values are ALL, NONE, or exact names of output fields updated at start of next frame.
|
|
37
|
+
|
|
38
|
+
### SFVec3f [in, out] **anchorPoint** 0 0 0
|
|
39
|
+
|
|
40
|
+
*anchorPoint* is joint center, specified in world coordinates.
|
|
41
|
+
|
|
42
|
+
### SFVec3f [in, out] **axis1** 0 0 0
|
|
43
|
+
|
|
44
|
+
*axis1* defines axis vector of joint connection to body1.
|
|
45
|
+
|
|
46
|
+
#### Hint
|
|
47
|
+
|
|
48
|
+
- 0 0 0 means motor disabled.
|
|
49
|
+
|
|
50
|
+
### SFVec3f [in, out] **axis2** 0 0 0
|
|
51
|
+
|
|
52
|
+
*axis2* defines axis vector of joint connection to body2.
|
|
53
|
+
|
|
54
|
+
#### Hint
|
|
55
|
+
|
|
56
|
+
- 0 0 0 means motor disabled.
|
|
57
|
+
|
|
58
|
+
### SFFloat [in, out] **minAngle1** -π <small>π [-π,π] <span class="red">not supported</span>
|
|
59
|
+
</small>
|
|
60
|
+
|
|
61
|
+
MinAngle1 is minimum rotation angle for hinge.
|
|
62
|
+
|
|
63
|
+
### SFFloat [in, out] **maxAngle1** π <small>[-π,π] <span class="red">not supported</span>
|
|
64
|
+
</small>
|
|
65
|
+
|
|
66
|
+
MaxAngle1 is maximum rotation angle for hinge.
|
|
67
|
+
|
|
68
|
+
### SFFloat [in, out] **desiredAngularVelocity1** 0 <small>(-∞,∞) <span class="red">not supported</span>
|
|
69
|
+
</small>
|
|
70
|
+
|
|
71
|
+
DesiredAngularVelocity1 is goal rotation rate for hinge connection to body1.
|
|
72
|
+
|
|
73
|
+
### SFFloat [in, out] **desiredAngularVelocity2** 0 <small>(-∞,∞) <span class="red">not supported</span>
|
|
74
|
+
</small>
|
|
75
|
+
|
|
76
|
+
DesiredAngularVelocity2 is goal rotation rate for hinge connection to body2.
|
|
77
|
+
|
|
78
|
+
### SFFloat [in, out] **maxTorque1** 0 <small>(-∞,∞) <span class="red">not supported</span></small>
|
|
79
|
+
|
|
80
|
+
*maxTorque1* is maximum rotational torque applied by corresponding motor axis to achieve desiredAngularVelocity1.
|
|
81
|
+
|
|
82
|
+
### SFFloat [in, out] **maxTorque2** 0 <small>(-∞,∞) <span class="red">not supported</span></small>
|
|
83
|
+
|
|
84
|
+
*maxTorque2* is maximum rotational torque applied by corresponding motor axis to achieve desiredAngularVelocity2.
|
|
85
|
+
|
|
86
|
+
### SFFloat [in, out] **stopBounce1** 0 <small>[0,1]<span class="red"> not supported</span></small>
|
|
87
|
+
|
|
88
|
+
Input/Output field stopBounce1.
|
|
89
|
+
|
|
90
|
+
### SFFloat [in, out] **stopConstantForceMix1** 0.001 <small>[0,∞)<span class="red"> not supported</span></small>
|
|
91
|
+
|
|
92
|
+
Input/Output field stopConstantForceMix1.
|
|
93
|
+
|
|
94
|
+
### SFFloat [in, out] **stopErrorCorrection1** 0.8 <small>[0,1]<span class="red"> not supported</span></small>
|
|
95
|
+
|
|
96
|
+
Input/Output field stopErrorCorrection1.
|
|
97
|
+
|
|
98
|
+
### SFFloat [in, out] **suspensionForce** 0 <small>[0,∞)<span class="red"> not supported</span></small>
|
|
99
|
+
|
|
100
|
+
*suspensionForce* describes how quickly the system resolves intersection errors due to floating-point inaccuracies.
|
|
101
|
+
|
|
102
|
+
#### Hints
|
|
103
|
+
|
|
104
|
+
- Use with stop1ConstantForceMix to improve softness and numerical stability. 0 means no stop adjustment, 1 means springier stop response.
|
|
105
|
+
|
|
106
|
+
### SFFloat [in, out] **suspensionErrorCorrection** 0.8 <small>[0,1]<span class="red"> not supported</span></small>
|
|
107
|
+
|
|
108
|
+
*suspensionErrorCorrection* describes how quickly the system resolves intersection errors due to floating-point inaccuracies.
|
|
109
|
+
|
|
110
|
+
#### Hints
|
|
111
|
+
|
|
112
|
+
- Use with stop1ConstantForceMix to improve softness and numerical stability. 0 means no stop adjustment, 1 means springier stop response.
|
|
113
|
+
|
|
114
|
+
### SFVec3f [out] **body1AnchorPoint**
|
|
115
|
+
|
|
116
|
+
Output field body1AnchorPoint.
|
|
117
|
+
|
|
118
|
+
### SFVec3f [out] **body2AnchorPoint**
|
|
119
|
+
|
|
120
|
+
Output field body2AnchorPoint.
|
|
121
|
+
|
|
122
|
+
### SFVec3f [out] **body1Axis**
|
|
123
|
+
|
|
124
|
+
Output field body1Axis.
|
|
125
|
+
|
|
126
|
+
### SFVec3f [out] **body2Axis**
|
|
127
|
+
|
|
128
|
+
Output field body2Axis.
|
|
129
|
+
|
|
130
|
+
### SFFloat [out] **hinge1Angle**
|
|
131
|
+
|
|
132
|
+
Output field hinge1Angle.
|
|
133
|
+
|
|
134
|
+
### SFFloat [out] **hinge2Angle**
|
|
135
|
+
|
|
136
|
+
Output field hinge2Angle.
|
|
137
|
+
|
|
138
|
+
### SFFloat [out] **hinge1AngleRate**
|
|
139
|
+
|
|
140
|
+
Output field hinge1AngleRate.
|
|
141
|
+
|
|
142
|
+
### SFFloat [out] **hinge2AngleRate**
|
|
143
|
+
|
|
144
|
+
Output field hinge2AngleRate.
|
|
145
|
+
|
|
146
|
+
### SFNode [in, out] **body1** NULL <small>[RigidBody]</small>
|
|
147
|
+
|
|
148
|
+
Input/Output field body1.
|
|
149
|
+
|
|
150
|
+
### SFNode [in, out] **body2** NULL <small>[RigidBody]</small>
|
|
151
|
+
|
|
152
|
+
Input/Output field body2.
|
|
153
|
+
|
|
154
|
+
## Description
|
|
155
|
+
|
|
156
|
+
### Hint
|
|
157
|
+
|
|
158
|
+
- RigidBodyPhysics component, level 2.
|
|
159
|
+
|
|
160
|
+
## External Links
|
|
161
|
+
|
|
162
|
+
- [X3D Specification of DoubleAxisHingeJoint](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rigidBodyPhysics.html#DoubleAxisHingeJoint){:target="_blank"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: MotorJoint
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-RigidBodyPhysics
|
|
5
|
+
categories: [components, RigidBodyPhysics]
|
|
6
|
+
tags: [MotorJoint, RigidBodyPhysics]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
MotorJoint drives relative angular velocities between body1 and body2 within a common reference frame. Contains two RigidBody nodes (containerField values body1, body2).
|
|
17
|
+
|
|
18
|
+
The MotorJoint node belongs to the **RigidBodyPhysics** component and its default container field is *joints.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DRigidJointNode
|
|
25
|
+
+ MotorJoint
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### MFString [in, out] **forceOutput** "NONE" <small>["ALL","NONE",...]</small>
|
|
35
|
+
|
|
36
|
+
*forceOutput* controls which output fields are generated for the next frame. Values are ALL, NONE, or exact names of output fields updated at start of next frame.
|
|
37
|
+
|
|
38
|
+
### SFInt32 [in, out] **enabledAxes** 1 <small>[0,3]</small>
|
|
39
|
+
|
|
40
|
+
*enabledAxes* indicates which motor axes are active. (0) none, (1) axis 1, (2) axes 1 and 2, (3) all three axes.
|
|
41
|
+
|
|
42
|
+
### SFVec3f [in, out] **motor1Axis** 0 0 0
|
|
43
|
+
|
|
44
|
+
*motor1Axis* defines axis vector of corresponding motor axis.
|
|
45
|
+
|
|
46
|
+
#### Hint
|
|
47
|
+
|
|
48
|
+
- 0 0 0 means motor disabled.
|
|
49
|
+
|
|
50
|
+
### SFVec3f [in, out] **motor2Axis** 0 0 0
|
|
51
|
+
|
|
52
|
+
*motor2Axis* defines axis vector of corresponding motor axis.
|
|
53
|
+
|
|
54
|
+
#### Hint
|
|
55
|
+
|
|
56
|
+
- 0 0 0 means motor disabled.
|
|
57
|
+
|
|
58
|
+
### SFVec3f [in, out] **motor3Axis** 0 0 0
|
|
59
|
+
|
|
60
|
+
*motor3Axis* defines axis vector of corresponding motor axis.
|
|
61
|
+
|
|
62
|
+
#### Hint
|
|
63
|
+
|
|
64
|
+
- 0 0 0 means motor disabled.
|
|
65
|
+
|
|
66
|
+
### SFFloat [in, out] **axis1Angle** 0 <small>[-π,π]</small>
|
|
67
|
+
|
|
68
|
+
*axis1Angle* (radians) is rotation angle for corresponding motor axis when in user-calculated mode.
|
|
69
|
+
|
|
70
|
+
### SFFloat [in, out] **axis2Angle** 0 <small>[-π,π]</small>
|
|
71
|
+
|
|
72
|
+
*axis2Angle* (radians) is rotation angle for corresponding motor axis when in user-calculated mode.
|
|
73
|
+
|
|
74
|
+
### SFFloat [in, out] **axis3Angle** 0 <small>[-π,π]</small>
|
|
75
|
+
|
|
76
|
+
*axis3Angle* (radians) is rotation angle for corresponding motor axis when in user-calculated mode.
|
|
77
|
+
|
|
78
|
+
### SFFloat [in, out] **axis1Torque** 0 <small>(-∞,∞)</small>
|
|
79
|
+
|
|
80
|
+
*axis1Torque* is rotational torque applied by corresponding motor axis when in user-calculated mode.
|
|
81
|
+
|
|
82
|
+
### SFFloat [in, out] **axis2Torque** 0 <small>(-∞,∞)</small>
|
|
83
|
+
|
|
84
|
+
*axis2Torque* is rotational torque applied by corresponding motor axis when in user-calculated mode.
|
|
85
|
+
|
|
86
|
+
### SFFloat [in, out] **axis3Torque** 0 <small>(-∞,∞)</small>
|
|
87
|
+
|
|
88
|
+
*axis3Torque* is rotational torque applied by corresponding motor axis when in user-calculated mode.
|
|
89
|
+
|
|
90
|
+
### SFFloat [in, out] **stop1Bounce** 0 <small>[0,1]</small>
|
|
91
|
+
|
|
92
|
+
*stop1Bounce* is velocity factor for bounce back once stop point is reached.
|
|
93
|
+
|
|
94
|
+
#### Hint
|
|
95
|
+
|
|
96
|
+
- 0 means no bounce, 1 means return velocity matches.
|
|
97
|
+
|
|
98
|
+
### SFFloat [in, out] **stop2Bounce** 0 <small>[0,1]</small>
|
|
99
|
+
|
|
100
|
+
*stop2Bounce* is velocity factor for bounce back once stop point is reached.
|
|
101
|
+
|
|
102
|
+
#### Hint
|
|
103
|
+
|
|
104
|
+
- 0 means no bounce, 1 means return velocity matches.
|
|
105
|
+
|
|
106
|
+
### SFFloat [in, out] **stop3Bounce** 0 <small>[0,1]</small>
|
|
107
|
+
|
|
108
|
+
*stop3Bounce* is velocity factor for bounce back once stop point is reached.
|
|
109
|
+
|
|
110
|
+
#### Hint
|
|
111
|
+
|
|
112
|
+
- 0 means no bounce, 1 means return velocity matches.
|
|
113
|
+
|
|
114
|
+
### SFFloat [in, out] **stop1ErrorCorrection** 0.8 <small>[0,1]</small>
|
|
115
|
+
|
|
116
|
+
*stop1ErrorCorrection* is fraction of error correction performed during time step once stop point is reached.
|
|
117
|
+
|
|
118
|
+
#### Hint
|
|
119
|
+
|
|
120
|
+
- 0 means no error correction, 1 means all error corrected in single step.
|
|
121
|
+
|
|
122
|
+
### SFFloat [in, out] **stop2ErrorCorrection** 0.8 <small>[0,1]</small>
|
|
123
|
+
|
|
124
|
+
*stop2ErrorCorrection* is fraction of error correction performed during time step once stop point is reached.
|
|
125
|
+
|
|
126
|
+
#### Hint
|
|
127
|
+
|
|
128
|
+
- 0 means no error correction, 1 means all error corrected in single step.
|
|
129
|
+
|
|
130
|
+
### SFFloat [in, out] **stop3ErrorCorrection** 0.8 <small>[0,1]</small>
|
|
131
|
+
|
|
132
|
+
*stop3ErrorCorrection* is fraction of error correction performed during time step once stop point is reached.
|
|
133
|
+
|
|
134
|
+
#### Hint
|
|
135
|
+
|
|
136
|
+
- 0 means no error correction, 1 means all error corrected in single step.
|
|
137
|
+
|
|
138
|
+
### SFFloat [out] **motor1Angle**
|
|
139
|
+
|
|
140
|
+
*motor1Angle* provides calculated angle of rotation (radians) for this motor joint from last frame.
|
|
141
|
+
|
|
142
|
+
### SFFloat [out] **motor2Angle**
|
|
143
|
+
|
|
144
|
+
*motor2Angle* provides calculated angle of rotation (radians) for this motor joint from last frame.
|
|
145
|
+
|
|
146
|
+
### SFFloat [out] **motor3Angle**
|
|
147
|
+
|
|
148
|
+
*motor3Angle* provides calculated angle of rotation (radians) for this motor joint from last frame.
|
|
149
|
+
|
|
150
|
+
### SFFloat [out] **motor1AngleRate**
|
|
151
|
+
|
|
152
|
+
*motor1AngleRate* provides calculated anglular rotation rate (radians/second) for this motor joint from last frame.
|
|
153
|
+
|
|
154
|
+
### SFFloat [out] **motor2AngleRate**
|
|
155
|
+
|
|
156
|
+
*motor2AngleRate* provides calculated anglular rotation rate (radians/second) for this motor joint from last frame.
|
|
157
|
+
|
|
158
|
+
### SFFloat [out] **motor3AngleRate**
|
|
159
|
+
|
|
160
|
+
*motor3AngleRate* provides calculated anglular rotation rate (radians/second) for this motor joint from last frame.
|
|
161
|
+
|
|
162
|
+
### SFBool [ ] **autoCalc** FALSE
|
|
163
|
+
|
|
164
|
+
*autoCalc* controls whether user manually provides individual angle rotations each frame (false) or if angle values are automatically calculated by motor implementations (true).
|
|
165
|
+
|
|
166
|
+
### SFNode [in, out] **body1** NULL <small>[RigidBody]</small>
|
|
167
|
+
|
|
168
|
+
Input/Output field body1.
|
|
169
|
+
|
|
170
|
+
### SFNode [in, out] **body2** NULL <small>[RigidBody]</small>
|
|
171
|
+
|
|
172
|
+
Input/Output field body2.
|
|
173
|
+
|
|
174
|
+
## Description
|
|
175
|
+
|
|
176
|
+
### Hints
|
|
177
|
+
|
|
178
|
+
- Useful in combination with BallJoint.
|
|
179
|
+
- RigidBodyPhysics component, level 2.
|
|
180
|
+
|
|
181
|
+
## External Links
|
|
182
|
+
|
|
183
|
+
- [X3D Specification of MotorJoint](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rigidBodyPhysics.html#MotorJoint){:target="_blank"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: RigidBody
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-RigidBodyPhysics
|
|
5
|
+
categories: [components, RigidBodyPhysics]
|
|
6
|
+
tags: [RigidBody, RigidBodyPhysics]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
RigidBody describes a collection of shapes with a mass distribution that is affected by the physics model. Contains a Sphere, Box, or Cone (containerField='massDensityModel') and multiple CollidableOffset or CollidableShape nodes (containerField='geometry') for animating collidable geometry.
|
|
17
|
+
|
|
18
|
+
The RigidBody node belongs to the **RigidBodyPhysics** component and its default container field is *bodies.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ RigidBody
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Fields
|
|
28
|
+
|
|
29
|
+
### SFNode [in, out] **metadata** NULL
|
|
30
|
+
|
|
31
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
32
|
+
|
|
33
|
+
### SFBool [in, out] **enabled** TRUE
|
|
34
|
+
|
|
35
|
+
Enables/disables node operation.
|
|
36
|
+
|
|
37
|
+
### SFBool [in, out] **fixed** FALSE
|
|
38
|
+
|
|
39
|
+
*fixed* indicates whether body is able to move.
|
|
40
|
+
|
|
41
|
+
#### Hint
|
|
42
|
+
|
|
43
|
+
- Fixed is useful for indicating objects that do not move: walls, ground, etc.
|
|
44
|
+
|
|
45
|
+
### SFVec3f [in, out] **position** 0 0 0
|
|
46
|
+
|
|
47
|
+
*position* sets body location in world space, then reports physics updates.
|
|
48
|
+
|
|
49
|
+
### SFRotation [in, out] **orientation** 0 0 1 0
|
|
50
|
+
|
|
51
|
+
*orientation* sets body direction in world space, then reports physics updates.
|
|
52
|
+
|
|
53
|
+
### SFVec3f [in, out] **linearVelocity** 0 0 0
|
|
54
|
+
|
|
55
|
+
*linearVelocity* sets constant velocity value to object every frame, and reports updates by physics model.
|
|
56
|
+
|
|
57
|
+
#### Hint
|
|
58
|
+
|
|
59
|
+
- Initial value only applied during first frame if forces applied.
|
|
60
|
+
|
|
61
|
+
#### Warning
|
|
62
|
+
|
|
63
|
+
- Instantaneous velocity changes may lead to numerical instability.
|
|
64
|
+
|
|
65
|
+
### SFVec3f [in, out] **angularVelocity** 0 0 0 <small>(-∞,∞)</small>
|
|
66
|
+
|
|
67
|
+
*angularVelocity* sets constant velocity value to object every frame, and reports updates by physics model.
|
|
68
|
+
|
|
69
|
+
#### Hint
|
|
70
|
+
|
|
71
|
+
- Initial value only applied during first frame if forces applied.
|
|
72
|
+
|
|
73
|
+
#### Warning
|
|
74
|
+
|
|
75
|
+
- Instantaneous velocity changes may lead to numerical instability.
|
|
76
|
+
|
|
77
|
+
### SFBool [in, out] **useFiniteRotation** FALSE
|
|
78
|
+
|
|
79
|
+
*useFiniteRotation* enables/disables higher-resolution, higher-cost computational method for calculating rotations.
|
|
80
|
+
|
|
81
|
+
### SFVec3f [in, out] **finiteRotationAxis** 0 0 0 <small>[-1,1]</small>
|
|
82
|
+
|
|
83
|
+
*finiteRotationAxis* specifies vector around which the object rotates.
|
|
84
|
+
|
|
85
|
+
### SFBool [in, out] **autoDamp** FALSE
|
|
86
|
+
|
|
87
|
+
*autoDamp* enables/disables angularDampingFactor and linearDampingFactor.
|
|
88
|
+
|
|
89
|
+
### SFFloat [in, out] **linearDampingFactor** 0.001
|
|
90
|
+
|
|
91
|
+
*linearDampingFactor* automatically damps a portion of body motion over time.
|
|
92
|
+
|
|
93
|
+
### SFFloat [in, out] **angularDampingFactor** 0.001 <small>[0,1]</small>
|
|
94
|
+
|
|
95
|
+
*angularDampingFactor* automatically damps a portion of body motion over time.
|
|
96
|
+
|
|
97
|
+
### SFFloat [in, out] **mass** 1
|
|
98
|
+
|
|
99
|
+
*mass* of the body in kilograms.
|
|
100
|
+
|
|
101
|
+
#### Warning
|
|
102
|
+
|
|
103
|
+
- Mass must be greater than 0.
|
|
104
|
+
|
|
105
|
+
### SFMatrix3f [in, out] **inertia** 1 0 0 0 1 0 0 0 1 <small>1 0 0</small>
|
|
106
|
+
|
|
107
|
+
*inertia* matrix defines a 3x2 inertia tensor matrix.
|
|
108
|
+
|
|
109
|
+
#### Warning
|
|
110
|
+
|
|
111
|
+
- Only the first 6 values are used.
|
|
112
|
+
|
|
113
|
+
### SFVec3f [in, out] **centerOfMass** 0 0 0 <small>(-∞,∞)</small>
|
|
114
|
+
|
|
115
|
+
*centerOfMass* defines local center of mass for physics calculations.
|
|
116
|
+
|
|
117
|
+
### SFNode [in, out] **massDensityModel** NULL <small class="small"><span class="red">not supported</span></small>
|
|
118
|
+
|
|
119
|
+
Input/Output field massDensityModel.
|
|
120
|
+
|
|
121
|
+
### SFBool [in, out] **useGlobalGravity** TRUE
|
|
122
|
+
|
|
123
|
+
*useGlobalGravity* indicates whether this particular body is influenced by parent RigidBodyCollection's gravity setting.
|
|
124
|
+
|
|
125
|
+
#### Hint
|
|
126
|
+
|
|
127
|
+
- Contained sub-bodies are not affected by this setting.
|
|
128
|
+
|
|
129
|
+
### MFVec3f [in, out] **forces** [ ]
|
|
130
|
+
|
|
131
|
+
*forces* defines linear force values applied to the object every frame.
|
|
132
|
+
|
|
133
|
+
### MFVec3f [in, out] **torques** [ ]
|
|
134
|
+
|
|
135
|
+
*torques* defines rotational force values applied to the object every frame.
|
|
136
|
+
|
|
137
|
+
### SFBool [in, out] **autoDisable** FALSE
|
|
138
|
+
|
|
139
|
+
*autoDisable* toggles operation of disableAngularSpeed, disableLinearSpeed, disableTime.
|
|
140
|
+
|
|
141
|
+
### SFFloat [in, out] **disableTime** 0 <small>[0,∞) <span class="red">not supported</span></small>
|
|
142
|
+
|
|
143
|
+
*disableTime* defines interval when body becomes at rest and not part of rigid body calculations, reducing numeric instabilities.
|
|
144
|
+
|
|
145
|
+
#### Hint
|
|
146
|
+
|
|
147
|
+
- Only activated if autoDisable='true'
|
|
148
|
+
|
|
149
|
+
### SFFloat [in, out] **disableLinearSpeed** 0 <small>[0,∞)</small>
|
|
150
|
+
|
|
151
|
+
*disableLinearSpeed* defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculation, reducing numeric instabilitiess.
|
|
152
|
+
|
|
153
|
+
#### Hint
|
|
154
|
+
|
|
155
|
+
- Only activated if autoDisable='true'
|
|
156
|
+
|
|
157
|
+
### SFFloat [in, out] **disableAngularSpeed** 0 <small>[0,∞)</small>
|
|
158
|
+
|
|
159
|
+
*disableAngularSpeed* defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculations, reducing numeric instabilities.
|
|
160
|
+
|
|
161
|
+
#### Hint
|
|
162
|
+
|
|
163
|
+
- Only activated if autoDisable='true'
|
|
164
|
+
|
|
165
|
+
### MFNode [in, out] **geometry** [ ] <small>[X3DNBodyCollidableNode]</small>
|
|
166
|
+
|
|
167
|
+
Input/Output field geometry.
|
|
168
|
+
|
|
169
|
+
## Example
|
|
170
|
+
|
|
171
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/RigidBodyPhysics/RigidBody/RigidBody.x3d"></x3d-canvas>
|
|
172
|
+
|
|
173
|
+
## External Links
|
|
174
|
+
|
|
175
|
+
- [X3D Specification of RigidBody](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rigidBodyPhysics.html#RigidBody){:target="_blank"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: RigidBodyCollection
|
|
3
|
+
date: 2022-01-07
|
|
4
|
+
nav: components-RigidBodyPhysics
|
|
5
|
+
categories: [components, RigidBodyPhysics]
|
|
6
|
+
tags: [RigidBodyCollection, RigidBodyPhysics]
|
|
7
|
+
---
|
|
8
|
+
<style>
|
|
9
|
+
.post h3 {
|
|
10
|
+
word-spacing: 0.2em;
|
|
11
|
+
}
|
|
12
|
+
</style>
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
RigidBodyCollection represents a system of bodies that interact within a single physics model.
|
|
17
|
+
|
|
18
|
+
The RigidBodyCollection node belongs to the **RigidBodyPhysics** component and its default container field is *children.* It is available since X3D version 3.2 or later.
|
|
19
|
+
|
|
20
|
+
## Hierarchy
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
+ X3DNode
|
|
24
|
+
+ X3DChildNode
|
|
25
|
+
+ RigidBodyCollection
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Fields
|
|
29
|
+
|
|
30
|
+
### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
|
|
31
|
+
|
|
32
|
+
Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
|
|
33
|
+
|
|
34
|
+
### SFBool [in, out] **enabled** TRUE
|
|
35
|
+
|
|
36
|
+
Enables/disables node operation.
|
|
37
|
+
|
|
38
|
+
### MFNode [in] **set_contacts**<span class="red"><small class="small"> not supported</small></span>
|
|
39
|
+
|
|
40
|
+
*set_contacts* input field for Contact nodes provides per-frame information about contacts between bodies.
|
|
41
|
+
|
|
42
|
+
### SFVec3f [in, out] **gravity** 0 -9.8 0
|
|
43
|
+
|
|
44
|
+
*gravity* indicates direction and strength of local gravity vector for this collection of bodies (units m/sec^2).
|
|
45
|
+
|
|
46
|
+
### SFBool [in, out] **preferAccuracy** FALSE
|
|
47
|
+
|
|
48
|
+
*preferAccuracy* provides hint for performance preference: higher accuracy or faster computational speed.
|
|
49
|
+
|
|
50
|
+
### SFFloat [in, out] **errorCorrection** 0.8 <small>[0,1] <span class="red">not supported</span></small>
|
|
51
|
+
|
|
52
|
+
*errorCorrection* describes how quickly intersection errors due to floating-point inaccuracies are resolved (0=no correction, 1=all corrected in single step).
|
|
53
|
+
|
|
54
|
+
### SFInt32 [in, out] **iterations** 10 <small>[0,∞)</small>
|
|
55
|
+
|
|
56
|
+
*iterations* controls number of iterations performed over collectioned joints and bodies during each evaluation.
|
|
57
|
+
|
|
58
|
+
### SFFloat [in, out] **constantForceMix** 0.0001 <small>[0,∞) <span class="red">not supported</span></small>
|
|
59
|
+
|
|
60
|
+
*constantForceMix* modifies damping calculations by violating normal constraints while applying small, constant forces in those calculations.
|
|
61
|
+
|
|
62
|
+
#### Hints
|
|
63
|
+
|
|
64
|
+
- This allows joints and bodies to be a fraction springy, and helps to eliminate numerical instability. Spring-driven or spongy connections can be emulated by combined use of errorCorrection and constantForceMix.
|
|
65
|
+
|
|
66
|
+
### SFFloat [in, out] **maxCorrectionSpeed** -1 <small>[0,∞) or -1 <span class="red">not supported</span></small>
|
|
67
|
+
|
|
68
|
+
Or -1, maxCorrectionSpeed .
|
|
69
|
+
|
|
70
|
+
### SFFloat [in, out] **contactSurfaceThickness** 0 <small>[0,∞)</small>
|
|
71
|
+
|
|
72
|
+
*contactSurfaceThickness* defines how far bodies may interpenetrate after a collision, allowing simulation of softer bodies that deform somewhat during collision.
|
|
73
|
+
|
|
74
|
+
### SFBool [in, out] **autoDisable** FALSE
|
|
75
|
+
|
|
76
|
+
*autoDisable* toggles operation of disableAngularSpeed, disableLinearSpeed, disableTime.
|
|
77
|
+
|
|
78
|
+
### SFFloat [in, out] **disableTime** 0 <small>[0,∞) <span class="red">not supported</span></small>
|
|
79
|
+
|
|
80
|
+
*disableTime* defines interval when body becomes at rest and not part of rigid body calculations, reducing numeric instabilities.
|
|
81
|
+
|
|
82
|
+
#### Hint
|
|
83
|
+
|
|
84
|
+
- Only activated if autoDisable='true'
|
|
85
|
+
|
|
86
|
+
### SFFloat [in, out] **disableLinearSpeed** 0 <small>[0,∞)</small>
|
|
87
|
+
|
|
88
|
+
*disableLinearSpeed* defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculation, reducing numeric instabilitiess.
|
|
89
|
+
|
|
90
|
+
#### Hint
|
|
91
|
+
|
|
92
|
+
- Only activated if autoDisable='true'
|
|
93
|
+
|
|
94
|
+
### SFFloat [in, out] **disableAngularSpeed** 0 <small>[0,∞)</small>
|
|
95
|
+
|
|
96
|
+
*disableAngularSpeed* defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculations, reducing numeric instabilities.
|
|
97
|
+
|
|
98
|
+
#### Hint
|
|
99
|
+
|
|
100
|
+
- Only activated if autoDisable='true'
|
|
101
|
+
|
|
102
|
+
### SFNode [ ] **collider** NULL <small>[CollisionCollection]</small>
|
|
103
|
+
|
|
104
|
+
Field collider.
|
|
105
|
+
|
|
106
|
+
### MFNode [in, out] **bodies** [ ] <small>[RigidBody]</small>
|
|
107
|
+
|
|
108
|
+
Input/Output field bodies.
|
|
109
|
+
|
|
110
|
+
### MFNode [in, out] **joints** [ ] <small>[X3DRigidJointNode]</small>
|
|
111
|
+
|
|
112
|
+
Input/Output field joints.
|
|
113
|
+
|
|
114
|
+
## Example
|
|
115
|
+
|
|
116
|
+
<x3d-canvas src="https://create3000.github.io/media/examples/RigidBodyPhysics/RigidBodyCollection/RigidBodyCollection.x3d"></x3d-canvas>
|
|
117
|
+
|
|
118
|
+
## External Links
|
|
119
|
+
|
|
120
|
+
- [X3D Specification of RigidBodyCollection](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rigidBodyPhysics.html#RigidBodyCollection){:target="_blank"}
|