C# Class BEPUphysics.CollisionShapes.ConvexShapes.ConvexShape

Superclass of convex collision shapes.
Inheritance: EntityShape
Afficher le fichier Open project: Indiefreaks/igf Class Usage Examples

Protected Properties

Свойство Type Description
collisionMargin float
maximumRadius float
minimumRadius float

Méthodes publiques

Méthode Description
ComputeCenter ( ) : Vector3

Computes the center of the shape. This can be considered its center of mass.

ComputeCenter ( float &volume ) : Vector3

Computes the center of the shape. This can be considered its center of mass. This calculation is often associated with the volume calculation, which is given by this method as well.

ComputeDistributionInformation ( ShapeDistributionInformation &shapeInfo ) : void
ComputeMaximumRadius ( ) : float

Computes the maximum radius of the shape. This is often larger than the actual maximum radius; it is simply an approximation that avoids underestimating.

ComputeMinimumRadius ( ) : float

Computes the minimum radius of the shape. This is often smaller than the actual minimum radius; it is simply an approximation that avoids overestimating.

ComputeVolume ( ) : float

Computes the volume of the shape.

ComputeVolumeDistribution ( ) : Matrix3x3

Computes the volume distribution of the shape. The volume distribution can be used to compute inertia tensors when paired with mass and other tuning factors.

ComputeVolumeDistribution ( float &volume ) : Matrix3x3

Computes the volume distribution of the shape as well as its volume. The volume distribution can be used to compute inertia tensors when paired with mass and other tuning factors.

GetBoundingBox ( RigidTransform &shapeTransform, BoundingBox &boundingBox ) : void

Gets the bounding box of the shape given a transform.

GetExtremePoint ( Vector3 direction, RigidTransform &shapeTransform, Vector3 &extremePoint ) : void

Gets the extreme point of the shape in world space in a given direction with margin expansion.

GetExtremePointWithoutMargin ( Vector3 direction, RigidTransform &shapeTransform, Vector3 &extremePoint ) : void

Gets the extreme point of the shape in world space in a given direction.

GetLocalBoundingBox ( RigidTransform &shapeTransform, AffineTransform &spaceTransform, BoundingBox &boundingBox ) : void

Gets the bounding box of the convex shape transformed first into world space, and then into the local space of another affine transform.

GetLocalExtremePoint ( Vector3 direction, Vector3 &extremePoint ) : void

Gets the extreme point of the shape in local space in a given direction with margin expansion.

GetLocalExtremePointWithoutMargin ( Vector3 &direction, Vector3 &extremePoint ) : void

Gets the extreme point of the shape in local space in a given direction.

GetSweptBoundingBox ( RigidTransform &transform, Vector3 &sweep, BoundingBox &boundingBox ) : void

Computes a bounding box for the shape and expands it.

GetSweptLocalBoundingBox ( RigidTransform &shapeTransform, AffineTransform &spaceTransform, Vector3 &sweep, BoundingBox &boundingBox ) : void

Gets the bounding box of the convex shape transformed first into world space, and then into the local space of another affine transform.

RayTest ( Ray &ray, RigidTransform &transform, float maximumLength, RayHit &hit ) : bool

Gets the intersection between the convex shape and the ray.

Méthodes protégées

Méthode Description
OnShapeChanged ( ) : void

Method Details

ComputeCenter() public méthode

Computes the center of the shape. This can be considered its center of mass.
public ComputeCenter ( ) : Vector3
Résultat Vector3

ComputeCenter() public méthode

Computes the center of the shape. This can be considered its center of mass. This calculation is often associated with the volume calculation, which is given by this method as well.
public ComputeCenter ( float &volume ) : Vector3
volume float Volume of the shape.
Résultat Vector3

ComputeDistributionInformation() public méthode

public ComputeDistributionInformation ( ShapeDistributionInformation &shapeInfo ) : void
shapeInfo ShapeDistributionInformation
Résultat void

ComputeMaximumRadius() public abstract méthode

Computes the maximum radius of the shape. This is often larger than the actual maximum radius; it is simply an approximation that avoids underestimating.
public abstract ComputeMaximumRadius ( ) : float
Résultat float

ComputeMinimumRadius() public abstract méthode

Computes the minimum radius of the shape. This is often smaller than the actual minimum radius; it is simply an approximation that avoids overestimating.
public abstract ComputeMinimumRadius ( ) : float
Résultat float

ComputeVolume() public méthode

Computes the volume of the shape.
public ComputeVolume ( ) : float
Résultat float

ComputeVolumeDistribution() public méthode

Computes the volume distribution of the shape. The volume distribution can be used to compute inertia tensors when paired with mass and other tuning factors.
public ComputeVolumeDistribution ( ) : Matrix3x3
Résultat BEPUutilities.Matrix3x3

ComputeVolumeDistribution() public méthode

Computes the volume distribution of the shape as well as its volume. The volume distribution can be used to compute inertia tensors when paired with mass and other tuning factors.
public ComputeVolumeDistribution ( float &volume ) : Matrix3x3
volume float Volume of the shape.
Résultat BEPUutilities.Matrix3x3

GetBoundingBox() public méthode

Gets the bounding box of the shape given a transform.
public GetBoundingBox ( RigidTransform &shapeTransform, BoundingBox &boundingBox ) : void
shapeTransform BEPUutilities.RigidTransform Transform to use.
boundingBox BoundingBox Bounding box of the transformed shape.
Résultat void

GetExtremePoint() public méthode

Gets the extreme point of the shape in world space in a given direction with margin expansion.
public GetExtremePoint ( Vector3 direction, RigidTransform &shapeTransform, Vector3 &extremePoint ) : void
direction Vector3 Direction to find the extreme point in.
shapeTransform BEPUutilities.RigidTransform Transform to use for the shape.
extremePoint Vector3 Extreme point on the shape.
Résultat void

GetExtremePointWithoutMargin() public méthode

Gets the extreme point of the shape in world space in a given direction.
public GetExtremePointWithoutMargin ( Vector3 direction, RigidTransform &shapeTransform, Vector3 &extremePoint ) : void
direction Vector3 Direction to find the extreme point in.
shapeTransform BEPUutilities.RigidTransform Transform to use for the shape.
extremePoint Vector3 Extreme point on the shape.
Résultat void

GetLocalBoundingBox() public méthode

Gets the bounding box of the convex shape transformed first into world space, and then into the local space of another affine transform.
public GetLocalBoundingBox ( RigidTransform &shapeTransform, AffineTransform &spaceTransform, BoundingBox &boundingBox ) : void
shapeTransform BEPUutilities.RigidTransform Transform to use to put the shape into world space.
spaceTransform BEPUutilities.AffineTransform Used as the frame of reference to compute the bounding box. /// In effect, the shape is transformed by the inverse of the space transform to compute its bounding box in local space.
boundingBox BoundingBox Bounding box in the local space.
Résultat void

GetLocalExtremePoint() public méthode

Gets the extreme point of the shape in local space in a given direction with margin expansion.
public GetLocalExtremePoint ( Vector3 direction, Vector3 &extremePoint ) : void
direction Vector3 Direction to find the extreme point in.
extremePoint Vector3 Extreme point on the shape.
Résultat void

GetLocalExtremePointWithoutMargin() public abstract méthode

Gets the extreme point of the shape in local space in a given direction.
public abstract GetLocalExtremePointWithoutMargin ( Vector3 &direction, Vector3 &extremePoint ) : void
direction Vector3 Direction to find the extreme point in.
extremePoint Vector3 Extreme point on the shape.
Résultat void

GetSweptBoundingBox() public méthode

Computes a bounding box for the shape and expands it.
public GetSweptBoundingBox ( RigidTransform &transform, Vector3 &sweep, BoundingBox &boundingBox ) : void
transform BEPUutilities.RigidTransform Transform to use to position the shape.
sweep Vector3 Extra to add to the bounding box.
boundingBox BoundingBox Expanded bounding box.
Résultat void

GetSweptLocalBoundingBox() public méthode

Gets the bounding box of the convex shape transformed first into world space, and then into the local space of another affine transform.
public GetSweptLocalBoundingBox ( RigidTransform &shapeTransform, AffineTransform &spaceTransform, Vector3 &sweep, BoundingBox &boundingBox ) : void
shapeTransform BEPUutilities.RigidTransform Transform to use to put the shape into world space.
spaceTransform BEPUutilities.AffineTransform Used as the frame of reference to compute the bounding box. /// In effect, the shape is transformed by the inverse of the space transform to compute its bounding box in local space.
sweep Vector3 Vector to expand the bounding box with in local space.
boundingBox BoundingBox Bounding box in the local space.
Résultat void

OnShapeChanged() protected méthode

protected OnShapeChanged ( ) : void
Résultat void

RayTest() public méthode

Gets the intersection between the convex shape and the ray.
public RayTest ( Ray &ray, RigidTransform &transform, float maximumLength, RayHit &hit ) : bool
ray Ray Ray to test.
transform BEPUutilities.RigidTransform Transform of the convex shape.
maximumLength float Maximum distance to travel in units of the ray direction's length.
hit BEPUutilities.RayHit Ray hit data, if any.
Résultat bool

Property Details

collisionMargin protected_oe property

protected float collisionMargin
Résultat float

maximumRadius protected_oe property

protected float maximumRadius
Résultat float

minimumRadius protected_oe property

protected float minimumRadius
Résultat float