本文整理汇总了Java中org.jbox2d.dynamics.joints.JointDef类的典型用法代码示例。如果您正苦于以下问题:Java JointDef类的具体用法?Java JointDef怎么用?Java JointDef使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
JointDef类属于org.jbox2d.dynamics.joints包,在下文中一共展示了JointDef类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: newEngineInstance
import org.jbox2d.dynamics.joints.JointDef; //导入依赖的package包/类
@Override
public JointDef newEngineInstance()
{
RevoluteJointDef jointDef = new RevoluteJointDef();
jointDef.localAnchorA = localAnchorA.toVec2();
jointDef.localAnchorB = localAnchorB.toVec2();
jointDef.enableLimit = limitEnabled;
if (limitEnabled)
{
jointDef.lowerAngle = lowerAngleLimit;
jointDef.upperAngle = upperAngleLimit;
}
jointDef.enableMotor = motorEnabled;
if (motorEnabled)
{
jointDef.motorSpeed = motorSpeed;
jointDef.maxMotorTorque = maxMotorTorque;
}
return jointDef;
}
示例2: createJoint
import org.jbox2d.dynamics.joints.JointDef; //导入依赖的package包/类
/**
* create a joint to constrain bodies together. No reference to the definition is retained. This
* may cause the connected bodies to cease colliding.
*
* @warning This function is locked during callbacks.
* @param def
* @return
*/
public Joint createJoint(JointDef def) {
assert (isLocked() == false);
if (isLocked()) {
return null;
}
Joint j = Joint.create(this, def);
// Connect to the world list.
j.m_prev = null;
j.m_next = m_jointList;
if (m_jointList != null) {
m_jointList.m_prev = j;
}
m_jointList = j;
++m_jointCount;
// Connect to the bodies' doubly linked lists.
j.m_edgeA.joint = j;
j.m_edgeA.other = j.getBodyB();
j.m_edgeA.prev = null;
j.m_edgeA.next = j.getBodyA().m_jointList;
if (j.getBodyA().m_jointList != null) {
j.getBodyA().m_jointList.prev = j.m_edgeA;
}
j.getBodyA().m_jointList = j.m_edgeA;
j.m_edgeB.joint = j;
j.m_edgeB.other = j.getBodyA();
j.m_edgeB.prev = null;
j.m_edgeB.next = j.getBodyB().m_jointList;
if (j.getBodyB().m_jointList != null) {
j.getBodyB().m_jointList.prev = j.m_edgeB;
}
j.getBodyB().m_jointList = j.m_edgeB;
Body bodyA = def.bodyA;
Body bodyB = def.bodyB;
// If the joint prevents collisions, then flag any contacts for filtering.
if (def.collideConnected == false) {
ContactEdge edge = bodyB.getContactList();
while (edge != null) {
if (edge.other == bodyA) {
// Flag the contact for filtering at the next time step (where either
// body is awake).
edge.contact.flagForFiltering();
}
edge = edge.next;
}
}
// Note: creating a joint doesn't wake the bodies.
return j;
}
示例3: createJoint
import org.jbox2d.dynamics.joints.JointDef; //导入依赖的package包/类
/**
* create a joint to constrain bodies together. No reference to the definition
* is retained. This may cause the connected bodies to cease colliding.
*
* @warning This function is locked during callbacks.
* @param def
* @return
*/
public Joint createJoint(JointDef def) {
assert (isLocked() == false);
if (isLocked()) {
return null;
}
Joint j = Joint.create(this, def);
// Connect to the world list.
j.m_prev = null;
j.m_next = m_jointList;
if (m_jointList != null) {
m_jointList.m_prev = j;
}
m_jointList = j;
++m_jointCount;
// Connect to the bodies' doubly linked lists.
j.m_edgeA.joint = j;
j.m_edgeA.other = j.m_bodyB;
j.m_edgeA.prev = null;
j.m_edgeA.next = j.m_bodyA.m_jointList;
if (j.m_bodyA.m_jointList != null) {
j.m_bodyA.m_jointList.prev = j.m_edgeA;
}
j.m_bodyA.m_jointList = j.m_edgeA;
j.m_edgeB.joint = j;
j.m_edgeB.other = j.m_bodyA;
j.m_edgeB.prev = null;
j.m_edgeB.next = j.m_bodyB.m_jointList;
if (j.m_bodyB.m_jointList != null) {
j.m_bodyB.m_jointList.prev = j.m_edgeB;
}
j.m_bodyB.m_jointList = j.m_edgeB;
Body bodyA = def.bodyA;
Body bodyB = def.bodyB;
// If the joint prevents collisions, then flag any contacts for filtering.
if (def.collideConnected == false) {
ContactEdge edge = bodyB.getContactList();
while (edge != null) {
if (edge.other == bodyA) {
// Flag the contact for filtering at the next time step (where either
// body is awake).
edge.contact.flagForFiltering();
}
edge = edge.next;
}
}
// Note: creating a joint doesn't wake the bodies.
return j;
}
示例4: newEngineInstance
import org.jbox2d.dynamics.joints.JointDef; //导入依赖的package包/类
public abstract JointDef newEngineInstance();