|
Blender V4.3
|
#include <math.h>#include <stdlib.h>#include <float.h>#include <assert.h>Go to the source code of this file.
Classes | |
| struct | btInfMaskConverter |
| struct | btTypedObject |
| rudimentary class to provide type info More... | |
Typedefs | |
| typedef float | btScalar |
| The btScalar type abstracts floating point numbers, to easily switch between double and single floating point precision. | |
Variables | |
| static btInfMaskConverter | btInfinityMask = 0x7F800000 |
| #define ATTRIBUTE_ALIGNED128 | ( | a | ) | a |
Definition at line 287 of file btScalar.h.
| #define ATTRIBUTE_ALIGNED16 | ( | a | ) | a |
Definition at line 285 of file btScalar.h.
Referenced by btDbvtBroadphase::aabbTest(), bounds(), btDbvtBroadphase::collide(), btDbvt::collideTV(), btDbvt::collideTVNoStackAlloc(), btSoftBody::defaultCollisionHandler(), btDbvtBroadphase::getBroadphaseAabb(), btSoftBody::initializeFaceTree(), merge(), MycollideTT(), btCollisionWorld::objectQuerySingleInternal(), btSoftBody::predictMotion(), btCompoundCollisionAlgorithm::processCollision(), btSoftColliders::CollideCL_RS::ProcessColObj(), btSoftBody::rebuildNodeTree(), btSoftBody::scale(), btDbvtBroadphase::setAabb(), btDbvtBroadphase::setAabbForceUpdate(), btSoftBody::transform(), updateChildTransform(), btSoftBody::updateClusters(), btSoftBody::updateFace(), and btSoftBody::updateNode().
| #define ATTRIBUTE_ALIGNED64 | ( | a | ) | a |
Definition at line 286 of file btScalar.h.
| #define BT_BULLET_VERSION 289 |
Definition at line 28 of file btScalar.h.
Referenced by btGetVersion().
| BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) |
Definition at line 425 of file btScalar.h.
| #define BT_DECLARE_HANDLE | ( | name | ) |
Definition at line 591 of file btScalar.h.
| #define BT_HALF 0.5f |
Definition at line 548 of file btScalar.h.
| #define BT_INFINITY (btInfinityMask.mask) |
Definition at line 405 of file btScalar.h.
Referenced by btLCP::btLCP(), btSolveDantzigLCP(), btMLCPSolver::createMLCPFast(), and btMultiBodyMLCPConstraintSolver::createMLCPFastRigidBody().
| #define BT_LARGE_FLOAT 1e18f |
Definition at line 316 of file btScalar.h.
Referenced by btAdjustInternalEdgeContacts(), btComputeGjkEpaPenetration(), btGenerateInternalEdgeInfo(), btGenerateInternalEdgeInfo(), btSingleRayCallback::btSingleRayCallback(), btSingleSweepCallback::btSingleSweepCallback(), btMinkowskiPenetrationDepthSolver::calcPenDepth(), calculateAabbBruteForce(), calculatePrincipalAxisTransform(), cullPoints2(), debugDrawAllBatches(), btCollisionWorld::debugDrawObject(), EdgeSeparation(), FindIncidentEdge(), btSimpleBroadphase::getBroadphaseAabb(), btGjkPairDetector::getClosestPointsNonVirtual(), btSoftBody::initializeClusters(), localGetSupportVertexWithoutMarginNonVirtual(), btVector4::maxAxis4(), btVector4::minAxis4(), btBoxBoxCollisionAlgorithm::processCollision(), btConvexConvexAlgorithm::processCollision(), btSphereTriangleCollisionAlgorithm::processCollision(), b3ProcessAllTrianglesHeightfield::processTriangle(), btDbvt::rayTest(), recalculateLocalAabb(), setupSpatialGridBatchesMt(), btRotationalLimitMotor::solveAngularLimits(), btTranslationalLimitMotor::solveLinearAxis(), updateBvhNodes(), walkStacklessQuantizedTreeAgainstRay(), and walkStacklessTreeAgainstRay().
| #define BT_NOT_EMPTY_FILE |
Definition at line 66 of file btScalar.h.
| #define BT_ONE 1.0f |
Definition at line 545 of file btScalar.h.
Referenced by get_limit_motor_info2(), and btVectorX< T >::nrm2().
| #define BT_TWO 2.0f |
Definition at line 547 of file btScalar.h.
| #define BT_ZERO 0.0f |
Definition at line 546 of file btScalar.h.
Referenced by get_limit_motor_info2().
| #define btAssert | ( | x | ) |
Definition at line 295 of file btScalar.h.
Referenced by gim_hash_table< T >::_assign_hash_table_cell(), btBvhTree::_build_sub_tree(), btQuantizedBvhTree::_build_sub_tree(), GIM_BOX_TREE::_build_sub_tree(), gim_hash_table< T >::_erase_by_index_hash_table(), gim_hash_table< T >::_erase_unsorted(), gim_hash_table< T >::_rehash(), btBvhTree::_sort_and_calc_splitting_index(), btQuantizedBvhTree::_sort_and_calc_splitting_index(), GIM_BOX_TREE::_sort_and_calc_splitting_index(), btSoftBody::addAeroForceToNode(), btGImpactCompoundShape::addChildShape(), btGImpactCompoundShape::addChildShape(), PreallocatedMemoryHelper< N >::addChunk(), btCollisionWorld::addCollisionObject(), btManifoldResult::addContactPoint(), addManifoldPoint(), btPairCachingGhostObject::addOverlappingObjectInternal(), btDeformableLinearElasticityForce::addScaledDampingForce(), btDeformableMassSpringForce::addScaledDampingForce(), btDeformableNeoHookeanForce::addScaledDampingForce(), btDeformableLinearElasticityForce::addScaledDampingForceDifferential(), btDeformableNeoHookeanForce::addScaledDampingForceDifferential(), btDeformableCorotatedForce::addScaledElasticForce(), btDeformableLinearElasticityForce::addScaledElasticForce(), btDeformableMassSpringForce::addScaledElasticForce(), btDeformableNeoHookeanForce::addScaledElasticForce(), btDeformableLinearElasticityForce::addScaledElasticForceDifferential(), btDeformableNeoHookeanForce::addScaledElasticForceDifferential(), btDeformableGravityForce::addScaledGravityForce(), btCollisionWorld::ClosestConvexResultCallback::addSingleResult(), btCollisionWorld::ClosestRayResultCallback::addSingleResult(), btPoolAllocator::allocate(), btStackAlloc::allocate(), btAxisSweep3Internal< BP_FP_INT_TYPE >::allocHandle(), btSimpleBroadphase::allocHandle(), btQuaternion::angle(), btQuaternion::angleShortestPath(), btSoftBody::appendFace(), btRaycastVehicle::applyEngineForce(), btDeformableMultiBodyDynamicsWorld::applyRigidBodyGravity(), assignConstraintsToGridBatches(), btAlignedObjectArray< T >::at(), btAlignedObjectArray< T >::at(), bt32BitAxisSweep3::bt32BitAxisSweep3(), btAxisSweep3::btAxisSweep3(), btCollisionDispatcher::btCollisionDispatcher(), btCompoundCollisionAlgorithm::btCompoundCollisionAlgorithm(), btCompoundCompoundCollisionAlgorithm::btCompoundCompoundCollisionAlgorithm(), btCompoundShape(), btComputeGjkEpaPenetration(), btDefaultSerializer::btDefaultSerializer(), btGenerateInternalEdgeInfo(), btGetCurrentThreadIndex(), btJacobianEntry(), btJacobianEntry(), btJacobianEntry(), btJacobianEntry(), btLDLTAddTL(), btLDLTRemove(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btParallelFor(), btParallelSum(), btRemoveRowCol(), btResetThreadIndexCounter(), btSetTaskScheduler(), btSolveDantzigLCP(), btSolveLDLT(), btSwapProblem(), btSwapRowsAndCols(), btTransformAabb(), btVectorScale(), KKTPreconditioner::buildDiagonalA(), btSimulationIslandManager::buildIslands(), btSimulationIslandManagerMt::buildIslands(), buildTree(), btSoftBodyCollisionShape::calculateLocalInertia(), calculateLocalInertia(), btAxisSweep3Internal< BP_FP_INT_TYPE >::calculateOverlappingPairs(), btSimpleBroadphase::calculateOverlappingPairs(), calculatePrincipalAxisTransform(), btCompoundCollisionAlgorithm::calculateTimeOfImpact(), btCompoundCompoundCollisionAlgorithm::calculateTimeOfImpact(), btGImpactMeshShape::childrenHasTransform(), btSoftBodyTriangleCallback::clearCache(), clearUserCache(), btDbvt::collideKDOP(), btDbvt::collideOCL(), computeConeLimitInfo(), computeConstraintMatrixDiagElementMultiBody(), computeConstraintMatrixOffDiagElementMultiBody(), computeTwistLimitInfo(), convertJoint(), convertJoints(), convexHullSupport(), createAabbTreeFromChildren(), btMultiBodyGearConstraint::createConstraintRows(), btMultiBodyJointLimitConstraint::createConstraintRows(), btMultiBodyJointMotor::createConstraintRows(), btMultiBodySphericalJointMotor::createConstraintRows(), btSoftBodyHelpers::CreateFromVtkFile(), btSimpleBroadphase::createProxy(), cullPoints2(), btStackAlloc::destroy(), EdgeSeparation(), enableMotor(), enableSpring(), btStackAlloc::endBlock(), expandConstraintRows(), expandConstraintRowsInPlace(), fillConstraintJacobianMultiDof(), fillMultiBodyConstraint(), btDefaultSerializer::finalizeChunk(), btMultiBodyFixedConstraint::finalizeMultiDof(), btMultiBodySliderConstraint::finalizeMultiDof(), FindIncidentEdge(), findMaxDynamicConstraintExtent(), btHashedSimplePairCache::findPair(), btAxisSweep3Internal< BP_FP_INT_TYPE >::freeHandle(), btSimpleBroadphase::freeHandle(), btPoolAllocator::freeMemory(), btSoftBody::generateBendingConstraints(), btGImpactMeshShapePart::TrimeshPrimitiveManager::get_indices(), btGImpactCompoundShape::CompoundPrimitiveManager::get_primitive_triangle(), btSdfCollisionShape::getAabb(), getAabbNonVirtual(), getAppliedImpulse(), getAppliedImpulse(), btHashMap< Key, Value >::getAtIndex(), btHashMap< Key, Value >::getAtIndex(), btGImpactCompoundShape::getBulletTetrahedron(), btGImpactMeshShape::getBulletTetrahedron(), btGImpactMeshShapePart::getBulletTetrahedron(), btGImpactCompoundShape::getBulletTriangle(), btGImpactMeshShape::getBulletTriangle(), btConvexInternalAabbCachingShape::getCachedLocalAabb(), btPolyhedralConvexAabbCachingShape::getCachedLocalAabb(), btGImpactMeshShape::getChildAabb(), btGImpactMeshShape::getChildShape(), btGImpactMeshShape::getChildShape(), btGImpactMeshShapePart::getChildShape(), btGImpactMeshShapePart::getChildShape(), btGImpactCompoundShape::getChildTransform(), btGImpactMeshShape::getChildTransform(), btGImpactMeshShapePart::getChildTransform(), btGjkPairDetector::getClosestPointsNonVirtual(), getContactPoint(), btDeformableFaceNodeContactConstraint::getDv(), btDeformableFaceRigidContactConstraint::getDv(), getEdge(), getEscapeIndex(), getInfo2Internal(), getInfo2InternalUsingFrameOffset(), getInfo2NonVirtual(), getInfo2NonVirtual(), getInfo2NonVirtual(), getInfo2NonVirtual(), btSimulationIslandManagerMt::getIsland(), btHashMap< Key, Value >::getKeyAtIndex(), btHashMap< Key, Value >::getKeyAtIndex(), getLimit(), getLockedMaterialBase(), getLockedVertexIndexBase(), btCollisionDispatcher::getManifoldByIndexInternal(), btCollisionDispatcher::getManifoldByIndexInternal(), getMarginNonVirtual(), btCollisionDispatcher::getNewManifold(), btCollisionDispatcherMt::getNewManifold(), ThreadsafeCounter::getNext(), btConvexInternalAabbCachingShape::getNonvirtualAabb(), btPolyhedralConvexAabbCachingShape::getNonvirtualAabb(), btGImpactMeshShape::getNumChildShapes(), getOrInitSolverBody(), getOrInitSolverBodyThreadsafe(), btGearConstraint::getParam(), getPartId(), getPlaneEquation(), getPreferredPenetrationDirection(), btGImpactMeshShape::getPrimitiveManager(), getRawHeightFieldValue(), btClock::getTimeNanoseconds(), getTriangleIndex(), btDefaultSerializer::getUniquePointer(), btRaycastVehicle::getWheelInfo(), btRaycastVehicle::getWheelInfo(), btRaycastVehicle::getWheelTransformWS(), btSymMatrix< T >::index(), btDefaultSerializer::initDNA(), initializePolyhedralFeatures(), btDefaultSerializer::internalAlloc(), internalCollectContactManifoldCachedInfo(), internalConvertMultipleJoints(), InternalProcessAllTriangles(), internalSetAppliedImpulse(), internalSetupContactConstraints(), btSoftMultiBodyDynamicsWorld::internalSingleStepSimulation(), btSoftRigidDynamicsWorld::internalSingleStepSimulation(), btMiniSDF::interpolate(), btConvexHullInternal::Edge::link(), localDirToWorld(), localGetSupportingVertexWithoutMargin(), localGetSupportVertexWithoutMarginNonVirtual(), localPosToWorld(), btSpinMutex::lock(), btGImpactMeshShape::lockChildShapes(), maxdirfiltered(), maxdirsterid(), btKrylovSolver< MatrixX >::multAndAddTo(), btMatrixX< T >::multiply2_p8r(), btCollisionDispatcher::needsCollision(), btGImpactMeshShape::needsRetrieveTetrahedrons(), btGImpactMeshShape::needsRetrieveTriangles(), btHullTriangle::neib(), normalize(), btMatrix2x2::operator()(), btMatrix2x2::operator()(), DefaultPreconditioner::operator()(), KKTPreconditioner::operator()(), MassPreconditioner::operator()(), btMatrixX< T >::operator*(), btQuaternion::operator/(), btQuaternion::operator/=(), InplaceSolverIslandCallback::operator=(), MultiBodyInplaceSolverIslandCallback::operator=(), operator=(), operator=(), operator=(), btAlignedObjectArray< T >::operator[](), btAlignedObjectArray< T >::operator[](), performConvexcast(), btDbvtBroadphase::performDeferredRemoval(), performRaycast(), btAlignedObjectArray< T >::pop_back(), btCompoundCollisionAlgorithm::preallocateChildAlgorithms(), btCompoundCompoundLeafCallback::Process(), btSoftBodyCollisionShape::processAllTriangles(), btCompoundLeafCallback::ProcessChildShape(), btCompoundCollisionAlgorithm::processCollision(), btCompoundCompoundCollisionAlgorithm::processCollision(), btConvexConvexAlgorithm::processCollision(), RemovingOverlapCallback::processOverlap(), btSoftBodyTriangleCallback::processTriangle(), btDeformableContactProjection::project(), quantize(), quantizeWithClamp(), randomizeBatchedConstraintOrdering(), btRaycastVehicle::rayCast(), btDbvt::rayTest(), RB_body_get_scale(), btSdfDataStream::read(), btConvexHullInternal::Vertex::receiveNearbyFaces(), refitPartial(), btManifoldResult::refreshContactPoints(), btCollisionDispatcher::releaseManifold(), btCollisionDispatcherMt::releaseManifold(), btHashMap< Key, Value >::remove(), removeChildShapeByIndex(), btCollisionWorld::removeCollisionObject(), removeContactPoint(), btPairCachingGhostObject::removeOverlappingObjectInternal(), btHashedSimplePairCache::removeOverlappingPair(), btGhostPairCallback::removeOverlappingPairsContainingProxy(), removeVertex(), replaceContactPoint(), reportAabbOverlappingNodex(), btSolve2LinearConstraint::resolveBilateralPairConstraint(), resolveMultipleContactConstraintsInterleaved(), resolveMultipleContactFrictionConstraints(), resolveSingleBilateral(), btSolve2LinearConstraint::resolveUnilateralPairConstraint(), btSoftBody::serialize(), setBounce(), btRaycastVehicle::setBrake(), btGImpactCompoundShape::setChildTransform(), btGImpactMeshShape::setChildTransform(), btGImpactMeshShapePart::setChildTransform(), setConeUpIndex(), setEquilibriumPoint(), setEquilibriumPoint(), btMatrixX< T >::setIdentity(), setMaxMotorForce(), setOptimizedBvh(), btGearConstraint::setParam(), btQuaternion::setRotation(), setServo(), setServoTarget(), btRaycastVehicle::setSteeringValue(), setStiffness(), setStiffness(), btMatrixX< T >::setSubMatrix(), btMatrixX< T >::setSubMatrix(), setTargetVelocity(), InplaceSolverIslandCallback::setup(), MultiBodyInplaceSolverIslandCallback::setup(), setupMultiBodyContactConstraint(), setupMultiBodyTorsionalFrictionConstraint(), setupSpatialGridBatchesMt(), btMiniSDF::shape_function_(), btConvexHullInternal::shrink(), btMiniSDF::singleToMultiIndex(), btQuaternion::slerp(), btConjugateGradient< MatrixX >::solve(), btConjugateResidual< MatrixX >::solve(), solveConstraintObsolete(), btMultiBodyDynamicsWorld::solveExternalForces(), btMLCPSolver::solveGroupCacheFriendlySetup(), btSolveProjectedGaussSeidel::solveMLCP(), sort(), sortAndCalcSplittingIndex(), btKrylovSolver< MatrixX >::sub(), btMiniSDF::subdomain(), btMiniSDF::subdomain(), synchronizeSingleMotionState(), TestSepAxis(), ThreePlaneIntersection(), topdown(), btLCP::transfer_i_from_C_to_N(), btSpinMutex::tryLock(), btSpinMutex::unlock(), btGImpactMeshShape::unlockChildShapes(), btCollisionWorld::updateAabbs(), updateBvhNodes(), btMultibodyLink::updateCacheMultiDof(), updateCollisionObjectInterpolationWorldTransforms(), updateCollisionObjectWorldTransforms(), updateConstraintBatchIdsForMerges(), btRaycastVehicle::updateFriction(), btMultibodyLink::updateInterpolationCacheMultiDof(), updateSubtreeHeaders(), btBatchedConstraints::validate(), btSimpleBroadphase::validate(), walkRecursiveQuantizedTreeAgainstQueryAabb(), walkStacklessQuantizedTree(), walkStacklessQuantizedTreeAgainstRay(), walkStacklessQuantizedTreeCacheFriendly(), walkStacklessTree(), walkStacklessTreeAgainstRay(), worldDirToLocal(), worldPosToLocal(), writeBackContacts(), btSoftBodyHelpers::writeObj(), writeOutBatches(), ~btGhostObject(), and btRigidBody::~btRigidBody().
Definition at line 603 of file btScalar.h.
Referenced by batchedUnitVectorGetSupportingVertexWithoutMargin(), localGetSupportingVertex(), localGetSupportingVertexWithoutMargin(), and localGetSupportVertexWithoutMarginNonVirtual().
| #define btFullAssert | ( | x | ) |
Definition at line 299 of file btScalar.h.
Referenced by angle(), getRow(), operator/(), operator/=(), operator[](), and setRotation().
| #define btLikely | ( | _c | ) | _c |
Definition at line 300 of file btScalar.h.
Definition at line 533 of file btScalar.h.
Referenced by btFactorLDLT(), btLCP::transfer_i_from_N_to_C(), and btLCP::transfer_i_to_C().
| #define btRecipSqrt | ( | x | ) | ((btScalar)(btScalar(1.0) / btSqrt(btScalar(x)))) /* reciprocal square root */ |
Definition at line 532 of file btScalar.h.
Referenced by btPlaneSpace1(), and capsuleCapsuleDistance().
| #define btUnlikely | ( | _c | ) | _c |
Definition at line 301 of file btScalar.h.
Definition at line 527 of file btScalar.h.
Referenced by btAdjustAngleToLimits(), btNormalizeAngle(), btTriangleInfo::btTriangleInfo(), btTriangleInfoMap::btTriangleInfoMap(), debugDrawConstraint(), btIDebugDraw::drawCone(), btIDebugDraw::drawCylinder(), get_limit_motor_info2(), btConvexConvexAlgorithm::processCollision(), btConvexPlaneCollisionAlgorithm::processCollision(), setServoTarget(), and btRotationalLimitMotor::testLimitValue().
Definition at line 530 of file btScalar.h.
Referenced by btDegrees().
| #define SIMD_EPSILON FLT_EPSILON |
Definition at line 543 of file btScalar.h.
Referenced by btSoftBody::addAeroForceToFace(), btSoftBody::addAeroForceToNode(), btDeformableMassSpringForce::addScaledDampingForce(), btDeformableMousePickingForce::addScaledDampingForce(), btDeformableMassSpringForce::addScaledDampingForceDifferential(), btDeformableMousePickingForce::addScaledDampingForceDifferential(), btDeformableMassSpringForce::addScaledElasticForce(), btDeformableMassSpringForce::addScaledElasticForceDifferential(), btDeformableMousePickingForce::addScaledElasticForceDifferential(), adjustSwingAxisToUseEllipseNormal(), btSoftBody::applyRepulsionForce(), bt_plane_clip_polygon(), bt_plane_clip_polygon_collect(), bt_plane_clip_triangle(), bt_segment_collision(), btComputeGjkEpaPenetration(), btFuzzyZero(), btHingeConstraint(), btDeformableMassSpringForce::buildDampingForceDifferentialDiagonal(), buildJacobian(), calcAngleInfo2(), btContinuousConvexCollision::calcTimeOfImpact(), btSubsimplexConvexCast::calcTimeOfImpact(), btTransformUtil::calculateDiffAxisAngle(), btTransformUtil::calculateDiffAxisAngleQuaternion(), calculateTransforms(), capsuleCapsuleDistance(), ccdEq(), SphereTriangleDetector::collide(), GivensRotation::compute(), computeAccelerationsArticulatedBodyAlgorithmMultiDof(), computeConeLimitInfo(), computeTwistLimitInfo(), GivensRotation::computeUnconventional(), coneLocalSupport(), continuousCollisionDetection(), convertContact(), convertJoint(), cullPoints2(), diagonalize(), fillMultiBodyConstraint(), btPolyhedralContactClipping::findSeparatingAxis(), btDeformableCorotatedForce::firstPiola(), fuzzyZero(), btSoftBody::generateClusters(), btQuaternion::getAxis(), btGjkPairDetector::getClosestPointsNonVirtual(), getInfo2InternalUsingFrameOffset(), getInfo2NonVirtual(), getNormalizedVector(), GetPointForAngle(), getRelativeVelocity(), getSign(), btSphereBoxCollisionAlgorithm::getSphereDistance(), btTransformUtil::integrateTransform(), internalSetupContactConstraints(), lineIntersectsTriangle(), localGetSupportingVertex(), localGetSupportVertexNonVirtual(), localGetSupportVertexWithoutMarginNonVirtual(), GIM_TRIANGLE_CONTACT::merge_points(), btReducedVector::normalize(), NormalizeAny(), polarDecomposition(), btConvexConvexAlgorithm::processCollision(), btSphereSphereCollisionAlgorithm::processCollision(), btReducedVector::proj(), btDeformableContactProjection::project(), ProjectOrigin(), ProjectOrigin(), proximityTest(), btSoftBody::PSolve_Links(), btSoftBody::PSolve_RContacts(), btSoftBody::RayFromToCaster::rayFromToTriangle(), btSolve2LinearConstraint::resolveBilateralPairConstraint(), btSolve2LinearConstraint::resolveUnilateralPairConstraint(), safeNorm(), btQuaternion::safeNormalize(), safeNormalize(), setContactStiffnessAndDamping(), setMotorTargetInConstraintSpace(), setOptimizedBvh(), setupContactConstraint(), setupMultiBodyContactConstraint(), setupMultiBodyTorsionalFrictionConstraint(), shortestArcQuat(), btGjkEpaSolver2::SignedDistance(), btReducedVector::simplify(), singularValueDecomposition(), singularValueDecomposition(), btQuaternion::slerp(), solve33(), btRotationalLimitMotor::solveAngularLimits(), btDeformableFaceNodeContactConstraint::solveConstraint(), btDeformableRigidContactConstraint::solveConstraint(), solveConstraintObsolete(), btDeformableBodySolver::solveDeformableConstraints(), stepForwardAndStrafe(), btModifiedGramSchmidt< TV >::test(), btDeformableMousePickingForce::totalDampingEnergy(), btSoftBody::updateClusters(), btSoftBody::updateNormals(), btSoftBody::updatePose(), updateTargetPositionBasedOnCollision(), and wilkinsonShift().
| #define SIMD_FORCE_INLINE inline |
Definition at line 280 of file btScalar.h.
Definition at line 528 of file btScalar.h.
Referenced by btHinge2Constraint(), btUniversalConstraint(), btIDebugDraw::drawCapsule(), btIDebugDraw::drawSphere(), btIDebugDraw::drawSpherePatch(), getEulerYPR(), matrixToEulerXYZ(), matrixToEulerXZY(), matrixToEulerYXZ(), matrixToEulerYZX(), matrixToEulerZXY(), matrixToEulerZYX(), predictPositionsMultiDof(), and stepPositionsMultiDof().
Definition at line 544 of file btScalar.h.
Referenced by bottomup(), btSoftBody::checkDeformableFaceContact(), convertJoint(), btSoftBodyHelpers::extrapolateBarycentricWeights(), get_limit_motor_info2(), get_limit_motor_info2(), getInfo2Internal(), getInfo2InternalUsingFrameOffset(), getInfo2NonVirtual(), getInfo2NonVirtual(), invalidate(), localDirToWorld(), localPosToWorld(), maxDot(), minDot(), btSoftColliders::CollideVF_SS::Process(), btConjugateResidual< MatrixX >::reinitialize(), btDeformableContactProjection::setProjection(), btConvexHullInternal::shrink(), btGjkEpaSolver2::SignedDistance(), btConvexHullInternal::Rational128::toScalar(), btConvexHullInternal::Rational64::toScalar(), worldDirToLocal(), and worldPosToLocal().
Definition at line 526 of file btScalar.h.
Referenced by btAtan2Fast(), btHinge2Constraint(), btNormalizeAngle(), btNormalizeAnglePositive(), btUniversalConstraint(), computeTwistLimitInfo(), btSoftBodyHelpers::CreateEllipsoid(), debugDrawConstraint(), btIDebugDraw::drawSpherePatch(), get_limit_motor_info2(), getEulerYPR(), btQuaternion::getEulerZYX(), getEulerZYX(), btSoftBody::AJoint::Prepare(), btConvexConvexAlgorithm::processCollision(), btConvexPlaneCollisionAlgorithm::processCollision(), btConnectivityProcessor::processTriangle(), btDbvt::selfCollideT(), setMotorTarget(), setServoTarget(), and btRotationalLimitMotor::testLimitValue().
Definition at line 529 of file btScalar.h.
Referenced by btRadians(), btIDebugDraw::drawArc(), btIDebugDraw::drawCapsule(), btIDebugDraw::drawCone(), btIDebugDraw::drawCylinder(), btIDebugDraw::drawSpherePatch(), and maxdirsterid().
Definition at line 531 of file btScalar.h.
Referenced by btLDLTAddTL(), and btPlaneSpace1().
The btScalar type abstracts floating point numbers, to easily switch between double and single floating point precision.
Definition at line 314 of file btScalar.h.
| SIMD_FORCE_INLINE btScalar btAcos | ( | btScalar | x | ) |
Definition at line 501 of file btScalar.h.
References acosf.
Referenced by angle(), btQuaternion::angle(), btQuaternion::angleShortestPath(), btQuaternion::getAngle(), btQuaternion::getAngleShortestPath(), btSoftBody::AJoint::Prepare(), and btQuaternion::slerp().
align a pointer to the provided alignment, upwards
Definition at line 814 of file btScalar.h.
References ptr.
Referenced by btAlignedAllocDefault(), and btDefaultSerializer::initDNA().
| SIMD_FORCE_INLINE btScalar btAsin | ( | btScalar | x | ) |
Definition at line 509 of file btScalar.h.
References asinf.
Referenced by getEulerYPR(), btQuaternion::getEulerZYX(), getEulerZYX(), matrixToEulerXYZ(), matrixToEulerXZY(), matrixToEulerYXZ(), matrixToEulerYZX(), matrixToEulerZXY(), and matrixToEulerZYX().
| SIMD_FORCE_INLINE btScalar btAtan | ( | btScalar | x | ) |
Definition at line 517 of file btScalar.h.
References atanf.
| SIMD_FORCE_INLINE btScalar btAtan2 | ( | btScalar | x, |
| btScalar | y ) |
Definition at line 518 of file btScalar.h.
References atan2f.
Referenced by btGetAngle(), calcAngleInfo2(), cullPoints2(), getEulerYPR(), btQuaternion::getEulerZYX(), getEulerZYX(), getHingeAngle(), matrixToEulerXYZ(), matrixToEulerXZY(), matrixToEulerYXZ(), matrixToEulerYZX(), matrixToEulerZXY(), matrixToEulerZYX(), resolveConeFrictionConstraintRows(), and testAngLimits().
| SIMD_FORCE_INLINE btScalar btAtan2Fast | ( | btScalar | y, |
| btScalar | x ) |
Definition at line 553 of file btScalar.h.
References angle(), btFabs(), and SIMD_PI.
Referenced by calcAngleInfo(), and GrahamScanConvexHull2D().
| SIMD_FORCE_INLINE btScalar btCos | ( | btScalar | x | ) |
Definition at line 498 of file btScalar.h.
References cosf.
Referenced by calcAngleInfo2(), btSoftBodyHelpers::CreateEllipsoid(), debugDrawConstraint(), btIDebugDraw::drawArc(), btIDebugDraw::drawCapsule(), btIDebugDraw::drawCone(), btIDebugDraw::drawCylinder(), btIDebugDraw::drawSpherePatch(), getEulerZYX(), GetPointForAngle(), btTransformUtil::integrateTransform(), maxdirsterid(), predictPositionsMultiDof(), resolveConeFrictionConstraintRows(), btQuaternion::setEuler(), btQuaternion::setEulerZYX(), setEulerZYX(), setMaxSlope(), btQuaternion::setRotation(), and stepPositionsMultiDof().
| SIMD_FORCE_INLINE btScalar btDegrees | ( | btScalar | x | ) |
Definition at line 589 of file btScalar.h.
References SIMD_DEGS_PER_RAD.
| SIMD_FORCE_INLINE bool btEqual | ( | btScalar | a, |
| btScalar | eps ) |
| SIMD_FORCE_INLINE btScalar btExp | ( | btScalar | x | ) |
Definition at line 519 of file btScalar.h.
References expf.
| SIMD_FORCE_INLINE btScalar btFabs | ( | btScalar | x | ) |
Definition at line 497 of file btScalar.h.
References fabsf.
Referenced by absolute(), btVector4::absolute4(), btSoftBody::applyForces(), bt_line_plane_collision(), btAdjustAngleToLimits(), btAdjustInternalEdgeContacts(), btAtan2Fast(), btFuzzyZero(), btPlaneSpace1(), btShortestAngleUpdate(), btSolveDantzigLCP(), calc_absolute_matrix(), calcAngleInfo(), calculatePrincipalAxisTransform(), ccdEq(), ClusterMetric(), collide_ray(), GIM_AABB::collide_ray(), convertJoint(), cullPoints2(), dBoxBox2(), diagonalize(), btIDebugDraw::drawArc(), GJK< btConvexTemplate >::EncloseOrigin(), gjkepa2_impl::GJK::EncloseOrigin(), extractRotation(), btSoftBodyHelpers::extrapolateBarycentricWeights(), GIM_TRIANGLE::get_uv_parameters(), getEulerYPR(), getEulerZYX(), getInfo2NonVirtual(), btGeometryUtil::getVerticesFromPlaneEquations(), gridRaycast(), ImplicitSolve(), initialize2(), internalUpdateSprings(), IsAlmostZero(), IsAlmostZero1(), LINE_PLANE_COLLISION(), btContactArray::merge_contacts(), gim_contact_array::merge_contacts(), btKrylovSolver< MatrixX >::norm(), btVectorX< T >::nrm2(), GJK< btConvexTemplate >::projectorigin(), gjkepa2_impl::GJK::projectorigin(), btSoftBody::refine(), btSolve2LinearConstraint::resolveBilateralPairConstraint(), resolveConeFrictionConstraintRows(), resolveSingleBilateral(), btSolve2LinearConstraint::resolveUnilateralPairConstraint(), restitutionCurve(), setupMultiBodyContactConstraint(), btSoftBody::setVolumeDensity(), btSoftBody::setVolumeMass(), singularValueDecomposition(), btQuaternion::slerp(), solve33(), sort(), btEigen::system(), ThreePlaneIntersection(), topdown(), btSoftBody::updateArea(), btSoftBody::updateClusters(), wilkinsonShift(), and writeBackJoints().
| SIMD_FORCE_INLINE btScalar btFmod | ( | btScalar | x, |
| btScalar | y ) |
Definition at line 522 of file btScalar.h.
References fmodf.
Referenced by btNormalizeAngle(), and btNormalizeAnglePositive().
| SIMD_FORCE_INLINE btScalar btFsel | ( | btScalar | a, |
| btScalar | b, | ||
| btScalar | c ) |
| SIMD_FORCE_INLINE bool btFuzzyZero | ( | btScalar | x | ) |
Definition at line 572 of file btScalar.h.
References btFabs(), and SIMD_EPSILON.
Referenced by btDoSimplex2(), btDoSimplex3(), btDoSimplex4(), btVec3PointSegmentDist2(), btVec3PointTriDist2(), calcAngleInfo2(), ccdSign(), btMLCPSolver::createMLCPFast(), btMultiBodyMLCPConstraintSolver::createMLCPFastMultiBody(), btMultiBodyMLCPConstraintSolver::createMLCPFastRigidBody(), btPolarDecomposition::decompose(), btGjkPairDetector::getClosestPointsNonVirtual(), btSoftBody::RayFromToCaster::rayFromToTriangle(), btLemkeSolver::solveMLCP(), and btDeformableMultiBodyDynamicsWorld::stepSimulation().
|
inline |
Definition at line 406 of file btScalar.h.
References btInfinityMask, and btInfMaskConverter::intmask.
|
inline |
Definition at line 30 of file btScalar.h.
References BT_BULLET_VERSION.
| SIMD_FORCE_INLINE bool btGreaterEqual | ( | btScalar | a, |
| btScalar | eps ) |
Definition at line 578 of file btScalar.h.
References eps.
|
inline |
Definition at line 35 of file btScalar.h.
| SIMD_FORCE_INLINE int btIsNegative | ( | btScalar | x | ) |
Definition at line 583 of file btScalar.h.
| SIMD_FORCE_INLINE btScalar btLargeDot | ( | const btScalar * | a, |
| const btScalar * | b, | ||
| int | n ) |
Definition at line 750 of file btScalar.h.
Referenced by btLCP::AiC_times_qC(), btLCP::AiN_times_qN(), btLDLTRemove(), btLCP::pN_equals_ANC_times_qC(), btLCP::transfer_i_from_N_to_C(), and btLCP::transfer_i_to_C().
| SIMD_FORCE_INLINE btScalar btLog | ( | btScalar | x | ) |
Definition at line 520 of file btScalar.h.
References logf.
| SIMD_FORCE_INLINE bool btMachineIsLittleEndian | ( | ) |
Definition at line 605 of file btScalar.h.
| SIMD_FORCE_INLINE btScalar btNormalizeAngle | ( | btScalar | angleInRadians | ) |
Definition at line 781 of file btScalar.h.
References btFmod(), SIMD_2_PI, and SIMD_PI.
Referenced by btAdjustAngleToLimits(), btShortestAngularDistance(), btAngularLimit::fit(), btAngularLimit::getHigh(), btAngularLimit::getLow(), btAngularLimit::set(), setAngularLowerLimit(), setAngularLowerLimitReversed(), setAngularUpperLimit(), setAngularUpperLimitReversed(), setLimit(), setLimit(), setLimitReversed(), setLowerAngLimit(), setUpperAngLimit(), and btAngularLimit::test().
| SIMD_FORCE_INLINE btScalar btPow | ( | btScalar | x, |
| btScalar | y ) |
Definition at line 521 of file btScalar.h.
References powf.
Referenced by btRigidBody::applyDamping(), and btPolarDecomposition::decompose().
| SIMD_FORCE_INLINE btScalar btRadians | ( | btScalar | x | ) |
Definition at line 588 of file btScalar.h.
References SIMD_RADS_PER_DEG.
Referenced by btKinematicCharacterController().
| SIMD_FORCE_INLINE float btSelect | ( | unsigned | condition, |
| float | valueIfConditionNonZero, | ||
| float | valueIfConditionZero ) |
Definition at line 633 of file btScalar.h.
References btFsel().
| SIMD_FORCE_INLINE int btSelect | ( | unsigned | condition, |
| int | valueIfConditionNonZero, | ||
| int | valueIfConditionZero ) |
Definition at line 627 of file btScalar.h.
| SIMD_FORCE_INLINE unsigned btSelect | ( | unsigned | condition, |
| unsigned | valueIfConditionNonZero, | ||
| unsigned | valueIfConditionZero ) |
btSelect avoids branches, which makes performance much better for consoles like Playstation 3 and XBox 360 Thanks Phil Knight. See also http://www.cellperformance.com/articles/2006/04/more_techniques_for_eliminatin_1.html
Definition at line 617 of file btScalar.h.
Referenced by testQuantizedAabbAgainstQuantizedAabb().
| SIMD_FORCE_INLINE void btSetZero | ( | T * | a, |
| int | n ) |
Definition at line 739 of file btScalar.h.
Referenced by btLCP::btLCP(), btSolveDantzigLCP(), btMatrixX< T >::setZero(), and btVectorX< T >::setZero().
| SIMD_FORCE_INLINE btScalar btSin | ( | btScalar | x | ) |
Definition at line 499 of file btScalar.h.
References sinf.
Referenced by calcAngleInfo2(), btSoftBodyHelpers::CreateEllipsoid(), debugDrawConstraint(), btIDebugDraw::drawArc(), btIDebugDraw::drawCapsule(), btIDebugDraw::drawCone(), btIDebugDraw::drawCylinder(), btIDebugDraw::drawSpherePatch(), GetPointForAngle(), btTransformUtil::integrateTransform(), maxdirsterid(), predictPositionsMultiDof(), resolveConeFrictionConstraintRows(), btQuaternion::setEuler(), btQuaternion::setEulerZYX(), setEulerZYX(), btQuaternion::setRotation(), btQuaternion::slerp(), and stepPositionsMultiDof().
| SIMD_FORCE_INLINE btScalar btSqrt | ( | btScalar | y | ) |
Definition at line 466 of file btScalar.h.
References sqrtf, x, y, and z().
Referenced by btSoftBody::addAeroForceToFace(), btSoftBody::addAeroForceToNode(), angle(), btQuaternion::angle(), btQuaternion::angleShortestPath(), btDeformableFaceRigidContactConstraint::applyImpulse(), btComputeGjkEpaPenetration(), btConeShape(), btEpsRoot(), btTransformUtil::calculateDiffAxisAngle(), btTransformUtil::calculateDiffAxisAngleQuaternion(), Clamp(), SphereTriangleDetector::collide(), GivensRotation::compute(), btRigidBody::computeGyroscopicForceExplicit(), GivensRotation::computeUnconventional(), coneLocalSupport(), convertContact(), btSoftBodyHelpers::CreateEllipsoid(), CylinderLocalSupportX(), CylinderLocalSupportY(), CylinderLocalSupportZ(), diagonalize(), btPolyhedralContactClipping::findSeparatingAxis(), get_limit_motor_info2(), btQuaternion::getAxis(), btGjkPairDetector::getClosestPointsNonVirtual(), EPA< btConvexTemplate >::getedgedist(), gjkepa2_impl::EPA::getedgedist(), getInfo2InternalUsingFrameOffset(), getInfo2NonVirtual(), getRotation(), gridRaycast(), btTransformUtil::integrateTransform(), internalSetupContactConstraints(), GIM_CONTACT::interpolate_normals(), btQuaternion::length(), length(), localGetSupportVertexWithoutMarginNonVirtual(), polarDecomposition(), btSoftColliders::CollideVF_SS::Process(), ProjectOrigin(), GJK< btConvexTemplate >::projectorigin(), gjkepa2_impl::GJK::projectorigin(), safeNorm(), safeNormalize(), shortestArcQuat(), singularValueDecomposition(), singularValueDecomposition(), btQuaternion::slerp(), btEigen::system(), btDeformableLagrangianForce::testHessian(), btRaycastVehicle::updateFriction(), and wilkinsonShift().
| SIMD_FORCE_INLINE void btSwap | ( | T & | a, |
| T & | b ) |
Definition at line 643 of file btScalar.h.
References b.
Referenced by btSoftBody::applyRepulsionForce(), btInternalVertexPair::btInternalVertexPair(), btPolyhedralContactClipping::clipFaceAgainstHull(), btDbvtBroadphase::collide(), continuousCollisionDetection(), EPA< btConvexTemplate >::Evaluate(), gjkepa2_impl::EPA::Evaluate(), btSoftBody::generateClusters(), ImplicitSolve(), btSymMatrix< T >::index(), internalSetupContactConstraints(), btDbvtTreeCollider::Process(), btSoftBody::randomizeConstraints(), btSoftBody::refine(), btConvexHullInternal::shrink(), and sort().
| SIMD_FORCE_INLINE unsigned btSwapEndian | ( | int | val | ) |
Definition at line 661 of file btScalar.h.
References btSwapEndian().
| SIMD_FORCE_INLINE unsigned short btSwapEndian | ( | short | val | ) |
Definition at line 666 of file btScalar.h.
References btSwapEndian().
| SIMD_FORCE_INLINE unsigned short btSwapEndian | ( | unsigned short | val | ) |
Definition at line 656 of file btScalar.h.
| SIMD_FORCE_INLINE unsigned btSwapEndian | ( | unsigned | val | ) |
Definition at line 651 of file btScalar.h.
Referenced by btSwapEndian(), btSwapEndian(), and btDefaultSerializer::initDNA().
| SIMD_FORCE_INLINE void btSwapEndianDouble | ( | double | d, |
| unsigned char * | dst ) |
Definition at line 706 of file btScalar.h.
| SIMD_FORCE_INLINE unsigned int btSwapEndianFloat | ( | float | d | ) |
btSwapFloat uses using char pointers to swap the endianness
btSwapFloat/btSwapDouble will NOT return a float, because the machine might 'correct' invalid floating point values Not all values of sign/exponent/mantissa are valid floating point numbers according to IEEE 754. When a floating point unit is faced with an invalid value, it may actually change the value, or worse, throw an exception. In most systems, running user mode code, you wouldn't get an exception, but instead the hardware/os/runtime will 'fix' the number for you. so instead of returning a float/double, we return integer/long long integer
Definition at line 677 of file btScalar.h.
| SIMD_FORCE_INLINE btScalar btTan | ( | btScalar | x | ) |
Definition at line 500 of file btScalar.h.
References tanf.
| SIMD_FORCE_INLINE double btUnswapEndianDouble | ( | const unsigned char * | src | ) |
Definition at line 721 of file btScalar.h.
| SIMD_FORCE_INLINE float btUnswapEndianFloat | ( | unsigned int | a | ) |
Definition at line 691 of file btScalar.h.
|
static |
Definition at line 404 of file btScalar.h.
Referenced by btGetInfinityMask().