|
Blender V5.0
|
#include "LinearMath/btScalar.h"#include "LinearMath/btAlignedObjectArray.h"#include "btMultiBody.h"#include "btMultiBodySolverConstraint.h"Go to the source code of this file.
Classes | |
| struct | btMultiBodyJacobianData |
Variables | |
| btMultiBodyConstraint | |
| btMultiBody * | m_bodyB |
| int | m_linkA |
| int | m_linkB |
| int | m_type |
| int | m_numRows |
| int | m_jacSizeA |
| int | m_jacSizeBoth |
| int | m_posOffset |
| bool | m_isUnilateral |
| int | m_numDofsFinalized |
| btScalar | m_maxAppliedImpulse |
| btAlignedObjectArray< btScalar > | m_data |
Definition at line 25 of file btMultiBodyConstraint.h.
| void btMultiBodyConstraint::allocateJacobiansMultiDof | ( | ) |
Definition at line 35 of file btMultiBodyConstraint.cpp.
References m_data, m_jacSizeBoth, m_numRows, m_posOffset, and updateJacobianSizes().
Referenced by btMultiBodyGearConstraint::finalizeMultiDof(), btMultiBodyJointLimitConstraint::finalizeMultiDof(), btMultiBodyJointMotor::finalizeMultiDof(), and btMultiBodySphericalJointMotor::finalizeMultiDof().
| void btMultiBodyConstraint::applyDeltaVee | ( | btMultiBodyJacobianData & | data, |
| btScalar * | delta_vee, | ||
| btScalar | impulse, | ||
| int | velocityIndex, | ||
| int | ndof ) |
Definition at line 47 of file btMultiBodyConstraint.cpp.
Referenced by resolveConeFrictionConstraintRows(), resolveSingleConstraintRowGeneric(), setupMultiBodyContactConstraint(), and btMultiBodyMLCPConstraintSolver::solveGroupCacheFriendlyIterations().
| BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) |
| btMultiBodyConstraint | ( | btMultiBody * | bodyA, |
| btMultiBody * | bodyB, | ||
| int | linkA, | ||
| int | linkB, | ||
| int | numRows, | ||
| bool | isUnilateral, | ||
| int | type ) |
References btMultiBody, and isUnilateral().
|
pure virtual |
References data, and infoGlobal.
|
pure virtual |
| btScalar btMultiBodyConstraint::fillMultiBodyConstraint | ( | btMultiBodySolverConstraint & | solverConstraint, |
| btMultiBodyJacobianData & | data, | ||
| btScalar * | jacOrgA, | ||
| btScalar * | jacOrgB, | ||
| const btVector3 & | constraintNormalAng, | ||
| const btVector3 & | constraintNormalLin, | ||
| const btVector3 & | posAworld, | ||
| const btVector3 & | posBworld, | ||
| btScalar | posError, | ||
| const btContactSolverInfo & | infoGlobal, | ||
| btScalar | lowerLimit, | ||
| btScalar | upperLimit, | ||
| bool | angConstraint = false, | ||
| btScalar | relaxation = 1.f, | ||
| bool | isFriction = false, | ||
| btScalar | desiredVelocity = 0, | ||
| btScalar | cfmSlip = 0 ) |
Definition at line 53 of file btMultiBodyConstraint.cpp.
References btAssert, btMultiBody, btMultiBodySolverConstraint, btSolverBody, btVector3, cross, data, btRigidBody::getAngularFactor(), btRigidBody::getAngularVelocity(), btRigidBody::getInvInertiaTensorWorld(), btRigidBody::getInvMass(), btRigidBody::getLinearVelocity(), i, infoGlobal, l, m_bodyB, m_linkA, m_linkB, and SIMD_EPSILON.
Referenced by btMultiBodyFixedConstraint::createConstraintRows(), btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodySliderConstraint::createConstraintRows(), and btMultiBodySphericalJointMotor::createConstraintRows().
|
pure virtual |
| btScalar getAppliedImpulse | ( | int | dof | ) |
Definition at line 154 of file btMultiBodyConstraint.h.
References btAssert, getNumRows(), and m_data.
| int getConstraintType | ( | ) | const |
Definition at line 108 of file btMultiBodyConstraint.h.
References m_type.
|
pure virtual |
|
pure virtual |
| int getLinkA | ( | ) | const |
Definition at line 139 of file btMultiBodyConstraint.h.
References m_linkA.
| int getLinkB | ( | ) | const |
Definition at line 143 of file btMultiBodyConstraint.h.
References m_linkB.
| btScalar getMaxAppliedImpulse | ( | ) | const |
Definition at line 198 of file btMultiBodyConstraint.h.
| btMultiBody * getMultiBodyA | ( | ) |
Definition at line 130 of file btMultiBodyConstraint.h.
References btMultiBody.
| btMultiBody * getMultiBodyB | ( | ) |
Definition at line 134 of file btMultiBodyConstraint.h.
References btMultiBody, and m_bodyB.
| int getNumRows | ( | ) | const |
Definition at line 125 of file btMultiBodyConstraint.h.
References m_numRows.
Referenced by btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodySphericalJointMotor::createConstraintRows(), getAppliedImpulse(), and internalSetAppliedImpulse().
| btScalar getPosition | ( | int | row | ) | const |
Definition at line 163 of file btMultiBodyConstraint.h.
References m_data, and m_posOffset.
Referenced by btMultiBodyJointLimitConstraint::createConstraintRows().
| void internalSetAppliedImpulse | ( | int | dof, |
| btScalar | appliedImpulse ) |
Definition at line 147 of file btMultiBodyConstraint.h.
References btAssert, getNumRows(), and m_data.
| bool isUnilateral | ( | ) | const |
Definition at line 173 of file btMultiBodyConstraint.h.
References m_isUnilateral.
Referenced by btMultiBodyConstraint().
| const btScalar * jacobianA | ( | int | row | ) |
Definition at line 181 of file btMultiBodyConstraint.h.
References m_data, m_jacSizeBoth, and m_numRows.
Referenced by btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodyJointLimitConstraint::finalizeMultiDof(), btMultiBodyJointMotor::finalizeMultiDof(), and btMultiBodySphericalJointMotor::finalizeMultiDof().
| const btScalar * jacobianB | ( | int | row | ) |
Definition at line 189 of file btMultiBodyConstraint.h.
References m_data, m_jacSizeA, m_jacSizeBoth, and m_numRows.
Referenced by btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), and btMultiBodyJointLimitConstraint::finalizeMultiDof().
|
virtual |
Definition at line 212 of file btMultiBodyConstraint.h.
|
virtual |
Definition at line 113 of file btMultiBodyConstraint.h.
References btMatrix3x3, and frameInB.
|
virtual |
Definition at line 210 of file btMultiBodyConstraint.h.
|
virtual |
Definition at line 209 of file btMultiBodyConstraint.h.
| void setMaxAppliedImpulse | ( | btScalar | maxImp | ) |
Definition at line 202 of file btMultiBodyConstraint.h.
|
virtual |
Definition at line 114 of file btMultiBodyConstraint.h.
References btVector3.
| void setPosition | ( | int | row, |
| btScalar | pos ) |
Definition at line 168 of file btMultiBodyConstraint.h.
References m_data, m_posOffset, and pos.
Referenced by btMultiBodyJointLimitConstraint::createConstraintRows().
|
virtual |
Definition at line 211 of file btMultiBodyConstraint.h.
| void btMultiBodyConstraint::updateJacobianSizes | ( | ) |
Definition at line 20 of file btMultiBodyConstraint.cpp.
References m_bodyB, m_jacSizeA, and m_jacSizeBoth.
Referenced by allocateJacobiansMultiDof().
|
virtual |
Definition at line 43 of file btMultiBodyConstraint.cpp.
| btMultiBodyConstraint::btMultiBodyConstraint |
Definition at line 56 of file btMultiBodyConstraint.h.
Referenced by btMultiBodyDynamicsWorld::addMultiBodyConstraint(), btGetMultiBodyConstraintIslandId(), btMultiBodyFixedConstraint::btMultiBodyFixedConstraint(), btMultiBodyFixedConstraint::btMultiBodyFixedConstraint(), btMultiBodyGearConstraint::btMultiBodyGearConstraint(), btMultiBodyJointLimitConstraint::btMultiBodyJointLimitConstraint(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btMultiBodyPoint2Point(), btMultiBodyPoint2Point(), btMultiBodySliderConstraint::btMultiBodySliderConstraint(), btMultiBodySliderConstraint::btMultiBodySliderConstraint(), btMultiBodySphericalJointMotor::btMultiBodySphericalJointMotor(), btMultiBodyDynamicsWorld::calculateSimulationIslands(), btMultiBodyDynamicsWorld::debugDrawMultiBodyConstraint(), btMultiBodyDynamicsWorld::debugDrawWorld(), btMultiBodyDynamicsWorld::getMultiBodyConstraint(), btMultiBodyDynamicsWorld::getMultiBodyConstraint(), btSortMultiBodyConstraintOnIslandPredicate::operator()(), DeformableBodyInplaceSolverIslandCallback::processConstraints(), MultiBodyInplaceSolverIslandCallback::processConstraints(), MultiBodyInplaceSolverIslandCallback::processIsland(), btMultiBodyDynamicsWorld::removeMultiBodyConstraint(), MultiBodyInplaceSolverIslandCallback::setup(), btDeformableMultiBodyDynamicsWorld::setupConstraints(), solveDeformableBodyGroup(), btMultiBodyDynamicsWorld::solveExternalForces(), solveGroupCacheFriendlyFinish(), and solveMultiBodyGroup().
| btMultiBody* m_bodyB |
Definition at line 60 of file btMultiBodyConstraint.h.
Referenced by btMultiBodyFixedConstraint::createConstraintRows(), btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodySliderConstraint::createConstraintRows(), btMultiBodyFixedConstraint::debugDraw(), btMultiBodySliderConstraint::debugDraw(), fillMultiBodyConstraint(), btMultiBodyFixedConstraint::getIslandIdB(), btMultiBodyGearConstraint::getIslandIdB(), btMultiBodyJointLimitConstraint::getIslandIdB(), btMultiBodyJointMotor::getIslandIdB(), btMultiBodySliderConstraint::getIslandIdB(), btMultiBodySphericalJointMotor::getIslandIdB(), getMultiBodyB(), and updateJacobianSizes().
| btAlignedObjectArray<btScalar> m_data |
Definition at line 80 of file btMultiBodyConstraint.h.
Referenced by btBvhTree::_build_sub_tree(), btQuantizedBvhTree::_build_sub_tree(), allocateJacobiansMultiDof(), applyDeltaVee(), btMultiBodyFixedConstraint::btMultiBodyFixedConstraint(), btMultiBodyFixedConstraint::btMultiBodyFixedConstraint(), btMultiBodyPoint2Point(), btMultiBodyPoint2Point(), btMultiBodySliderConstraint::btMultiBodySliderConstraint(), btMultiBodySliderConstraint::btMultiBodySliderConstraint(), btMultiBodyMLCPConstraintSolver::createMLCPFastMultiBody(), getAppliedImpulse(), blender::io::hydra::HydraSceneDelegate::GetMeshTopology(), getPosition(), blender::io::hydra::HydraSceneDelegate::GetPrimvarDescriptors(), internalSetAppliedImpulse(), jacobianA(), jacobianB(), resolveConeFrictionConstraintRows(), resolveSingleConstraintRowGeneric(), setPosition(), setupMultiBodyContactConstraint(), setupMultiBodyTorsionalFrictionConstraint(), btMultiBodyMLCPConstraintSolver::solveGroupCacheFriendlyIterations(), blender::io::hydra::MaterialData::update(), and writeBackSolverBodyToMultiBody().
| bool m_isUnilateral |
Definition at line 71 of file btMultiBodyConstraint.h.
Referenced by isUnilateral().
| int m_jacSizeA |
Definition at line 67 of file btMultiBodyConstraint.h.
Referenced by jacobianB(), and updateJacobianSizes().
| int m_jacSizeBoth |
Definition at line 68 of file btMultiBodyConstraint.h.
Referenced by allocateJacobiansMultiDof(), btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodySphericalJointMotor::createConstraintRows(), btMultiBodyGearConstraint::finalizeMultiDof(), btMultiBodyJointLimitConstraint::finalizeMultiDof(), btMultiBodyJointMotor::finalizeMultiDof(), btMultiBodySphericalJointMotor::finalizeMultiDof(), jacobianA(), jacobianB(), and updateJacobianSizes().
| int m_linkA |
Definition at line 61 of file btMultiBodyConstraint.h.
Referenced by btMultiBodyFixedConstraint::createConstraintRows(), btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodySliderConstraint::createConstraintRows(), btMultiBodySphericalJointMotor::createConstraintRows(), btMultiBodyFixedConstraint::debugDraw(), btMultiBodySliderConstraint::debugDraw(), fillMultiBodyConstraint(), btMultiBodyJointLimitConstraint::finalizeMultiDof(), btMultiBodyJointMotor::finalizeMultiDof(), btMultiBodySphericalJointMotor::finalizeMultiDof(), btMultiBodyFixedConstraint::getIslandIdA(), btMultiBodyGearConstraint::getIslandIdA(), btMultiBodyJointLimitConstraint::getIslandIdA(), btMultiBodyJointMotor::getIslandIdA(), btMultiBodySliderConstraint::getIslandIdA(), btMultiBodySphericalJointMotor::getIslandIdA(), and getLinkA().
| int m_linkB |
Definition at line 62 of file btMultiBodyConstraint.h.
Referenced by btMultiBodyFixedConstraint::createConstraintRows(), btMultiBodyGearConstraint::createConstraintRows(), btMultiBodySliderConstraint::createConstraintRows(), btMultiBodyFixedConstraint::debugDraw(), btMultiBodySliderConstraint::debugDraw(), fillMultiBodyConstraint(), btMultiBodyFixedConstraint::getIslandIdB(), btMultiBodyGearConstraint::getIslandIdB(), btMultiBodyJointLimitConstraint::getIslandIdB(), btMultiBodyJointMotor::getIslandIdB(), btMultiBodySliderConstraint::getIslandIdB(), btMultiBodySphericalJointMotor::getIslandIdB(), and getLinkB().
| btScalar m_maxAppliedImpulse |
Definition at line 73 of file btMultiBodyConstraint.h.
| int m_numDofsFinalized |
Definition at line 72 of file btMultiBodyConstraint.h.
Referenced by btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodySphericalJointMotor::createConstraintRows(), btMultiBodyGearConstraint::finalizeMultiDof(), btMultiBodyJointLimitConstraint::finalizeMultiDof(), btMultiBodyJointMotor::finalizeMultiDof(), and btMultiBodySphericalJointMotor::finalizeMultiDof().
| int m_numRows |
Definition at line 66 of file btMultiBodyConstraint.h.
Referenced by allocateJacobiansMultiDof(), getNumRows(), jacobianA(), and jacobianB().
| int m_posOffset |
Definition at line 69 of file btMultiBodyConstraint.h.
Referenced by allocateJacobiansMultiDof(), getPosition(), and setPosition().
| int m_type |
Definition at line 64 of file btMultiBodyConstraint.h.
Referenced by bsdf_aniso_D(), bsdf_D(), bsdf_lambda_from_sqr_alpha_tan_n(), bsdf_microfacet_sample(), and getConstraintType().