ReactPhysics3D
v0.10.2
C++ Physics engine library
|
This class represents a sphere collision shape that is centered at the origin and defined by its radius. More...
#include <include/reactphysics3d/collision/shapes/SphereShape.h>
Public Member Functions | |
SphereShape (const SphereShape &shape)=delete | |
Deleted copy-constructor. | |
SphereShape & | operator= (const SphereShape &shape)=delete |
Deleted assignment operator. | |
decimal | getRadius () const |
Return the radius of the sphere. | |
void | setRadius (decimal radius) |
Set the radius of the sphere. | |
virtual bool | isPolyhedron () const override |
Return true if the collision shape is a polyhedron. | |
virtual AABB | getLocalBounds () const override |
Return the local bounds of the shape in x, y and z directions. | |
virtual Vector3 | getLocalInertiaTensor (decimal mass) const override |
Return the local inertia tensor of the collision shape. | |
virtual decimal | getVolume () const override |
Compute and return the volume of the collision shape. | |
virtual AABB | computeTransformedAABB (const Transform &transform) const override |
Compute the transformed AABB. | |
virtual std::string | to_string () const override |
Return the string representation of the shape. | |
Public Member Functions inherited from reactphysics3d::ConvexShape | |
ConvexShape (CollisionShapeName name, CollisionShapeType type, MemoryAllocator &allocator, decimal margin=decimal(0.0)) | |
Constructor. | |
virtual | ~ConvexShape () override=default |
Destructor. | |
ConvexShape (const ConvexShape &shape)=delete | |
Deleted copy-constructor. | |
ConvexShape & | operator= (const ConvexShape &shape)=delete |
Deleted assignment operator. | |
decimal | getMargin () const |
Return the current object margin. | |
virtual bool | isConvex () const override |
Return true if the collision shape is convex, false if it is concave. | |
Public Member Functions inherited from reactphysics3d::CollisionShape | |
CollisionShape (CollisionShapeName name, CollisionShapeType type, MemoryAllocator &allocator) | |
Constructor. | |
virtual | ~CollisionShape ()=default |
Destructor. | |
CollisionShape (const CollisionShape &shape)=delete | |
Deleted copy-constructor. | |
CollisionShape & | operator= (const CollisionShape &shape)=delete |
Deleted assignment operator. | |
CollisionShapeName | getName () const |
Return the name of the collision shape. | |
CollisionShapeType | getType () const |
Return the type of the collision shape. | |
uint32 | getId () const |
Return the id of the shape. | |
This class represents a sphere collision shape that is centered at the origin and defined by its radius.
This collision shape does not have an explicit object margin distance. The margin is implicitly the radius of the sphere. Therefore, no need to specify an object margin for a sphere shape.
Compute the transformed AABB.
transform | Transform used to for the space conversion |
Reimplemented from reactphysics3d::CollisionShape.
|
overridevirtual |
Return the local bounds of the shape in x, y and z directions.
Implements reactphysics3d::CollisionShape.
|
overridevirtual |
Return the local inertia tensor of the collision shape.
mass | Mass to use to compute the inertia tensor of the collision shape |
Implements reactphysics3d::CollisionShape.
RP3D_FORCE_INLINE decimal reactphysics3d::SphereShape::getRadius | ( | ) | const |
Return the radius of the sphere.
|
overridevirtual |
Compute and return the volume of the collision shape.
Implements reactphysics3d::CollisionShape.
|
overridevirtual |
Return true if the collision shape is a polyhedron.
Implements reactphysics3d::CollisionShape.
RP3D_FORCE_INLINE void reactphysics3d::SphereShape::setRadius | ( | decimal | radius | ) |
Set the radius of the sphere.
Note that you might want to recompute the inertia tensor and center of mass of the body after changing the radius of the collision shape.
radius | Radius of the sphere |
|
overridevirtual |
Return the string representation of the shape.
Implements reactphysics3d::CollisionShape.