MCPcopy Create free account
hub / github.com/DanielChappuis/reactphysics3d / destroyComponent

Method destroyComponent

src/components/RigidBodyComponents.cpp:387–416  ·  view source on GitHub ↗

Destroy a component at a given index

Source from the content-addressed store, hash-verified

385
386// Destroy a component at a given index
387void RigidBodyComponents::destroyComponent(uint32 index) {
388
389 Components::destroyComponent(index);
390
391 assert(mMapEntityToComponentIndex[mBodiesEntities[index]] == index);
392
393 mMapEntityToComponentIndex.remove(mBodiesEntities[index]);
394
395 mBodiesEntities[index].~Entity();
396 mRigidBodies[index] = nullptr;
397 mLinearVelocities[index].~Vector3();
398 mAngularVelocities[index].~Vector3();
399 mExternalForces[index].~Vector3();
400 mExternalTorques[index].~Vector3();
401 mLocalInertiaTensors[index].~Vector3();
402 mInverseInertiaTensorsLocal[index].~Vector3();
403 mInverseInertiaTensorsWorld[index].~Matrix3x3();
404 mConstrainedLinearVelocities[index].~Vector3();
405 mConstrainedAngularVelocities[index].~Vector3();
406 mSplitLinearVelocities[index].~Vector3();
407 mSplitAngularVelocities[index].~Vector3();
408 mConstrainedPositions[index].~Vector3();
409 mConstrainedOrientations[index].~Quaternion();
410 mCentersOfMassLocal[index].~Vector3();
411 mCentersOfMassWorld[index].~Vector3();
412 mJoints[index].~Array<Entity>();
413 mContactPairs[index].~Array<uint>();
414 mLinearLockAxisFactors[index].~Vector3();
415 mAngularLockAxisFactors[index].~Vector3();
416}

Callers

nothing calls this directly

Calls 2

~Vector3Method · 0.80
removeMethod · 0.45

Tested by

no test coverage detected