All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.badlogic.gdx.physics.bullet.dynamics.btMultiBody Maven / Gradle / Ivy

There is a newer version: 1.12.1
Show newest version
/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 3.0.11
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package com.badlogic.gdx.physics.bullet.dynamics;

import com.badlogic.gdx.physics.bullet.BulletBase;
import com.badlogic.gdx.physics.bullet.linearmath.*;
import com.badlogic.gdx.physics.bullet.collision.*;
import com.badlogic.gdx.math.Vector3;
import com.badlogic.gdx.math.Quaternion;
import com.badlogic.gdx.math.Matrix3;
import com.badlogic.gdx.math.Matrix4;

public class btMultiBody extends BulletBase {
	private long swigCPtr;
	
	protected btMultiBody(final String className, long cPtr, boolean cMemoryOwn) {
		super(className, cPtr, cMemoryOwn);
		swigCPtr = cPtr;
	}
	
	/** Construct a new btMultiBody, normally you should not need this constructor it's intended for low-level usage. */ 
	public btMultiBody(long cPtr, boolean cMemoryOwn) {
		this("btMultiBody", cPtr, cMemoryOwn);
		construct();
	}
	
	@Override
	protected void reset(long cPtr, boolean cMemoryOwn) {
		if (!destroyed)
			destroy();
		super.reset(swigCPtr = cPtr, cMemoryOwn);
	}
	
	public static long getCPtr(btMultiBody obj) {
		return (obj == null) ? 0 : obj.swigCPtr;
	}

	@Override
	protected void finalize() throws Throwable {
		if (!destroyed)
			destroy();
		super.finalize();
	}

  @Override protected synchronized void delete() {
		if (swigCPtr != 0) {
			if (swigCMemOwn) {
				swigCMemOwn = false;
				DynamicsJNI.delete_btMultiBody(swigCPtr);
			}
			swigCPtr = 0;
		}
		super.delete();
	}

  public long operatorNew(long sizeInBytes) {
    return DynamicsJNI.btMultiBody_operatorNew__SWIG_0(swigCPtr, this, sizeInBytes);
  }

  public void operatorDelete(long ptr) {
    DynamicsJNI.btMultiBody_operatorDelete__SWIG_0(swigCPtr, this, ptr);
  }

  public long operatorNew(long arg0, long ptr) {
    return DynamicsJNI.btMultiBody_operatorNew__SWIG_1(swigCPtr, this, arg0, ptr);
  }

  public void operatorDelete(long arg0, long arg1) {
    DynamicsJNI.btMultiBody_operatorDelete__SWIG_1(swigCPtr, this, arg0, arg1);
  }

  public long operatorNewArray(long sizeInBytes) {
    return DynamicsJNI.btMultiBody_operatorNewArray__SWIG_0(swigCPtr, this, sizeInBytes);
  }

  public void operatorDeleteArray(long ptr) {
    DynamicsJNI.btMultiBody_operatorDeleteArray__SWIG_0(swigCPtr, this, ptr);
  }

  public long operatorNewArray(long arg0, long ptr) {
    return DynamicsJNI.btMultiBody_operatorNewArray__SWIG_1(swigCPtr, this, arg0, ptr);
  }

  public void operatorDeleteArray(long arg0, long arg1) {
    DynamicsJNI.btMultiBody_operatorDeleteArray__SWIG_1(swigCPtr, this, arg0, arg1);
  }

  public btMultiBody(int n_links, float mass, Vector3 inertia, boolean fixedBase, boolean canSleep, boolean deprecatedMultiDof) {
    this(DynamicsJNI.new_btMultiBody__SWIG_0(n_links, mass, inertia, fixedBase, canSleep, deprecatedMultiDof), true);
  }

  public btMultiBody(int n_links, float mass, Vector3 inertia, boolean fixedBase, boolean canSleep) {
    this(DynamicsJNI.new_btMultiBody__SWIG_1(n_links, mass, inertia, fixedBase, canSleep), true);
  }

  public void setupFixed(int linkIndex, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset, boolean deprecatedDisableParentCollision) {
    DynamicsJNI.btMultiBody_setupFixed__SWIG_0(swigCPtr, this, linkIndex, mass, inertia, parent, rotParentToThis, parentComToThisPivotOffset, thisPivotToThisComOffset, deprecatedDisableParentCollision);
  }

  public void setupFixed(int linkIndex, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset) {
    DynamicsJNI.btMultiBody_setupFixed__SWIG_1(swigCPtr, this, linkIndex, mass, inertia, parent, rotParentToThis, parentComToThisPivotOffset, thisPivotToThisComOffset);
  }

  public void setupPrismatic(int i, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 jointAxis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset, boolean disableParentCollision) {
    DynamicsJNI.btMultiBody_setupPrismatic(swigCPtr, this, i, mass, inertia, parent, rotParentToThis, jointAxis, parentComToThisPivotOffset, thisPivotToThisComOffset, disableParentCollision);
  }

  public void setupRevolute(int linkIndex, float mass, Vector3 inertia, int parentIndex, Quaternion rotParentToThis, Vector3 jointAxis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset, boolean disableParentCollision) {
    DynamicsJNI.btMultiBody_setupRevolute__SWIG_0(swigCPtr, this, linkIndex, mass, inertia, parentIndex, rotParentToThis, jointAxis, parentComToThisPivotOffset, thisPivotToThisComOffset, disableParentCollision);
  }

  public void setupRevolute(int linkIndex, float mass, Vector3 inertia, int parentIndex, Quaternion rotParentToThis, Vector3 jointAxis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset) {
    DynamicsJNI.btMultiBody_setupRevolute__SWIG_1(swigCPtr, this, linkIndex, mass, inertia, parentIndex, rotParentToThis, jointAxis, parentComToThisPivotOffset, thisPivotToThisComOffset);
  }

  public void setupSpherical(int linkIndex, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset, boolean disableParentCollision) {
    DynamicsJNI.btMultiBody_setupSpherical__SWIG_0(swigCPtr, this, linkIndex, mass, inertia, parent, rotParentToThis, parentComToThisPivotOffset, thisPivotToThisComOffset, disableParentCollision);
  }

  public void setupSpherical(int linkIndex, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 parentComToThisPivotOffset, Vector3 thisPivotToThisComOffset) {
    DynamicsJNI.btMultiBody_setupSpherical__SWIG_1(swigCPtr, this, linkIndex, mass, inertia, parent, rotParentToThis, parentComToThisPivotOffset, thisPivotToThisComOffset);
  }

  public void setupPlanar(int i, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 rotationAxis, Vector3 parentComToThisComOffset, boolean disableParentCollision) {
    DynamicsJNI.btMultiBody_setupPlanar__SWIG_0(swigCPtr, this, i, mass, inertia, parent, rotParentToThis, rotationAxis, parentComToThisComOffset, disableParentCollision);
  }

  public void setupPlanar(int i, float mass, Vector3 inertia, int parent, Quaternion rotParentToThis, Vector3 rotationAxis, Vector3 parentComToThisComOffset) {
    DynamicsJNI.btMultiBody_setupPlanar__SWIG_1(swigCPtr, this, i, mass, inertia, parent, rotParentToThis, rotationAxis, parentComToThisComOffset);
  }

  public btMultibodyLink getLinkConst(int index) {
    return new btMultibodyLink(DynamicsJNI.btMultiBody_getLinkConst(swigCPtr, this, index), false);
  }

  public btMultibodyLink getLink(int index) {
    return new btMultibodyLink(DynamicsJNI.btMultiBody_getLink(swigCPtr, this, index), false);
  }

  public void setBaseCollider(btMultiBodyLinkCollider collider) {
    DynamicsJNI.btMultiBody_setBaseCollider(swigCPtr, this, btMultiBodyLinkCollider.getCPtr(collider), collider);
  }

  public btMultiBodyLinkCollider getBaseColliderConst() {
    long cPtr = DynamicsJNI.btMultiBody_getBaseColliderConst(swigCPtr, this);
    return (cPtr == 0) ? null : new btMultiBodyLinkCollider(cPtr, false);
  }

  public btMultiBodyLinkCollider getBaseCollider() {
    long cPtr = DynamicsJNI.btMultiBody_getBaseCollider(swigCPtr, this);
    return (cPtr == 0) ? null : new btMultiBodyLinkCollider(cPtr, false);
  }

  public btMultiBodyLinkCollider getLinkCollider(int index) {
    long cPtr = DynamicsJNI.btMultiBody_getLinkCollider(swigCPtr, this, index);
    return (cPtr == 0) ? null : new btMultiBodyLinkCollider(cPtr, false);
  }

  public int getParent(int link_num) {
    return DynamicsJNI.btMultiBody_getParent(swigCPtr, this, link_num);
  }

  public int getNumLinks() {
    return DynamicsJNI.btMultiBody_getNumLinks(swigCPtr, this);
  }

  public int getNumDofs() {
    return DynamicsJNI.btMultiBody_getNumDofs(swigCPtr, this);
  }

  public int getNumPosVars() {
    return DynamicsJNI.btMultiBody_getNumPosVars(swigCPtr, this);
  }

  public float getBaseMass() {
    return DynamicsJNI.btMultiBody_getBaseMass(swigCPtr, this);
  }

  public Vector3 getBaseInertia() {
	return DynamicsJNI.btMultiBody_getBaseInertia(swigCPtr, this);
}

  public float getLinkMass(int i) {
    return DynamicsJNI.btMultiBody_getLinkMass(swigCPtr, this, i);
  }

  public Vector3 getLinkInertia(int i) {
	return DynamicsJNI.btMultiBody_getLinkInertia(swigCPtr, this, i);
}

  public void setBaseMass(float mass) {
    DynamicsJNI.btMultiBody_setBaseMass(swigCPtr, this, mass);
  }

  public void setBaseInertia(Vector3 inertia) {
    DynamicsJNI.btMultiBody_setBaseInertia(swigCPtr, this, inertia);
  }

  public Vector3 getBasePos() {
	return DynamicsJNI.btMultiBody_getBasePos(swigCPtr, this);
}

  public Vector3 getBaseVel() {
	return DynamicsJNI.btMultiBody_getBaseVel(swigCPtr, this);
}

  public Quaternion getWorldToBaseRot() {
	return DynamicsJNI.btMultiBody_getWorldToBaseRot(swigCPtr, this);
}

  public Vector3 getBaseOmega() {
	return DynamicsJNI.btMultiBody_getBaseOmega(swigCPtr, this);
}

  public void setBasePos(Vector3 pos) {
    DynamicsJNI.btMultiBody_setBasePos(swigCPtr, this, pos);
  }

  public void setBaseWorldTransform(Matrix4 tr) {
    DynamicsJNI.btMultiBody_setBaseWorldTransform(swigCPtr, this, tr);
  }

  public Matrix4 getBaseWorldTransform() {
	return DynamicsJNI.btMultiBody_getBaseWorldTransform(swigCPtr, this);
}

  public void setBaseVel(Vector3 vel) {
    DynamicsJNI.btMultiBody_setBaseVel(swigCPtr, this, vel);
  }

  public void setWorldToBaseRot(Quaternion rot) {
    DynamicsJNI.btMultiBody_setWorldToBaseRot(swigCPtr, this, rot);
  }

  public void setBaseOmega(Vector3 omega) {
    DynamicsJNI.btMultiBody_setBaseOmega(swigCPtr, this, omega);
  }

  public float getJointPos(int i) {
    return DynamicsJNI.btMultiBody_getJointPos(swigCPtr, this, i);
  }

  public float getJointVel(int i) {
    return DynamicsJNI.btMultiBody_getJointVel(swigCPtr, this, i);
  }

  public java.nio.FloatBuffer getJointVelMultiDof(int i) {
    return DynamicsJNI.btMultiBody_getJointVelMultiDof(swigCPtr, this, i);
}

  public java.nio.FloatBuffer getJointPosMultiDof(int i) {
    return DynamicsJNI.btMultiBody_getJointPosMultiDof(swigCPtr, this, i);
}

  public java.nio.FloatBuffer getJointVelMultiDofConst(int i) {
    return DynamicsJNI.btMultiBody_getJointVelMultiDofConst(swigCPtr, this, i);
}

  public java.nio.FloatBuffer getJointPosMultiDofConst(int i) {
    return DynamicsJNI.btMultiBody_getJointPosMultiDofConst(swigCPtr, this, i);
}

  public void setJointPos(int i, float q) {
    DynamicsJNI.btMultiBody_setJointPos(swigCPtr, this, i, q);
  }

  public void setJointVel(int i, float qdot) {
    DynamicsJNI.btMultiBody_setJointVel(swigCPtr, this, i, qdot);
  }

  public void setJointPosMultiDof(int i, java.nio.FloatBuffer q) {
    assert q.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_setJointPosMultiDof(swigCPtr, this, i, q);
    }
  }

  public void setJointVelMultiDof(int i, java.nio.FloatBuffer qdot) {
    assert qdot.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_setJointVelMultiDof(swigCPtr, this, i, qdot);
    }
  }

  public java.nio.FloatBuffer getVelocityVector() {
    return DynamicsJNI.btMultiBody_getVelocityVector(swigCPtr, this);
}

  public Vector3 getRVector(int i) {
	return DynamicsJNI.btMultiBody_getRVector(swigCPtr, this, i);
}

  public Quaternion getParentToLocalRot(int i) {
	return DynamicsJNI.btMultiBody_getParentToLocalRot(swigCPtr, this, i);
}

  public Vector3 localPosToWorld(int i, Vector3 vec) {
	return DynamicsJNI.btMultiBody_localPosToWorld(swigCPtr, this, i, vec);
}

  public Vector3 localDirToWorld(int i, Vector3 vec) {
	return DynamicsJNI.btMultiBody_localDirToWorld(swigCPtr, this, i, vec);
}

  public Vector3 worldPosToLocal(int i, Vector3 vec) {
	return DynamicsJNI.btMultiBody_worldPosToLocal(swigCPtr, this, i, vec);
}

  public Vector3 worldDirToLocal(int i, Vector3 vec) {
	return DynamicsJNI.btMultiBody_worldDirToLocal(swigCPtr, this, i, vec);
}

  public Matrix3 localFrameToWorld(int i, Matrix3 mat) {
	return DynamicsJNI.btMultiBody_localFrameToWorld(swigCPtr, this, i, mat);
}

  public float getKineticEnergy() {
    return DynamicsJNI.btMultiBody_getKineticEnergy(swigCPtr, this);
  }

  public Vector3 getAngularMomentum() {
	return DynamicsJNI.btMultiBody_getAngularMomentum(swigCPtr, this);
}

  public void clearForcesAndTorques() {
    DynamicsJNI.btMultiBody_clearForcesAndTorques(swigCPtr, this);
  }

  public void clearConstraintForces() {
    DynamicsJNI.btMultiBody_clearConstraintForces(swigCPtr, this);
  }

  public void clearVelocities() {
    DynamicsJNI.btMultiBody_clearVelocities(swigCPtr, this);
  }

  public void addBaseForce(Vector3 f) {
    DynamicsJNI.btMultiBody_addBaseForce(swigCPtr, this, f);
  }

  public void addBaseTorque(Vector3 t) {
    DynamicsJNI.btMultiBody_addBaseTorque(swigCPtr, this, t);
  }

  public void addLinkForce(int i, Vector3 f) {
    DynamicsJNI.btMultiBody_addLinkForce(swigCPtr, this, i, f);
  }

  public void addLinkTorque(int i, Vector3 t) {
    DynamicsJNI.btMultiBody_addLinkTorque(swigCPtr, this, i, t);
  }

  public void addBaseConstraintForce(Vector3 f) {
    DynamicsJNI.btMultiBody_addBaseConstraintForce(swigCPtr, this, f);
  }

  public void addBaseConstraintTorque(Vector3 t) {
    DynamicsJNI.btMultiBody_addBaseConstraintTorque(swigCPtr, this, t);
  }

  public void addLinkConstraintForce(int i, Vector3 f) {
    DynamicsJNI.btMultiBody_addLinkConstraintForce(swigCPtr, this, i, f);
  }

  public void addLinkConstraintTorque(int i, Vector3 t) {
    DynamicsJNI.btMultiBody_addLinkConstraintTorque(swigCPtr, this, i, t);
  }

  public void addJointTorque(int i, float Q) {
    DynamicsJNI.btMultiBody_addJointTorque(swigCPtr, this, i, Q);
  }

  public void addJointTorqueMultiDof(int i, int dof, float Q) {
    DynamicsJNI.btMultiBody_addJointTorqueMultiDof__SWIG_0(swigCPtr, this, i, dof, Q);
  }

  public void addJointTorqueMultiDof(int i, java.nio.FloatBuffer Q) {
    assert Q.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_addJointTorqueMultiDof__SWIG_1(swigCPtr, this, i, Q);
    }
  }

  public Vector3 getBaseForce() {
	return DynamicsJNI.btMultiBody_getBaseForce(swigCPtr, this);
}

  public Vector3 getBaseTorque() {
	return DynamicsJNI.btMultiBody_getBaseTorque(swigCPtr, this);
}

  public Vector3 getLinkForce(int i) {
	return DynamicsJNI.btMultiBody_getLinkForce(swigCPtr, this, i);
}

  public Vector3 getLinkTorque(int i) {
	return DynamicsJNI.btMultiBody_getLinkTorque(swigCPtr, this, i);
}

  public float getJointTorque(int i) {
    return DynamicsJNI.btMultiBody_getJointTorque(swigCPtr, this, i);
  }

  public java.nio.FloatBuffer getJointTorqueMultiDof(int i) {
    return DynamicsJNI.btMultiBody_getJointTorqueMultiDof(swigCPtr, this, i);
}

  public void computeAccelerationsArticulatedBodyAlgorithmMultiDof(float dt, btScalarArray scratch_r, btVector3Array scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t scratch_m, boolean isConstraintPass) {
    DynamicsJNI.btMultiBody_computeAccelerationsArticulatedBodyAlgorithmMultiDof__SWIG_0(swigCPtr, this, dt, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t.getCPtr(scratch_m), isConstraintPass);
  }

  public void computeAccelerationsArticulatedBodyAlgorithmMultiDof(float dt, btScalarArray scratch_r, btVector3Array scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t scratch_m) {
    DynamicsJNI.btMultiBody_computeAccelerationsArticulatedBodyAlgorithmMultiDof__SWIG_1(swigCPtr, this, dt, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t.getCPtr(scratch_m));
  }

  public void stepVelocitiesMultiDof(float dt, btScalarArray scratch_r, btVector3Array scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t scratch_m, boolean isConstraintPass) {
    DynamicsJNI.btMultiBody_stepVelocitiesMultiDof__SWIG_0(swigCPtr, this, dt, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t.getCPtr(scratch_m), isConstraintPass);
  }

  public void stepVelocitiesMultiDof(float dt, btScalarArray scratch_r, btVector3Array scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t scratch_m) {
    DynamicsJNI.btMultiBody_stepVelocitiesMultiDof__SWIG_1(swigCPtr, this, dt, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t.getCPtr(scratch_m));
  }

  public void calcAccelerationDeltasMultiDof(java.nio.FloatBuffer force, java.nio.FloatBuffer output, btScalarArray scratch_r, btVector3Array scratch_v) {
    assert force.isDirect() : "Buffer must be allocated direct.";
    assert output.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_calcAccelerationDeltasMultiDof(swigCPtr, this, force, output, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v);
    }
  }

  public void applyDeltaVeeMultiDof2(java.nio.FloatBuffer delta_vee, float multiplier) {
    assert delta_vee.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_applyDeltaVeeMultiDof2(swigCPtr, this, delta_vee, multiplier);
    }
  }

  public void processDeltaVeeMultiDof2() {
    DynamicsJNI.btMultiBody_processDeltaVeeMultiDof2(swigCPtr, this);
  }

  public void applyDeltaVeeMultiDof(java.nio.FloatBuffer delta_vee, float multiplier) {
    assert delta_vee.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_applyDeltaVeeMultiDof(swigCPtr, this, delta_vee, multiplier);
    }
  }

  public void stepPositionsMultiDof(float dt, java.nio.FloatBuffer pq, java.nio.FloatBuffer pqd) {
    assert pq.isDirect() : "Buffer must be allocated direct.";
    assert pqd.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_stepPositionsMultiDof__SWIG_0(swigCPtr, this, dt, pq, pqd);
    }
  }

  public void stepPositionsMultiDof(float dt, java.nio.FloatBuffer pq) {
    assert pq.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_stepPositionsMultiDof__SWIG_1(swigCPtr, this, dt, pq);
    }
  }

  public void stepPositionsMultiDof(float dt) {
    DynamicsJNI.btMultiBody_stepPositionsMultiDof__SWIG_2(swigCPtr, this, dt);
  }

  public void fillContactJacobianMultiDof(int link, Vector3 contact_point, Vector3 normal, java.nio.FloatBuffer jac, btScalarArray scratch_r, btVector3Array scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t scratch_m) {
    assert jac.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_fillContactJacobianMultiDof(swigCPtr, this, link, contact_point, normal, jac, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t.getCPtr(scratch_m));
    }
  }

  public void fillConstraintJacobianMultiDof(int link, Vector3 contact_point, Vector3 normal_ang, Vector3 normal_lin, java.nio.FloatBuffer jac, btScalarArray scratch_r, btVector3Array scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t scratch_m) {
    assert jac.isDirect() : "Buffer must be allocated direct.";
    {
      DynamicsJNI.btMultiBody_fillConstraintJacobianMultiDof(swigCPtr, this, link, contact_point, normal_ang, normal_lin, jac, btScalarArray.getCPtr(scratch_r), scratch_r, btVector3Array.getCPtr(scratch_v), scratch_v, SWIGTYPE_p_btAlignedObjectArrayT_btMatrix3x3_t.getCPtr(scratch_m));
    }
  }

  public void setCanSleep(boolean canSleep) {
    DynamicsJNI.btMultiBody_setCanSleep(swigCPtr, this, canSleep);
  }

  public boolean getCanSleep() {
    return DynamicsJNI.btMultiBody_getCanSleep(swigCPtr, this);
  }

  public boolean isAwake() {
    return DynamicsJNI.btMultiBody_isAwake(swigCPtr, this);
  }

  public void wakeUp() {
    DynamicsJNI.btMultiBody_wakeUp(swigCPtr, this);
  }

  public void goToSleep() {
    DynamicsJNI.btMultiBody_goToSleep(swigCPtr, this);
  }

  public void checkMotionAndSleepIfRequired(float timestep) {
    DynamicsJNI.btMultiBody_checkMotionAndSleepIfRequired(swigCPtr, this, timestep);
  }

  public boolean hasFixedBase() {
    return DynamicsJNI.btMultiBody_hasFixedBase(swigCPtr, this);
  }

  public int getCompanionId() {
    return DynamicsJNI.btMultiBody_getCompanionId(swigCPtr, this);
  }

  public void setCompanionId(int id) {
    DynamicsJNI.btMultiBody_setCompanionId(swigCPtr, this, id);
  }

  public void setNumLinks(int numLinks) {
    DynamicsJNI.btMultiBody_setNumLinks(swigCPtr, this, numLinks);
  }

  public float getLinearDamping() {
    return DynamicsJNI.btMultiBody_getLinearDamping(swigCPtr, this);
  }

  public void setLinearDamping(float damp) {
    DynamicsJNI.btMultiBody_setLinearDamping(swigCPtr, this, damp);
  }

  public float getAngularDamping() {
    return DynamicsJNI.btMultiBody_getAngularDamping(swigCPtr, this);
  }

  public void setAngularDamping(float damp) {
    DynamicsJNI.btMultiBody_setAngularDamping(swigCPtr, this, damp);
  }

  public boolean getUseGyroTerm() {
    return DynamicsJNI.btMultiBody_getUseGyroTerm(swigCPtr, this);
  }

  public void setUseGyroTerm(boolean useGyro) {
    DynamicsJNI.btMultiBody_setUseGyroTerm(swigCPtr, this, useGyro);
  }

  public float getMaxCoordinateVelocity() {
    return DynamicsJNI.btMultiBody_getMaxCoordinateVelocity(swigCPtr, this);
  }

  public void setMaxCoordinateVelocity(float maxVel) {
    DynamicsJNI.btMultiBody_setMaxCoordinateVelocity(swigCPtr, this, maxVel);
  }

  public float getMaxAppliedImpulse() {
    return DynamicsJNI.btMultiBody_getMaxAppliedImpulse(swigCPtr, this);
  }

  public void setMaxAppliedImpulse(float maxImp) {
    DynamicsJNI.btMultiBody_setMaxAppliedImpulse(swigCPtr, this, maxImp);
  }

  public void setHasSelfCollision(boolean hasSelfCollision) {
    DynamicsJNI.btMultiBody_setHasSelfCollision(swigCPtr, this, hasSelfCollision);
  }

  public boolean hasSelfCollision() {
    return DynamicsJNI.btMultiBody_hasSelfCollision(swigCPtr, this);
  }

  public void finalizeMultiDof() {
    DynamicsJNI.btMultiBody_finalizeMultiDof(swigCPtr, this);
  }

  public void useRK4Integration(boolean use) {
    DynamicsJNI.btMultiBody_useRK4Integration(swigCPtr, this, use);
  }

  public boolean isUsingRK4Integration() {
    return DynamicsJNI.btMultiBody_isUsingRK4Integration(swigCPtr, this);
  }

  public void useGlobalVelocities(boolean use) {
    DynamicsJNI.btMultiBody_useGlobalVelocities(swigCPtr, this, use);
  }

  public boolean isUsingGlobalVelocities() {
    return DynamicsJNI.btMultiBody_isUsingGlobalVelocities(swigCPtr, this);
  }

  public boolean isPosUpdated() {
    return DynamicsJNI.btMultiBody_isPosUpdated(swigCPtr, this);
  }

  public void setPosUpdated(boolean updated) {
    DynamicsJNI.btMultiBody_setPosUpdated(swigCPtr, this, updated);
  }

  public boolean internalNeedsJointFeedback() {
    return DynamicsJNI.btMultiBody_internalNeedsJointFeedback(swigCPtr, this);
  }

  public void forwardKinematics(SWIGTYPE_p_btAlignedObjectArrayT_btQuaternion_t scratch_q, btVector3Array scratch_m) {
    DynamicsJNI.btMultiBody_forwardKinematics(swigCPtr, this, SWIGTYPE_p_btAlignedObjectArrayT_btQuaternion_t.getCPtr(scratch_q), btVector3Array.getCPtr(scratch_m), scratch_m);
  }

  public void compTreeLinkVelocities(btVector3 omega, btVector3 vel) {
    DynamicsJNI.btMultiBody_compTreeLinkVelocities(swigCPtr, this, btVector3.getCPtr(omega), omega, btVector3.getCPtr(vel), vel);
  }

  public void updateCollisionObjectWorldTransforms(SWIGTYPE_p_btAlignedObjectArrayT_btQuaternion_t scratch_q, btVector3Array scratch_m) {
    DynamicsJNI.btMultiBody_updateCollisionObjectWorldTransforms(swigCPtr, this, SWIGTYPE_p_btAlignedObjectArrayT_btQuaternion_t.getCPtr(scratch_q), btVector3Array.getCPtr(scratch_m), scratch_m);
  }

  public int calculateSerializeBufferSize() {
    return DynamicsJNI.btMultiBody_calculateSerializeBufferSize(swigCPtr, this);
  }

  public String serialize(long dataBuffer, btSerializer serializer) {
    return DynamicsJNI.btMultiBody_serialize(swigCPtr, this, dataBuffer, btSerializer.getCPtr(serializer), serializer);
  }

  public String getBaseName() {
    return DynamicsJNI.btMultiBody_getBaseName(swigCPtr, this);
  }

  public void setBaseName(String name) {
    DynamicsJNI.btMultiBody_setBaseName(swigCPtr, this, name);
  }

  public long getUserPointer() {
    return DynamicsJNI.btMultiBody_getUserPointer(swigCPtr, this);
  }

  public int getUserIndex() {
    return DynamicsJNI.btMultiBody_getUserIndex(swigCPtr, this);
  }

  public int getUserIndex2() {
    return DynamicsJNI.btMultiBody_getUserIndex2(swigCPtr, this);
  }

  public void setUserPointer(long userPointer) {
    DynamicsJNI.btMultiBody_setUserPointer(swigCPtr, this, userPointer);
  }

  public void setUserIndex(int index) {
    DynamicsJNI.btMultiBody_setUserIndex(swigCPtr, this, index);
  }

  public void setUserIndex2(int index) {
    DynamicsJNI.btMultiBody_setUserIndex2(swigCPtr, this, index);
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy