Lens Scripting API

    Class Constraint

    Constraints body motion in configurable ways, for simulating physical objects such as joints and hinges.

    // Given two objects, with hangingBox below staticBox
    // apply a constraint on hangingBox so that it hangs on the staticBox
    // Try assigning a box object for each input!

    // @input SceneObject staticBox
    // @input SceneObject hangingBox

    // Setup the boxes to have physics
    var staticBox = script.staticBox;
    var staticBoxBody = staticBox.createComponent("Physics.BodyComponent");
    staticBoxBody.dynamic = false;

    var hangingBox = script.hangingBox;
    var hangingBoxBody = hangingBox.createComponent("Physics.BodyComponent");

    // Create a child object that we can set up as our hinge
    var hingeObj = global.scene.createSceneObject("hinge");
    hingeObj.setParent(hangingBox);

    // First we use the child object as a constraint
    var hingeConstraint = hingeObj.createComponent("Physics.ConstraintComponent");

    // Then we set up the constraint as a hinge
    hingeConstraint.debugDrawEnabled = true;
    hingeConstraint.constraint = Physics.Constraint.create(Physics.ConstraintType.Hinge);

    // Attach our hinge to another Physics body
    hingeConstraint.target = staticBoxBody;

    // Position the hinge
    hingeObj.getTransform().setLocalPosition(new vec3(-7.5, 7.5, 0))

    // Tell the system to recalculate the simulation based on the above parameters
    hingeConstraint.reanchorTarget();

    Hierarchy (View Summary, Expand)

    Index

    Constructors

    Properties

    Methods

    Constructors

    Properties

    constraintType: ConstraintType

    The type of constraint that is applied.

    Methods

    • Returns true if the object matches or derives from the passed in type.

      Parameters

      • type: string

      Returns boolean

    • Returns true if this object is the same as other. Useful for checking if two references point to the same thing.

      Parameters

      Returns boolean

    MMNEPVFCICPMFPCPTTAAATR