Class ConeShape
Represents a cone shape defined by a base radius and height.
public class ConeShape : RigidBodyShape, IDynamicTreeProxy, IPartitionedSetIndex, IUpdatableBoundingBox, ISupportMappable, IRayCastable, ISweepTestable, IDistanceTestable
- Inheritance
-
ConeShape
- Implements
- Inherited Members
Constructors
ConeShape(float, float)
Initializes a new instance of the ConeShape class with specified radius and height. The symmetry axis of the cone is aligned along the Y-axis.
public ConeShape(float radius = 0.5, float height = 1)
Parameters
Exceptions
- ArgumentOutOfRangeException
Thrown when
radiusorheightis less than or equal to zero.
Properties
Height
Gets or sets the height of the cone.
public float Height { get; set; }
Property Value
Exceptions
- ArgumentOutOfRangeException
Thrown when
valueis less than or equal to zero.
Radius
Gets or sets the radius of the cone at its base.
public float Radius { get; set; }
Property Value
Exceptions
- ArgumentOutOfRangeException
Thrown when radius is less than or equal to zero.
Methods
CalculateBoundingBox(in JQuaternion, in JVector, out JBoundingBox)
public override void CalculateBoundingBox(in JQuaternion orientation, in JVector position, out JBoundingBox box)
Parameters
orientationJQuaternionpositionJVectorboxJBoundingBox
CalculateMassInertia(out JMatrix, out JVector, out float)
Calculates the mass and inertia of the shape. Can be overridden by child classes to improve performance or accuracy. The default implementation relies on an approximation of the shape constructed using the support map function.
public override void CalculateMassInertia(out JMatrix inertia, out JVector com, out float mass)
Parameters
Remarks
The inertia tensor is computed relative to the coordinate system origin (0,0,0), not the center of mass.
GetCenter(out JVector)
Computes a point deep within the shape, used as an initial search point in GJK-based algorithms.
public override void GetCenter(out JVector point)
Parameters
pointJVectorA point guaranteed to be inside the convex hull, typically the center of mass.
SupportMap(in JVector, out JVector)
Computes the point on the shape that is furthest in the specified direction.
public override void SupportMap(in JVector direction, out JVector result)