GeometryHelper Class |
Namespace: DigitalRune.Geometry
The GeometryHelper type exposes the following members.
Name | Description | |
---|---|---|
ArePointsOnOppositeSides |
Determines whether two points P and Q are on opposite sides of a plane. The plane is
determined by three points (A, B, C).
| |
ComputeBoundingBox |
Computes the minimum box that contains the given points.
| |
ComputeBoundingCapsule |
Computes a tight-fitting capsule that contains the given points.
| |
ComputeBoundingSphere |
Computes the minimum sphere that contains the given points.
| |
ComputeCircumscribedSphere(Vector3F, Vector3F, Single, Vector3F) |
Computes a sphere where all given points touch the surface.
| |
ComputeCircumscribedSphere(Vector3F, Vector3F, Vector3F, Single, Vector3F) |
Computes a sphere where all given points touch the surface.
| |
ComputeCircumscribedSphere(Vector3F, Vector3F, Vector3F, Vector3F, Single, Vector3F) |
Computes a sphere where all given points touch the surface.
| |
CreateBoundingShape |
Computes a minimum bounding shape that contains all given points.
| |
CreateConvexHull(IEnumerableVector3F) |
Creates a convex hull mesh for a set of points.
| |
CreateConvexHull(IEnumerableVector3F, Int32, Single) |
Creates a convex hull mesh for a set of points.
| |
CreateIcosphere |
Creates a sphere (or hemisphere) by successively subdividing an icosahedron.
| |
ExtractPlanes(Matrix, IListPlane, Boolean) |
Extracts the viewing frustum planes of a world-view-projection matrix. (Only available in
the XNA-compatible build.)
| |
ExtractPlanes(Matrix44F, IListPlane, Boolean) |
Extracts the viewing frustum planes of a world-view-projection matrix.
| |
GetBarycentricFromPoint(Triangle, Vector3F, Single, Single, Single) |
Gets the barycentric coordinates of a point and a triangle.
| |
GetBarycentricFromPoint(Triangle, Vector3F, Single, Single, Single) |
Determines whether the projection of a point (into the triangle plane) is inside the given
triangle. (This overload uses per-reference parameters for performance.)
| |
GetClosestPoint(Aabb, Vector3F, Vector3F) |
Gets the point on or in an axis-aligned bounding box (AABB) that is closest to a given
point.
| |
GetClosestPoint(Line, Vector3F, Vector3F) |
Gets the closest point of a line to a point.
| |
GetClosestPoint(Plane, Vector3F, Vector3F) |
Gets the point on a plane surface that is closest to a given point.
| |
GetClosestPoint(Triangle, Vector3F, Single, Single, Single) |
Gets the barycentric coordinates (u, v,
w of the point in a triangle which is closest to
the given point).
| |
GetClosestPoints(LineSegment, Vector3F, Vector3F) |
Gets the closest point of a line segment to a point.
| |
GetClosestPoints(Line, Line, Vector3F, Vector3F) |
Gets the closest points of two lines.
| |
GetClosestPoints(LineSegment, Line, Vector3F, Vector3F) |
Gets the closest points of a line and a line segment.
| |
GetClosestPoints(LineSegment, LineSegment, Vector3F, Vector3F) |
Gets the closest points of two line segments.
| |
GetClosestPoints(Plane, Line, Vector3F, Vector3F) |
Gets the closest points of a line and a plane.
| |
GetClosestPoints(Plane, LineSegment, Vector3F, Vector3F) |
Gets the closest points of a line and a plane.
| |
GetContact |
Computes the ray vs. triangle contact.
| |
GetDistance(Aabb, Aabb) |
Computes the distance between the two axis-aligned bounding boxes (AABBs).
| |
GetDistance(Plane, Vector3F) |
Gets the signed distance of a point to a plane surface.
| |
GetIntersection |
Gets the intersection point of three planes.
| |
GetPointFromBarycentric |
Gets the point on the triangle defined by the given barycentric coordinates.
| |
GetVolume |
Gets the enclosed volume of a triangle mesh.
| |
HaveContact(Single, Vector3F) |
Determines whether the specified point is inside the sphere.
| |
HaveContact(Aabb, Aabb) |
Determines whether two axis-aligned bounding boxes (AABBs) overlap.
| |
HaveContact(Aabb, Plane) |
Determines whether the given axis-aligned bounding box (AABB) and plane overlap.
| |
HaveContact(Aabb, Ray) |
Determines whether the given axis-aligned bounding box (AABB) and ray overlap.
| |
HaveContact(Aabb, Vector3F) |
Determines whether the axis-aligned bounding box (AABB) contains or touches the given point.
| |
HaveContact(Triangle, Triangle) |
Determines whether two triangles overlap.
| |
HaveContact(Triangle, Triangle) |
Determines whether two triangles overlap.
| |
HaveContact(Vector3F, Vector3F) |
Determines whether the specified point is inside the box.
| |
HaveContact(Aabb, Aabb, Vector3F) |
Determines whether a given AABB is hit by a moving AABB.
| |
HaveContact(Aabb, Ray, Single) |
Determines whether the given axis-aligned bounding box (AABB) and ray overlap.
| |
HaveContact(Aabb, Vector3F, Pose, Boolean) |
Determines whether the axis-aligned bounding box (AABB) and a box have contact.
| |
IsInFront |
Determines whether the point is in front of the triangle.
| |
IsOver(Triangle, Vector3F) |
Determines whether the projection of a point (into the triangle plane) is inside the given
triangle.
| |
IsOver(Triangle, Vector3F) |
Determines whether the projection of a point (into the triangle plane) is inside the given
triangle. (This overload uses per-reference parameters for performance.)
| |
IsOver(Triangle, Vector3F, Single) |
Determines whether the projection of a point (into the triangle plane) is inside the given
triangle.
| |
MergeDuplicatePositions(IListVector3F, Single) |
Merges duplicate positions.
| |
MergeDuplicatePositions(IListVector3F, Single, Int32) |
Merges duplicate positions.
| |
Triangulate(IListVector3F, IListInt32) |
Triangulates a polygon specified by a list of vertices.
| |
Triangulate(IListVector3F, Int32, Int32, IListInt32) |
Triangulates a polygon specified by a list of vertices.
|