Class RigidBodyObject

  • All Implemented Interfaces:
    X3DNode, RigidBody

    public class RigidBodyObject
    extends X3DConcreteNode
    implements RigidBody
    RigidBody describes a collection of shapes with a mass distribution that is affected by the physics model.

    X3D node tooltip: (X3D version 3.2 or later) [X3DNode] 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. *


    Package hint: This org.web3d.x3d.jsail concrete class is used for implementing a standalone X3D object as a Plain Old Java Object (POJO). If you are writing Java code for use inside an X3D Script node, compile separate code using only the org.web3d.x3d.sai package instead.
    See Also:
    X3D Abstract Specification: RigidBody, X3D Tooltips: RigidBody, X3D Scene Authoring Hints
    • Field Detail

      • NAME

        public static final java.lang.String NAME
        String constant NAME provides name of this element: RigidBody.
        See Also:
        Constant Field Values
      • COMPONENT

        public static final java.lang.String COMPONENT
        String constant COMPONENT defines X3D component for the RigidBody element: RigidBodyPhysics
        See Also:
        Constant Field Values
      • LEVEL

        public static final int LEVEL
        Integer constant LEVEL provides default X3D RigidBodyPhysics component level for this element: 2
        See Also:
        Constant Field Values
      • ANGULARDAMPINGFACTOR_DEFAULT_VALUE

        public static final float ANGULARDAMPINGFACTOR_DEFAULT_VALUE
        SFFloat field named angularDampingFactor has default value 0.001f (Java syntax) or 0.001 (XML syntax).
        See Also:
        Constant Field Values
      • ANGULARVELOCITY_DEFAULT_VALUE

        public static final float[] ANGULARVELOCITY_DEFAULT_VALUE
        SFVec3f field named angularVelocity has default value {0f,0f,0f} (Java syntax) or 0 0 0 (XML syntax).
      • AUTODAMP_DEFAULT_VALUE

        public static final boolean AUTODAMP_DEFAULT_VALUE
        SFBool field named autoDamp has default value false (Java syntax) or false (XML syntax).
        See Also:
        Constant Field Values
      • AUTODISABLE_DEFAULT_VALUE

        public static final boolean AUTODISABLE_DEFAULT_VALUE
        SFBool field named autoDisable has default value false (Java syntax) or false (XML syntax).
        See Also:
        Constant Field Values
      • CENTEROFMASS_DEFAULT_VALUE

        public static final float[] CENTEROFMASS_DEFAULT_VALUE
        SFVec3f field named centerOfMass has default value {0f,0f,0f} (Java syntax) or 0 0 0 (XML syntax).
      • DISABLEANGULARSPEED_DEFAULT_VALUE

        public static final float DISABLEANGULARSPEED_DEFAULT_VALUE
        SFFloat field named disableAngularSpeed has default value 0f (Java syntax) or 0 (XML syntax).
        See Also:
        Constant Field Values
      • DISABLELINEARSPEED_DEFAULT_VALUE

        public static final float DISABLELINEARSPEED_DEFAULT_VALUE
        SFFloat field named disableLinearSpeed has default value 0f (Java syntax) or 0 (XML syntax).
        See Also:
        Constant Field Values
      • DISABLETIME_DEFAULT_VALUE

        public static final double DISABLETIME_DEFAULT_VALUE
        SFTime field named disableTime has default value 0 (Java syntax) or 0 (XML syntax).
        See Also:
        Constant Field Values
      • ENABLED_DEFAULT_VALUE

        public static final boolean ENABLED_DEFAULT_VALUE
        SFBool field named enabled has default value true (Java syntax) or true (XML syntax).
        See Also:
        Constant Field Values
      • FINITEROTATIONAXIS_DEFAULT_VALUE

        public static final float[] FINITEROTATIONAXIS_DEFAULT_VALUE
        SFVec3f field named finiteRotationAxis has default value {0f,1f,0f} (Java syntax) or 0 1 0 (XML syntax).
      • FIXED_DEFAULT_VALUE

        public static final boolean FIXED_DEFAULT_VALUE
        SFBool field named fixed has default value false (Java syntax) or false (XML syntax).
        See Also:
        Constant Field Values
      • FORCES_DEFAULT_VALUE

        public static final float[] FORCES_DEFAULT_VALUE
        MFVec3f field named forces has default value equal to an empty list.
      • INERTIA_DEFAULT_VALUE

        public static final float[] INERTIA_DEFAULT_VALUE
        SFMatrix3f field named inertia has default value {1f,0f,0f,0f,1f,0f,0f,0f,1f} (Java syntax) or 1 0 0 0 1 0 0 0 1 (XML syntax).
      • IS_DEFAULT_VALUE

        public static final ISObject IS_DEFAULT_VALUE
        SFNode field named IS has default value null (Java syntax) or NULL (XML syntax).
      • LINEARDAMPINGFACTOR_DEFAULT_VALUE

        public static final float LINEARDAMPINGFACTOR_DEFAULT_VALUE
        SFFloat field named linearDampingFactor has default value 0.001f (Java syntax) or 0.001 (XML syntax).
        See Also:
        Constant Field Values
      • LINEARVELOCITY_DEFAULT_VALUE

        public static final float[] LINEARVELOCITY_DEFAULT_VALUE
        SFVec3f field named linearVelocity has default value {0f,0f,0f} (Java syntax) or 0 0 0 (XML syntax).
      • MASS_DEFAULT_VALUE

        public static final float MASS_DEFAULT_VALUE
        SFFloat field named mass has default value 1f (Java syntax) or 1 (XML syntax).
        See Also:
        Constant Field Values
      • MASSDENSITYMODEL_DEFAULT_VALUE

        public static final X3DNode MASSDENSITYMODEL_DEFAULT_VALUE
        SFNode field named massDensityModel has default value null (Java syntax) or NULL (XML syntax).
      • METADATA_DEFAULT_VALUE

        public static final X3DMetadataObject METADATA_DEFAULT_VALUE
        SFNode field named metadata has default value null (Java syntax) or NULL (XML syntax).
      • ORIENTATION_DEFAULT_VALUE

        public static final float[] ORIENTATION_DEFAULT_VALUE
        SFRotation field named orientation has default value {0f,0f,1f,0f} (Java syntax) or 0 0 1 0 (XML syntax).
      • POSITION_DEFAULT_VALUE

        public static final float[] POSITION_DEFAULT_VALUE
        SFVec3f field named position has default value {0f,0f,0f} (Java syntax) or 0 0 0 (XML syntax).
      • TORQUES_DEFAULT_VALUE

        public static final float[] TORQUES_DEFAULT_VALUE
        MFVec3f field named torques has default value equal to an empty list.
      • USEFINITEROTATION_DEFAULT_VALUE

        public static final boolean USEFINITEROTATION_DEFAULT_VALUE
        SFBool field named useFiniteRotation has default value false (Java syntax) or false (XML syntax).
        See Also:
        Constant Field Values
      • USEGLOBALGRAVITY_DEFAULT_VALUE

        public static final boolean USEGLOBALGRAVITY_DEFAULT_VALUE
        SFBool field named useGlobalGravity has default value true (Java syntax) or true (XML syntax).
        See Also:
        Constant Field Values
      • fromField_ANGULARDAMPINGFACTOR

        public static final java.lang.String fromField_ANGULARDAMPINGFACTOR
        fromField ROUTE name for SFFloat field named angularDampingFactor.
        See Also:
        Constant Field Values
      • toField_ANGULARDAMPINGFACTOR

        public static final java.lang.String toField_ANGULARDAMPINGFACTOR
        toField ROUTE name for SFFloat field named angularDampingFactor.
        See Also:
        Constant Field Values
      • fromField_ANGULARVELOCITY

        public static final java.lang.String fromField_ANGULARVELOCITY
        fromField ROUTE name for SFVec3f field named angularVelocity.
        See Also:
        Constant Field Values
      • toField_ANGULARVELOCITY

        public static final java.lang.String toField_ANGULARVELOCITY
        toField ROUTE name for SFVec3f field named angularVelocity.
        See Also:
        Constant Field Values
      • fromField_AUTODAMP

        public static final java.lang.String fromField_AUTODAMP
        fromField ROUTE name for SFBool field named autoDamp.
        See Also:
        Constant Field Values
      • toField_AUTODAMP

        public static final java.lang.String toField_AUTODAMP
        toField ROUTE name for SFBool field named autoDamp.
        See Also:
        Constant Field Values
      • fromField_AUTODISABLE

        public static final java.lang.String fromField_AUTODISABLE
        fromField ROUTE name for SFBool field named autoDisable.
        See Also:
        Constant Field Values
      • toField_AUTODISABLE

        public static final java.lang.String toField_AUTODISABLE
        toField ROUTE name for SFBool field named autoDisable.
        See Also:
        Constant Field Values
      • fromField_CENTEROFMASS

        public static final java.lang.String fromField_CENTEROFMASS
        fromField ROUTE name for SFVec3f field named centerOfMass.
        See Also:
        Constant Field Values
      • toField_CENTEROFMASS

        public static final java.lang.String toField_CENTEROFMASS
        toField ROUTE name for SFVec3f field named centerOfMass.
        See Also:
        Constant Field Values
      • fromField_DISABLEANGULARSPEED

        public static final java.lang.String fromField_DISABLEANGULARSPEED
        fromField ROUTE name for SFFloat field named disableAngularSpeed.
        See Also:
        Constant Field Values
      • toField_DISABLEANGULARSPEED

        public static final java.lang.String toField_DISABLEANGULARSPEED
        toField ROUTE name for SFFloat field named disableAngularSpeed.
        See Also:
        Constant Field Values
      • fromField_DISABLELINEARSPEED

        public static final java.lang.String fromField_DISABLELINEARSPEED
        fromField ROUTE name for SFFloat field named disableLinearSpeed.
        See Also:
        Constant Field Values
      • toField_DISABLELINEARSPEED

        public static final java.lang.String toField_DISABLELINEARSPEED
        toField ROUTE name for SFFloat field named disableLinearSpeed.
        See Also:
        Constant Field Values
      • fromField_DISABLETIME

        public static final java.lang.String fromField_DISABLETIME
        fromField ROUTE name for SFTime field named disableTime.
        See Also:
        Constant Field Values
      • toField_DISABLETIME

        public static final java.lang.String toField_DISABLETIME
        toField ROUTE name for SFTime field named disableTime.
        See Also:
        Constant Field Values
      • fromField_ENABLED

        public static final java.lang.String fromField_ENABLED
        fromField ROUTE name for SFBool field named enabled.
        See Also:
        Constant Field Values
      • toField_ENABLED

        public static final java.lang.String toField_ENABLED
        toField ROUTE name for SFBool field named enabled.
        See Also:
        Constant Field Values
      • fromField_FINITEROTATIONAXIS

        public static final java.lang.String fromField_FINITEROTATIONAXIS
        fromField ROUTE name for SFVec3f field named finiteRotationAxis.
        See Also:
        Constant Field Values
      • toField_FINITEROTATIONAXIS

        public static final java.lang.String toField_FINITEROTATIONAXIS
        toField ROUTE name for SFVec3f field named finiteRotationAxis.
        See Also:
        Constant Field Values
      • fromField_FIXED

        public static final java.lang.String fromField_FIXED
        fromField ROUTE name for SFBool field named fixed.
        See Also:
        Constant Field Values
      • toField_FIXED

        public static final java.lang.String toField_FIXED
        toField ROUTE name for SFBool field named fixed.
        See Also:
        Constant Field Values
      • fromField_FORCES

        public static final java.lang.String fromField_FORCES
        fromField ROUTE name for MFVec3f field named forces.
        See Also:
        Constant Field Values
      • toField_FORCES

        public static final java.lang.String toField_FORCES
        toField ROUTE name for MFVec3f field named forces.
        See Also:
        Constant Field Values
      • fromField_GEOMETRY

        public static final java.lang.String fromField_GEOMETRY
        fromField ROUTE name for MFNode field named geometry.
        See Also:
        Constant Field Values
      • toField_GEOMETRY

        public static final java.lang.String toField_GEOMETRY
        toField ROUTE name for MFNode field named geometry.
        See Also:
        Constant Field Values
      • fromField_INERTIA

        public static final java.lang.String fromField_INERTIA
        fromField ROUTE name for SFMatrix3f field named inertia.
        See Also:
        Constant Field Values
      • toField_INERTIA

        public static final java.lang.String toField_INERTIA
        toField ROUTE name for SFMatrix3f field named inertia.
        See Also:
        Constant Field Values
      • fromField_IS

        public static final java.lang.String fromField_IS
        fromField ROUTE name for SFNode field named IS.
        See Also:
        Constant Field Values
      • fromField_LINEARDAMPINGFACTOR

        public static final java.lang.String fromField_LINEARDAMPINGFACTOR
        fromField ROUTE name for SFFloat field named linearDampingFactor.
        See Also:
        Constant Field Values
      • toField_LINEARDAMPINGFACTOR

        public static final java.lang.String toField_LINEARDAMPINGFACTOR
        toField ROUTE name for SFFloat field named linearDampingFactor.
        See Also:
        Constant Field Values
      • fromField_LINEARVELOCITY

        public static final java.lang.String fromField_LINEARVELOCITY
        fromField ROUTE name for SFVec3f field named linearVelocity.
        See Also:
        Constant Field Values
      • toField_LINEARVELOCITY

        public static final java.lang.String toField_LINEARVELOCITY
        toField ROUTE name for SFVec3f field named linearVelocity.
        See Also:
        Constant Field Values
      • fromField_MASS

        public static final java.lang.String fromField_MASS
        fromField ROUTE name for SFFloat field named mass.
        See Also:
        Constant Field Values
      • toField_MASS

        public static final java.lang.String toField_MASS
        toField ROUTE name for SFFloat field named mass.
        See Also:
        Constant Field Values
      • fromField_MASSDENSITYMODEL

        public static final java.lang.String fromField_MASSDENSITYMODEL
        fromField ROUTE name for SFNode field named massDensityModel.
        See Also:
        Constant Field Values
      • toField_MASSDENSITYMODEL

        public static final java.lang.String toField_MASSDENSITYMODEL
        toField ROUTE name for SFNode field named massDensityModel.
        See Also:
        Constant Field Values
      • fromField_METADATA

        public static final java.lang.String fromField_METADATA
        fromField ROUTE name for SFNode field named metadata.
        See Also:
        Constant Field Values
      • toField_METADATA

        public static final java.lang.String toField_METADATA
        toField ROUTE name for SFNode field named metadata.
        See Also:
        Constant Field Values
      • fromField_ORIENTATION

        public static final java.lang.String fromField_ORIENTATION
        fromField ROUTE name for SFRotation field named orientation.
        See Also:
        Constant Field Values
      • toField_ORIENTATION

        public static final java.lang.String toField_ORIENTATION
        toField ROUTE name for SFRotation field named orientation.
        See Also:
        Constant Field Values
      • fromField_POSITION

        public static final java.lang.String fromField_POSITION
        fromField ROUTE name for SFVec3f field named position.
        See Also:
        Constant Field Values
      • toField_POSITION

        public static final java.lang.String toField_POSITION
        toField ROUTE name for SFVec3f field named position.
        See Also:
        Constant Field Values
      • fromField_TORQUES

        public static final java.lang.String fromField_TORQUES
        fromField ROUTE name for MFVec3f field named torques.
        See Also:
        Constant Field Values
      • toField_TORQUES

        public static final java.lang.String toField_TORQUES
        toField ROUTE name for MFVec3f field named torques.
        See Also:
        Constant Field Values
      • fromField_USEFINITEROTATION

        public static final java.lang.String fromField_USEFINITEROTATION
        fromField ROUTE name for SFBool field named useFiniteRotation.
        See Also:
        Constant Field Values
      • toField_USEFINITEROTATION

        public static final java.lang.String toField_USEFINITEROTATION
        toField ROUTE name for SFBool field named useFiniteRotation.
        See Also:
        Constant Field Values
      • fromField_USEGLOBALGRAVITY

        public static final java.lang.String fromField_USEGLOBALGRAVITY
        fromField ROUTE name for SFBool field named useGlobalGravity.
        See Also:
        Constant Field Values
      • toField_USEGLOBALGRAVITY

        public static final java.lang.String toField_USEGLOBALGRAVITY
        toField ROUTE name for SFBool field named useGlobalGravity.
        See Also:
        Constant Field Values
    • Constructor Detail

      • RigidBodyObject

        public RigidBodyObject()
        Constructor for RigidBodyObject to initialize member variables with default values.
      • RigidBodyObject

        public RigidBodyObject​(java.lang.String DEFlabel)
        Utility constructor that assigns DEF label after initializing member variables with default values.
        Parameters:
        DEFlabel - unique DEF name for this X3D node
    • Method Detail

      • getElementName

        public final java.lang.String getElementName()
        Provides name of this element: RigidBody
        Specified by:
        getElementName in class X3DConcreteElement
        Returns:
        name of this element
      • getComponent

        public final java.lang.String getComponent()
        Defines X3D component for the RigidBody element: RigidBodyPhysics
        Specified by:
        getComponent in class X3DConcreteElement
        Returns:
        X3D component for this element
      • getComponentLevel

        public final int getComponentLevel()
        Provides default X3D component level for this element: 2
        Specified by:
        getComponentLevel in class X3DConcreteElement
        Returns:
        default X3D component level for this element
      • getFieldType

        public java.lang.String getFieldType​(java.lang.String fieldName)
        Indicate type corresponding to given fieldName.
        Specified by:
        getFieldType in class X3DConcreteElement
        Parameters:
        fieldName - name of field in this X3D node
        Returns:
        X3D type (SFvec3f etc.), otherwise ConfigurationProperties.ERROR_UNKNOWN_FIELD_TYPE if not recognized
        See Also:
        ConfigurationProperties.ERROR_UNKNOWN_FIELD_TYPE
      • getAccessType

        public java.lang.String getAccessType​(java.lang.String fieldName)
        Indicate accessType corresponding to given fieldName.
        Specified by:
        getAccessType in class X3DConcreteElement
        Parameters:
        fieldName - name of field in this X3D node
        Returns:
        X3D accessType (inputOnly etc.), otherwise ConfigurationProperties.ERROR_UNKNOWN_FIELD_ACCESSTYPE if not recognized
        See Also:
        ConfigurationProperties.ERROR_UNKNOWN_FIELD_ACCESSTYPE
      • initialize

        public final void initialize()
        Initialize all member variables to default values.
        Overrides:
        initialize in class X3DConcreteNode
      • getAngularDampingFactor

        public float getAngularDampingFactor()
        Provide float value from inputOutput SFFloat field named angularDampingFactor.

        Tooltip: [0,1] angularDampingFactor automatically damps a portion of body motion over time. *
        Specified by:
        getAngularDampingFactor in interface RigidBody
        Returns:
        value of angularDampingFactor field
      • setAngularDampingFactor

        public RigidBodyObject setAngularDampingFactor​(float newValue)
        Accessor method to assign float value to inputOutput SFFloat field named angularDampingFactor.

        Tooltip: [0,1] angularDampingFactor automatically damps a portion of body motion over time. *
        Specified by:
        setAngularDampingFactor in interface RigidBody
        Parameters:
        newValue - is new value for the angularDampingFactor field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAngularDampingFactor

        public RigidBodyObject setAngularDampingFactor​(SFFloatObject newValue)
        Assign typed object value to SFFloat angularDampingFactor field, similar to setAngularDampingFactor(float).
        Parameters:
        newValue - is new value for the angularDampingFactor field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAngularDampingFactor

        public RigidBodyObject setAngularDampingFactor​(double newValue)
        Utility method: double-precision set-parameter accessor for X3D floating-point type, similar to setAngularDampingFactor(float).
        Parameters:
        newValue - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getAngularVelocity

        public float[] getAngularVelocity()
        Provide array of 3-tuple float results from inputOutput SFVec3f field named angularVelocity.

        Tooltip: angularVelocity sets constant velocity value to object every frame, and reports updates by physics model.
        • Hint: initial value only applied during first frame if forces applied.
        • Warning: instantaneous velocity changes may lead to numerical instability.
        Specified by:
        getAngularVelocity in interface RigidBody
        Returns:
        value of angularVelocity field
      • setAngularVelocity

        public RigidBodyObject setAngularVelocity​(float[] newValue)
        Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named angularVelocity.

        Tooltip: angularVelocity sets constant velocity value to object every frame, and reports updates by physics model.
        • Hint: initial value only applied during first frame if forces applied.
        • Warning: instantaneous velocity changes may lead to numerical instability.
        Specified by:
        setAngularVelocity in interface RigidBody
        Parameters:
        newValue - is new value for the angularVelocity field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAngularVelocity

        public RigidBodyObject setAngularVelocity​(SFVec3fObject newValue)
        Assign typed object value to SFVec3f angularVelocity field, similar to setAngularVelocity(float[]).
        Parameters:
        newValue - is new value for the angularVelocity field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAngularVelocity

        public RigidBodyObject setAngularVelocity​(float x,
                                                  float y,
                                                  float z)
        Assign values to SFVec3f angularVelocity field, similar to setAngularVelocity(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAngularVelocity

        public RigidBodyObject setAngularVelocity​(double x,
                                                  double y,
                                                  double z)
        Utility method: double-precision set-parameters accessor for X3D floating-point type, similar to setAngularVelocity(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAngularVelocity

        public RigidBodyObject setAngularVelocity​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setAngularVelocity(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getAutoDamp

        public boolean getAutoDamp()
        Provide boolean value from inputOutput SFBool field named autoDamp.

        Tooltip: autoDamp enables/disables angularDampingFactor and linearDampingFactor. *
        Specified by:
        getAutoDamp in interface RigidBody
        Returns:
        value of autoDamp field
      • setAutoDamp

        public RigidBodyObject setAutoDamp​(boolean newValue)
        Accessor method to assign boolean value to inputOutput SFBool field named autoDamp.

        Tooltip: autoDamp enables/disables angularDampingFactor and linearDampingFactor. *
        Specified by:
        setAutoDamp in interface RigidBody
        Parameters:
        newValue - is new value for the autoDamp field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAutoDamp

        public RigidBodyObject setAutoDamp​(SFBoolObject newValue)
        Assign typed object value to SFBool autoDamp field, similar to setAutoDamp(boolean).
        Parameters:
        newValue - is new value for the autoDamp field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getAutoDisable

        public boolean getAutoDisable()
        Provide boolean value from inputOutput SFBool field named autoDisable.

        Tooltip: autoDisable toggles operation of disableAngularSpeed, disableLinearSpeed, disableTime. *
        Specified by:
        getAutoDisable in interface RigidBody
        Returns:
        value of autoDisable field
      • setAutoDisable

        public RigidBodyObject setAutoDisable​(boolean newValue)
        Accessor method to assign boolean value to inputOutput SFBool field named autoDisable.

        Tooltip: autoDisable toggles operation of disableAngularSpeed, disableLinearSpeed, disableTime. *
        Specified by:
        setAutoDisable in interface RigidBody
        Parameters:
        newValue - is new value for the autoDisable field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setAutoDisable

        public RigidBodyObject setAutoDisable​(SFBoolObject newValue)
        Assign typed object value to SFBool autoDisable field, similar to setAutoDisable(boolean).
        Parameters:
        newValue - is new value for the autoDisable field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getCenterOfMass

        public float[] getCenterOfMass()
        Provide array of 3-tuple float results from inputOutput SFVec3f field named centerOfMass.

        Tooltip: centerOfMass defines local center of mass for physics calculations. *
        Specified by:
        getCenterOfMass in interface RigidBody
        Returns:
        value of centerOfMass field
      • setCenterOfMass

        public RigidBodyObject setCenterOfMass​(float[] newValue)
        Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named centerOfMass.

        Tooltip: centerOfMass defines local center of mass for physics calculations. *
        Specified by:
        setCenterOfMass in interface RigidBody
        Parameters:
        newValue - is new value for the centerOfMass field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setCenterOfMass

        public RigidBodyObject setCenterOfMass​(SFVec3fObject newValue)
        Assign typed object value to SFVec3f centerOfMass field, similar to setCenterOfMass(float[]).
        Parameters:
        newValue - is new value for the centerOfMass field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setCenterOfMass

        public RigidBodyObject setCenterOfMass​(float x,
                                               float y,
                                               float z)
        Assign values to SFVec3f centerOfMass field, similar to setCenterOfMass(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setCenterOfMass

        public RigidBodyObject setCenterOfMass​(double x,
                                               double y,
                                               double z)
        Utility method: double-precision set-parameters accessor for X3D floating-point type, similar to setCenterOfMass(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setCenterOfMass

        public RigidBodyObject setCenterOfMass​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setCenterOfMass(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getDisableAngularSpeed

        public float getDisableAngularSpeed()
        Provide float value from inputOutput SFFloat field named disableAngularSpeed.

        Tooltip: [0,+infinity) disableAngularSpeed defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculations, reducing numeric instabilities.
        • Hint: only activated if autoDisable='true'.
        Specified by:
        getDisableAngularSpeed in interface RigidBody
        Returns:
        value of disableAngularSpeed field
      • setDisableAngularSpeed

        public RigidBodyObject setDisableAngularSpeed​(float newValue)
        Accessor method to assign float value to inputOutput SFFloat field named disableAngularSpeed.

        Tooltip: [0,+infinity) disableAngularSpeed defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculations, reducing numeric instabilities.
        • Hint: only activated if autoDisable='true'.
        Specified by:
        setDisableAngularSpeed in interface RigidBody
        Parameters:
        newValue - is new value for the disableAngularSpeed field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDisableAngularSpeed

        public RigidBodyObject setDisableAngularSpeed​(SFFloatObject newValue)
        Assign typed object value to SFFloat disableAngularSpeed field, similar to setDisableAngularSpeed(float).
        Parameters:
        newValue - is new value for the disableAngularSpeed field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDisableAngularSpeed

        public RigidBodyObject setDisableAngularSpeed​(double newValue)
        Utility method: double-precision set-parameter accessor for X3D floating-point type, similar to setDisableAngularSpeed(float).
        Parameters:
        newValue - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getDisableLinearSpeed

        public float getDisableLinearSpeed()
        Provide float value from inputOutput SFFloat field named disableLinearSpeed.

        Tooltip: [0,+infinity) disableLinearSpeed defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculation, reducing numeric instabilitiess.
        • Hint: only activated if autoDisable='true'.
        Specified by:
        getDisableLinearSpeed in interface RigidBody
        Returns:
        value of disableLinearSpeed field
      • setDisableLinearSpeed

        public RigidBodyObject setDisableLinearSpeed​(float newValue)
        Accessor method to assign float value to inputOutput SFFloat field named disableLinearSpeed.

        Tooltip: [0,+infinity) disableLinearSpeed defines lower-limit tolerance value when body is considered at rest and not part of rigid body calculation, reducing numeric instabilitiess.
        • Hint: only activated if autoDisable='true'.
        Specified by:
        setDisableLinearSpeed in interface RigidBody
        Parameters:
        newValue - is new value for the disableLinearSpeed field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDisableLinearSpeed

        public RigidBodyObject setDisableLinearSpeed​(SFFloatObject newValue)
        Assign typed object value to SFFloat disableLinearSpeed field, similar to setDisableLinearSpeed(float).
        Parameters:
        newValue - is new value for the disableLinearSpeed field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDisableLinearSpeed

        public RigidBodyObject setDisableLinearSpeed​(double newValue)
        Utility method: double-precision set-parameter accessor for X3D floating-point type, similar to setDisableLinearSpeed(float).
        Parameters:
        newValue - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getDisableTime

        public double getDisableTime()
        Provide double value in seconds within allowed range of [0,infinity) from inputOutput SFTime field named disableTime.

        Tooltip: [0,+infinity) disableTime defines interval when body becomes at rest and not part of rigid body calculations, reducing numeric instabilities.
        • Hint: only activated if autoDisable='true'
        • Hint: disableTime is an SFTime duration interval, not an absolute clock time.
        Specified by:
        getDisableTime in interface RigidBody
        Returns:
        value of disableTime field
      • setDisableTime

        public RigidBodyObject setDisableTime​(double newValue)
        Accessor method to assign double value in seconds to inputOutput SFTime field named disableTime.

        Tooltip: [0,+infinity) disableTime defines interval when body becomes at rest and not part of rigid body calculations, reducing numeric instabilities.
        • Hint: only activated if autoDisable='true'
        • Hint: disableTime is an SFTime duration interval, not an absolute clock time.
        Specified by:
        setDisableTime in interface RigidBody
        Parameters:
        newValue - is new value for the disableTime field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDisableTime

        public RigidBodyObject setDisableTime​(SFTimeObject newValue)
        Assign typed object value to SFTime disableTime field, similar to setDisableTime(double).
        Parameters:
        newValue - is new value for the disableTime field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getEnabled

        public boolean getEnabled()
        Provide boolean value from inputOutput SFBool field named enabled.

        Tooltip: Enables/disables node operation. *
        Specified by:
        getEnabled in interface RigidBody
        Returns:
        value of enabled field
      • setEnabled

        public RigidBodyObject setEnabled​(boolean newValue)
        Accessor method to assign boolean value to inputOutput SFBool field named enabled.

        Tooltip: Enables/disables node operation. *
        Specified by:
        setEnabled in interface RigidBody
        Parameters:
        newValue - is new value for the enabled field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setEnabled

        public RigidBodyObject setEnabled​(SFBoolObject newValue)
        Assign typed object value to SFBool enabled field, similar to setEnabled(boolean).
        Parameters:
        newValue - is new value for the enabled field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getFiniteRotationAxis

        public float[] getFiniteRotationAxis()
        Provide array of 3-tuple float results unit axis, angle (in radians) from inputOutput SFVec3f field named finiteRotationAxis.

        Tooltip: finiteRotationAxis specifies vector around which the object rotates. *
        Specified by:
        getFiniteRotationAxis in interface RigidBody
        Returns:
        value of finiteRotationAxis field
      • setFiniteRotationAxis

        public RigidBodyObject setFiniteRotationAxis​(float[] newValue)
        Accessor method to assign 3-tuple float array unit axis, angle (in radians) to inputOutput SFVec3f field named finiteRotationAxis.

        Tooltip: finiteRotationAxis specifies vector around which the object rotates. *
        Specified by:
        setFiniteRotationAxis in interface RigidBody
        Parameters:
        newValue - is new value for the finiteRotationAxis field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setFiniteRotationAxis

        public RigidBodyObject setFiniteRotationAxis​(SFVec3fObject newValue)
        Assign typed object value to SFVec3f finiteRotationAxis field, similar to setFiniteRotationAxis(float[]).
        Parameters:
        newValue - is new value for the finiteRotationAxis field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setFiniteRotationAxis

        public RigidBodyObject setFiniteRotationAxis​(float x,
                                                     float y,
                                                     float z)
        Assign values to SFVec3f finiteRotationAxis field, similar to setFiniteRotationAxis(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setFiniteRotationAxis

        public RigidBodyObject setFiniteRotationAxis​(double x,
                                                     double y,
                                                     double z)
        Utility method: double-precision set-parameters accessor for X3D floating-point type, similar to setFiniteRotationAxis(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setFiniteRotationAxis

        public RigidBodyObject setFiniteRotationAxis​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setFiniteRotationAxis(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getFixed

        public boolean getFixed()
        Provide boolean value from inputOutput SFBool field named fixed.

        Tooltip: fixed indicates whether body is able to move.
        • Hint: fixed is useful for indicating objects that do not move: walls, ground, etc.
        Specified by:
        getFixed in interface RigidBody
        Returns:
        value of fixed field
      • setFixed

        public RigidBodyObject setFixed​(boolean newValue)
        Accessor method to assign boolean value to inputOutput SFBool field named fixed.

        Tooltip: fixed indicates whether body is able to move.
        • Hint: fixed is useful for indicating objects that do not move: walls, ground, etc.
        Specified by:
        setFixed in interface RigidBody
        Parameters:
        newValue - is new value for the fixed field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setFixed

        public RigidBodyObject setFixed​(SFBoolObject newValue)
        Assign typed object value to SFBool fixed field, similar to setFixed(boolean).
        Parameters:
        newValue - is new value for the fixed field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getForces

        public float[] getForces()
        Provide array of 3-tuple float results from inputOutput MFVec3f field named forces.

        Tooltip: forces defines linear force values applied to the object every frame. *
        Specified by:
        getForces in interface RigidBody
        Returns:
        value of forces field
      • setForces

        public RigidBodyObject setForces​(float[] newValue)
        Accessor method to assign 3-tuple float array to inputOutput MFVec3f field named forces.

        Tooltip: forces defines linear force values applied to the object every frame. *
        Specified by:
        setForces in interface RigidBody
        Parameters:
        newValue - is new value for the forces field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setForces

        public RigidBodyObject setForces​(MFVec3fObject newValue)
        Assign typed object value to MFVec3f forces field, similar to setForces(float[]).
        Parameters:
        newValue - is new value for the forces field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • addForces

        public RigidBodyObject addForces​(SFVec3fObject newValue)
        Add singleton SFVec3fObject value to MFVec3f forces field.
        Parameters:
        newValue - is new value to add to the forces field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setForces

        public RigidBodyObject setForces​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setForces(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getGeometry

        public X3DNode[] getGeometry()
        Provide array of X3DNBodyCollidableNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) from inputOutput MFNode field geometry.

        Warning: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNBodyCollidableNode.
        Specified by:
        getGeometry in interface RigidBody
        Returns:
        value of geometry field
        See Also:
        X3DNBodyCollidableNode
      • getGeometryList

        public java.util.ArrayList<X3DNode> getGeometryList()
        Utility method to get ArrayList value of MFNode geometry field, similar to getGeometry().
        Returns:
        value of geometry field
      • setGeometry

        public RigidBodyObject setGeometry​(X3DNode[] newValue)
        Accessor method to assign X3DNBodyCollidableNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field geometry.

        Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNBodyCollidableNode.
        Specified by:
        setGeometry in interface RigidBody
        Parameters:
        newValue - is new value for the geometry field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setGeometry

        public RigidBodyObject setGeometry​(java.util.ArrayList<X3DNBodyCollidableNode> newValue)
        Assign ArrayList value of MFNode geometry field, similar to setGeometry(X3DNode[]).
        Parameters:
        newValue - is new value for the geometry field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • addGeometry

        public RigidBodyObject addGeometry​(X3DNode newValue)
        Add single child node to existing array of geometry nodes (if any).

        Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNBodyCollidableNode and ProtoInstance.
        Parameters:
        newValue - is new value to be appended the geometry field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • addGeometry

        public RigidBodyObject addGeometry​(ProtoInstanceObject newValue)
        Add single ProtoInstanceObject (with appropriate node type and containerField value) to MFNode array for geometry field.

        Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to ShaderPart and ProtoInstance.
        Parameters:
        newValue - is new value to be appended the parts field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • addGeometry

        public void addGeometry​(X3DNode[] newValue)
        Add array of child geometry nodes to array of existing nodes (if any).

        Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNBodyCollidableNode.
        Specified by:
        addGeometry in interface RigidBody
        Parameters:
        newValue - is new value array to be appended the geometry field.
      • setGeometry

        public void setGeometry​(X3DNode newValue)
        Set single child geometry node, replacing prior array of existing nodes (if any).

        Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are restricted to X3DNBodyCollidableNode.
        Specified by:
        setGeometry in interface RigidBody
        Parameters:
        newValue - is new node for the geometry field (restricted to X3DNBodyCollidableNode)
      • clearGeometry

        public RigidBodyObject clearGeometry()
        Utility method to clear MFNode value of geometry field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • hasGeometry

        public boolean hasGeometry()
        Indicate whether an object is available for inputOutput MFNode field geometry.
        Returns:
        whether a properly typed node or ProtoInstance array or CommentsBlock is available.
        See Also:
        getGeometry()
      • getInertia

        public float[] getInertia()
        Provide array of float results from inputOutput SFMatrix3f field named inertia.

        Tooltip: inertia matrix defines a 3x2 inertia tensor matrix.
        • Warning: only the first 6 values are used.
        Specified by:
        getInertia in interface RigidBody
        Returns:
        value of inertia field
      • setInertia

        public RigidBodyObject setInertia​(float[] newValue)
        Accessor method to assign float array to inputOutput SFMatrix3f field named inertia.

        Tooltip: inertia matrix defines a 3x2 inertia tensor matrix.
        • Warning: only the first 6 values are used.
        Specified by:
        setInertia in interface RigidBody
        Parameters:
        newValue - is new value for the inertia field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setInertia

        public RigidBodyObject setInertia​(SFMatrix3fObject newValue)
        Assign typed object value to SFMatrix3f inertia field, similar to setInertia(float[]).
        Parameters:
        newValue - is new value for the inertia field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • clearIS

        public RigidBodyObject clearIS()
        Utility method to clear SFNode value of IS field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • hasIS

        public boolean hasIS()
        Indicate whether an object is available for inputOutput SFNode field IS.
        Returns:
        whether a concrete statement or CommentsBlock is available.
        See Also:
        getIS()
      • getLinearDampingFactor

        public float getLinearDampingFactor()
        Provide float value from inputOutput SFFloat field named linearDampingFactor.

        Tooltip: [0,1] linearDampingFactor automatically damps a portion of body motion over time. *
        Specified by:
        getLinearDampingFactor in interface RigidBody
        Returns:
        value of linearDampingFactor field
      • setLinearDampingFactor

        public RigidBodyObject setLinearDampingFactor​(float newValue)
        Accessor method to assign float value to inputOutput SFFloat field named linearDampingFactor.

        Tooltip: [0,1] linearDampingFactor automatically damps a portion of body motion over time. *
        Specified by:
        setLinearDampingFactor in interface RigidBody
        Parameters:
        newValue - is new value for the linearDampingFactor field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setLinearDampingFactor

        public RigidBodyObject setLinearDampingFactor​(SFFloatObject newValue)
        Assign typed object value to SFFloat linearDampingFactor field, similar to setLinearDampingFactor(float).
        Parameters:
        newValue - is new value for the linearDampingFactor field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setLinearDampingFactor

        public RigidBodyObject setLinearDampingFactor​(double newValue)
        Utility method: double-precision set-parameter accessor for X3D floating-point type, similar to setLinearDampingFactor(float).
        Parameters:
        newValue - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getLinearVelocity

        public float[] getLinearVelocity()
        Provide array of 3-tuple float results from inputOutput SFVec3f field named linearVelocity.

        Tooltip: linearVelocity sets constant velocity value to object every frame, and reports updates by physics model.
        • Hint: initial value only applied during first frame if forces applied.
        • Warning: instantaneous velocity changes may lead to numerical instability.
        Specified by:
        getLinearVelocity in interface RigidBody
        Returns:
        value of linearVelocity field
      • setLinearVelocity

        public RigidBodyObject setLinearVelocity​(float[] newValue)
        Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named linearVelocity.

        Tooltip: linearVelocity sets constant velocity value to object every frame, and reports updates by physics model.
        • Hint: initial value only applied during first frame if forces applied.
        • Warning: instantaneous velocity changes may lead to numerical instability.
        Specified by:
        setLinearVelocity in interface RigidBody
        Parameters:
        newValue - is new value for the linearVelocity field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setLinearVelocity

        public RigidBodyObject setLinearVelocity​(SFVec3fObject newValue)
        Assign typed object value to SFVec3f linearVelocity field, similar to setLinearVelocity(float[]).
        Parameters:
        newValue - is new value for the linearVelocity field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setLinearVelocity

        public RigidBodyObject setLinearVelocity​(float x,
                                                 float y,
                                                 float z)
        Assign values to SFVec3f linearVelocity field, similar to setLinearVelocity(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setLinearVelocity

        public RigidBodyObject setLinearVelocity​(double x,
                                                 double y,
                                                 double z)
        Utility method: double-precision set-parameters accessor for X3D floating-point type, similar to setLinearVelocity(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setLinearVelocity

        public RigidBodyObject setLinearVelocity​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setLinearVelocity(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setMass

        public RigidBodyObject setMass​(SFFloatObject newValue)
        Assign typed object value to SFFloat mass field, similar to setMass(float).
        Parameters:
        newValue - is new value for the mass field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setMass

        public RigidBodyObject setMass​(double newValue)
        Utility method: double-precision set-parameter accessor for X3D floating-point type, similar to setMass(float).
        Parameters:
        newValue - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getMassDensityModel

        public X3DNode getMassDensityModel()
        Provide X3DNode instance (using a properly typed node) with acceptable node types limited to Sphere|Box|Cone, from inputOutput SFNode field massDensityModel.
        Specified by:
        getMassDensityModel in interface RigidBody
        Returns:
        value of massDensityModel field
        See Also:
        getMassDensityModelProtoInstance()
      • setMassDensityModel

        public RigidBodyObject setMassDensityModel​(X3DNode newValue)
        Accessor method to assign X3DNode instance (using a properly typed node) to inputOutput SFNode field massDensityModel. // newValueInstanceAcceptableNodeTypesTest checks are needed for methods that override/subset X3DNode interfaces #1 boolean isNodeTypeAllowed = (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.Geometry3D.SphereObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.Geometry3D.BoxObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.Geometry3D.ConeObject); if (!isNodeTypeAllowed) { throw new org.web3d.x3d.sai.InvalidFieldValueException("X3DNode newValue is not instanceof " + "acceptableNodeTypes Sphere|Box|Cone; newValue=" + newValue); }
        Specified by:
        setMassDensityModel in interface RigidBody
        Parameters:
        newValue - is new value for the massDensityModel field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
        See Also:
        setMassDensityModel(ProtoInstanceObject)
      • clearMassDensityModel

        public RigidBodyObject clearMassDensityModel()
        Utility method to clear SFNode value of massDensityModel field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • setMassDensityModel

        public RigidBodyObject setMassDensityModel​(ProtoInstanceObject newValue)
        Assign ProtoInstance (using a properly typed node) to inputOutput SFNode field massDensityModel.
        Parameters:
        newValue - is new value for the massDensityModel field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
        See Also:
        setMassDensityModel(X3DNode)
      • hasMassDensityModel

        public boolean hasMassDensityModel()
        Indicate whether an object is available for inputOutput SFNode field massDensityModel.
        Returns:
        whether a properly typed node or ProtoInstance or CommentsBlock is available.
        See Also:
        getMassDensityModel(), getMassDensityModelProtoInstance()
      • clearMetadata

        public RigidBodyObject clearMetadata()
        Utility method to clear SFNode value of metadata field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • hasMetadata

        public boolean hasMetadata()
        Indicate whether an object is available for inputOutput SFNode field metadata.
        Returns:
        whether a properly typed node or ProtoInstance or CommentsBlock is available.
        See Also:
        getMetadata(), getMetadataProtoInstance(), X3D Scene Authoring Hints: Metadata Nodes
      • getOrientation

        public float[] getOrientation()
        Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named orientation.

        Tooltip: orientation sets body direction in world space, then reports physics updates. *
        Specified by:
        getOrientation in interface RigidBody
        Returns:
        value of orientation field
      • setOrientation

        public RigidBodyObject setOrientation​(float[] newValue)
        Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named orientation.

        Tooltip: orientation sets body direction in world space, then reports physics updates. *
        Specified by:
        setOrientation in interface RigidBody
        Parameters:
        newValue - is new value for the orientation field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setOrientation

        public RigidBodyObject setOrientation​(SFRotationObject newValue)
        Assign typed object value to SFRotation orientation field, similar to setOrientation(float[]).
        Parameters:
        newValue - is new value for the orientation field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setOrientation

        public RigidBodyObject setOrientation​(float x,
                                              float y,
                                              float z,
                                              float angleRadians)
        Assign values to SFRotation orientation field, similar to setOrientation(float[]).
        Parameters:
        x - first component of axis
        y - second component of axis
        z - third component of axis
        angleRadians - fourth component of rotation around axis
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setOrientation

        public RigidBodyObject setOrientation​(double x,
                                              double y,
                                              double z,
                                              double angleRadians)
        Utility method: double-precision set-parameters accessor for X3D floating-point type, similar to setOrientation(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        angleRadians - fourth component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setOrientation

        public RigidBodyObject setOrientation​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setOrientation(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getPosition

        public float[] getPosition()
        Provide array of 3-tuple float results from inputOutput SFVec3f field named position.

        Tooltip: position sets body location in world space, then reports physics updates. *
        Specified by:
        getPosition in interface RigidBody
        Returns:
        value of position field
      • setPosition

        public RigidBodyObject setPosition​(float[] newValue)
        Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named position.

        Tooltip: position sets body location in world space, then reports physics updates. *
        Specified by:
        setPosition in interface RigidBody
        Parameters:
        newValue - is new value for the position field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setPosition

        public RigidBodyObject setPosition​(SFVec3fObject newValue)
        Assign typed object value to SFVec3f position field, similar to setPosition(float[]).
        Parameters:
        newValue - is new value for the position field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setPosition

        public RigidBodyObject setPosition​(float x,
                                           float y,
                                           float z)
        Assign values to SFVec3f position field, similar to setPosition(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setPosition

        public RigidBodyObject setPosition​(double x,
                                           double y,
                                           double z)
        Utility method: double-precision set-parameters accessor for X3D floating-point type, similar to setPosition(float[]).
        Parameters:
        x - first component
        y - second component
        z - third component
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setPosition

        public RigidBodyObject setPosition​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setPosition(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getTorques

        public float[] getTorques()
        Provide array of 3-tuple float results from inputOutput MFVec3f field named torques.

        Tooltip: torques defines rotational force values applied to the object every frame. *
        Specified by:
        getTorques in interface RigidBody
        Returns:
        value of torques field
      • setTorques

        public RigidBodyObject setTorques​(float[] newValue)
        Accessor method to assign 3-tuple float array to inputOutput MFVec3f field named torques.

        Tooltip: torques defines rotational force values applied to the object every frame. *
        Specified by:
        setTorques in interface RigidBody
        Parameters:
        newValue - is new value for the torques field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setTorques

        public RigidBodyObject setTorques​(MFVec3fObject newValue)
        Assign typed object value to MFVec3f torques field, similar to setTorques(float[]).
        Parameters:
        newValue - is new value for the torques field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • addTorques

        public RigidBodyObject addTorques​(SFVec3fObject newValue)
        Add singleton SFVec3fObject value to MFVec3f torques field.
        Parameters:
        newValue - is new value to add to the torques field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setTorques

        public RigidBodyObject setTorques​(double[] newArray)
        Utility method: double-precision set-array accessor for X3D floating-point type, similar to setTorques(float[]).
        Parameters:
        newArray - is new value for field
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getUseFiniteRotation

        public boolean getUseFiniteRotation()
        Provide boolean value unit axis, angle (in radians) from inputOutput SFBool field named useFiniteRotation.

        Tooltip: useFiniteRotation enables/disables higher-resolution, higher-cost computational method for calculating rotations. *
        Specified by:
        getUseFiniteRotation in interface RigidBody
        Returns:
        value of useFiniteRotation field
      • setUseFiniteRotation

        public RigidBodyObject setUseFiniteRotation​(boolean newValue)
        Accessor method to assign boolean value unit axis, angle (in radians) to inputOutput SFBool field named useFiniteRotation.

        Tooltip: useFiniteRotation enables/disables higher-resolution, higher-cost computational method for calculating rotations. *
        Specified by:
        setUseFiniteRotation in interface RigidBody
        Parameters:
        newValue - is new value for the useFiniteRotation field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setUseFiniteRotation

        public RigidBodyObject setUseFiniteRotation​(SFBoolObject newValue)
        Assign typed object value to SFBool useFiniteRotation field, similar to setUseFiniteRotation(boolean).
        Parameters:
        newValue - is new value for the useFiniteRotation field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getUseGlobalGravity

        public boolean getUseGlobalGravity()
        Provide boolean value from inputOutput SFBool field named useGlobalGravity.

        Tooltip: useGlobalGravity indicates whether this particular body is influenced by parent RigidBodyCollection's gravity setting.
        • Hint: contained sub-bodies are not affected by this setting.
        Specified by:
        getUseGlobalGravity in interface RigidBody
        Returns:
        value of useGlobalGravity field
      • setUseGlobalGravity

        public RigidBodyObject setUseGlobalGravity​(boolean newValue)
        Accessor method to assign boolean value to inputOutput SFBool field named useGlobalGravity.

        Tooltip: useGlobalGravity indicates whether this particular body is influenced by parent RigidBodyCollection's gravity setting.
        • Hint: contained sub-bodies are not affected by this setting.
        Specified by:
        setUseGlobalGravity in interface RigidBody
        Parameters:
        newValue - is new value for the useGlobalGravity field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setUseGlobalGravity

        public RigidBodyObject setUseGlobalGravity​(SFBoolObject newValue)
        Assign typed object value to SFBool useGlobalGravity field, similar to setUseGlobalGravity(boolean).
        Parameters:
        newValue - is new value for the useGlobalGravity field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDEF

        public final RigidBodyObject setDEF​(java.lang.String newValue)
        Accessor method to assign String value to inputOutput SFString field named DEF.

        Tooltip: DEF defines a unique ID name for this node, referenceable by other nodes.

        Note that setting the DEF value clears the USE value.
        Specified by:
        setDEF in class X3DConcreteNode
        Parameters:
        newValue - is new value for the DEF field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setDEF

        public RigidBodyObject setDEF​(SFStringObject newValue)
        Assign typed object value to SFString DEF field, similar to setDEF(String).
        Parameters:
        newValue - is new value for the DEF field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getUSE

        public java.lang.String getUSE()
        Provide String value from inputOutput SFString field named USE.

        Tooltip: USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
        • Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
        • Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
        • Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.
        Overrides:
        getUSE in class X3DConcreteNode
        Returns:
        value of USE field
        See Also:
        X3D Scene Authoring Hints: Naming Conventions
      • setUSE

        public final RigidBodyObject setUSE​(java.lang.String newValue)
        Accessor method to assign String value to inputOutput SFString field named USE.

        Tooltip: USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
        • Hint: USE references to previously defined DEF geometry (instead of duplicating nodes) can improve performance.
        • Warning: do NOT include any child nodes, a DEF attribute, or any other attribute values (except for containerField) when defining a USE attribute.
        • Warning: each USE value must match a corresponding DEF value that is defined earlier in the scene.


        Note: each USE node is still an independent object, with the USE value matching the DEF value in the preceding object.

        Warning: invoking the setUSE() method on this node resets all other fields to their default values (except for containerField) and also releases all child nodes.

        Warning: no other operations can be performed to modify a USE node other than setting an alternate containerField value.
        Specified by:
        setUSE in class X3DConcreteNode
        Parameters:
        newValue - is new value for the USE field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setUSE

        public RigidBodyObject setUSE​(SFStringObject newValue)
        Assign typed object value to SFString USE field, similar to setUSE(String).
        Parameters:
        newValue - is new value for the USE field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • getCssClass

        public java.lang.String getCssClass()
        Provide String value from inputOutput SFString field named class.

        Tooltip: The class attribute is a space-separated list of classes, reserved for use by CSS cascading stylesheets.
        • Warning: currently the class attribute is only supported in XML encoding of X3D scenes.
        • Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSS
        Overrides:
        getCssClass in class X3DConcreteNode
        Returns:
        value of class field
        See Also:
        W3C Cascading Style Sheets
      • setCssClass

        public final RigidBodyObject setCssClass​(java.lang.String newValue)
        Accessor method to assign String value to inputOutput SFString field named class.

        Tooltip: The class attribute is a space-separated list of classes, reserved for use by CSS cascading stylesheets.
        • Warning: currently the class attribute is only supported in XML encoding of X3D scenes.
        • Hint: W3C Cascading Style Sheets https://www.w3.org/Style/CSS
        Specified by:
        setCssClass in class X3DConcreteNode
        Parameters:
        newValue - is new value for the class field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
        See Also:
        W3C Cascading Style Sheets
      • setCssClass

        public RigidBodyObject setCssClass​(SFStringObject newValue)
        Assign typed object value to SFString cssClass field, similar to setCssClass(String).
        Parameters:
        newValue - is new value for the class field.
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • setUSE

        public RigidBodyObject setUSE​(RigidBodyObject DEFnode)
        Assign a USE reference to another DEF node of same node type, similar to setUSE(String).

        Warning: note that the setUSE() method on this node resets all other fields to their default values (except for containerField) and also releases all child nodes.

        Warning: no other operations can be performed to modify a USE node other than setting an alternate containerField value.
        Parameters:
        DEFnode - must have a DEF value defined
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      • addComments

        public RigidBodyObject addComments​(java.lang.String newComment)
        Add comment as String to contained commentsList.
        Specified by:
        addComments in class X3DConcreteElement
        Parameters:
        newComment - initial value
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • addComments

        public RigidBodyObject addComments​(java.lang.String[] newComments)
        Add comments as String[] array to contained commentsList.
        Specified by:
        addComments in class X3DConcreteElement
        Parameters:
        newComments - array of comments
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • addComments

        public RigidBodyObject addComments​(CommentsBlock newCommentsBlock)
        Add CommentsBlock to contained commentsList.
        Specified by:
        addComments in class X3DConcreteElement
        Parameters:
        newCommentsBlock - block of comments to add
        Returns:
        RigidBodyObject - namely this same object to allow sequential method pipelining (i.e. consecutive setAttribute method invocations).
      • findElementByNameValue

        public X3DConcreteElement findElementByNameValue​(java.lang.String nameValue)
        Recursive method to provide object reference to node or statement by name attribute, if found as part of this element or in a contained element. Elements with name fields include meta, Metadata* nodes, field/fieldValue, ProtoDeclare/ExternProtoDeclare/ProtoInstance, CAD and HAnim nodes.

        Warning: first start with findAncestorSceneObject() to check entire scene graph, or findAncestorX3DObject() to check entire model document.

        Warning: more than one element may be found that has the same name, this method does not handle that case.
        Specified by:
        findElementByNameValue in class X3DConcreteElement
        Parameters:
        nameValue - is value of the name field being searched for in this element and child elements(if any)
        Returns:
        object reference to found element, null otherwise
        See Also:
        findNodeByDEF(String), X3DConcreteElement.hasAncestorSceneObject(), X3DConcreteElement.findAncestorX3DObject()
      • findElementByNameValue

        public X3DConcreteElement findElementByNameValue​(java.lang.String nameValue,
                                                         java.lang.String elementName)
        Recursive method to provide object reference to node or statement by name attribute, if found as part of this element or in a contained element. Elements with name fields include meta, Metadata* nodes, field/fieldValue, ProtoDeclare/ExternProtoDeclare/ProtoInstance, CAD and HAnim nodes.

        Warning: first start with findAncestorSceneObject() to check entire scene graph, or findAncestorX3DObject() to check entire model document.

        Warning: more than one element may be found that has the same name, this method does not handle that case.
        Specified by:
        findElementByNameValue in class X3DConcreteElement
        Parameters:
        nameValue - is value of the name field being searched for in this element and child elements(if any)
        elementName - identifies the element of interest (meta MetadataString ProtoDeclare CADassembly ProtoInstance HAnimHumanoid etc.)
        Returns:
        object reference to found element, null otherwise
        See Also:
        findNodeByDEF(String), X3DConcreteElement.hasAncestorSceneObject(), X3DConcreteElement.findAncestorX3DObject()
      • hasElementByNameValue

        public boolean hasElementByNameValue​(java.lang.String nameValue,
                                             java.lang.String elementName)
        Recursive method to determine whether node or statement with given name attribute is found, meaning both objects are attached to same scene graph.
        Parameters:
        nameValue - is value of the name field being searched for in this element and child elements(if any)
        elementName - identifies the element of interest (meta MetadataString ProtoDeclare CADassembly ProtoInstance HAnimHumanoid etc.)
        Returns:
        whether node is found
        See Also:
        findElementByNameValue(String, String)
      • hasNodeByDEF

        public boolean hasNodeByDEF​(java.lang.String DEFvalue)
        Recursive method to determine whether node with DEFvalue is found, meaning both objects are attached to same scene graph.
        Parameters:
        DEFvalue - is value of the name field being searched for in this element and child elements(if any)
        Returns:
        whether node is found
        See Also:
        findNodeByDEF(String)
      • validate

        public java.lang.String validate()
        Recursive method to validate this element plus all contained nodes and statements, using both datatype-specification value checks and regular expression (regex) checking of corresponding string values.
        Specified by:
        validate in class X3DConcreteElement
        Returns:
        validation results (if any)