88physx::PxJoint *QDistanceJoint::createPhysxJoint(physx::PxRigidActor *actorA,
89 physx::PxRigidActor *actorB,
90 const physx::PxTransform &trfA,
91 const physx::PxTransform &trfB)
93 return physx::PxDistanceJointCreate(*StaticPhysXObjects::getReference().physics, actorA, trfA,
97void QDistanceJoint::setJointProperties()
99 physx::PxDistanceJoint *joint =
static_cast<physx::PxDistanceJoint *>(m_joint);
101 float minDistance = m_minDistance;
102 float maxDistance = m_maxDistance;
109 if (m_minDistance > 0 && m_maxDistance > 0) {
110 minDistance = qMin(m_minDistance, m_maxDistance);
111 maxDistance = qMax(m_minDistance, m_maxDistance);
114 joint->setMinDistance(minDistance);
115 joint->setMaxDistance(maxDistance);
116 joint->setDistanceJointFlag(physx::PxDistanceJointFlag::eMIN_DISTANCE_ENABLED, minDistance > 0);
117 joint->setDistanceJointFlag(physx::PxDistanceJointFlag::eMAX_DISTANCE_ENABLED, maxDistance > 0);