Space Engineers
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
VRageMath.Plane Struct Reference

Defines a plane. More...

Inheritance diagram for VRageMath.Plane:

Public Member Functions

 Plane (float a, float b, float c, float d)
 Creates a new instance of Plane. More...
 
 Plane (Vector3 normal, float d)
 Creates a new instance of Plane. More...
 
 Plane (Vector3 position, Vector3 normal)
 Creates a new instance of Plane. More...
 
 Plane (Vector4 value)
 Creates a new instance of Plane. More...
 
 Plane (Vector3 point1, Vector3 point2, Vector3 point3)
 Creates a new instance of Plane. More...
 
bool Equals (Plane other)
 Determines whether the specified Plane is equal to the Plane. More...
 
override bool Equals (object obj)
 Determines whether the specified Object is equal to the Plane. More...
 
override int GetHashCode ()
 Gets the hash code for this object. More...
 
override string ToString ()
 Returns a String that represents the current Plane. More...
 
void Normalize ()
 Changes the coefficients of the Normal vector of this Plane to make it of unit length. More...
 
float Dot (Vector4 value)
 Calculates the dot product of a specified Vector4 and this Plane. More...
 
void Dot (ref Vector4 value, out float result)
 Calculates the dot product of a specified Vector4 and this Plane. More...
 
float DotCoordinate (Vector3 value)
 Returns the dot product of a specified Vector3 and the Normal vector of this Plane plus the distance (D) value of the Plane. More...
 
void DotCoordinate (ref Vector3 value, out float result)
 Returns the dot product of a specified Vector3 and the Normal vector of this Plane plus the distance (D) value of the Plane. More...
 
float DotNormal (Vector3 value)
 Returns the dot product of a specified Vector3 and the Normal vector of this Plane. More...
 
void DotNormal (ref Vector3 value, out float result)
 Returns the dot product of a specified Vector3 and the Normal vector of this Plane. More...
 
PlaneIntersectionType Intersects (BoundingBox box)
 Checks whether the current Plane intersects a specified BoundingBox. More...
 
void Intersects (ref BoundingBox box, out PlaneIntersectionType result)
 Checks whether the current Plane intersects a BoundingBox. More...
 
PlaneIntersectionType Intersects (BoundingFrustum frustum)
 Checks whether the current Plane intersects a specified BoundingFrustum. More...
 
PlaneIntersectionType Intersects (BoundingSphere sphere)
 Checks whether the current Plane intersects a specified BoundingSphere. More...
 
void Intersects (ref BoundingSphere sphere, out PlaneIntersectionType result)
 Checks whether the current Plane intersects a BoundingSphere. More...
 
Vector3 RandomPoint ()
 

Static Public Member Functions

static bool operator== (Plane lhs, Plane rhs)
 Determines whether two instances of Plane are equal. More...
 
static bool operator!= (Plane lhs, Plane rhs)
 Determines whether two instances of Plane are not equal. More...
 
static Plane Normalize (Plane value)
 Changes the coefficients of the Normal vector of a Plane to make it of unit length. More...
 
static void Normalize (ref Plane value, out Plane result)
 Changes the coefficients of the Normal vector of a Plane to make it of unit length. More...
 
static Plane Transform (Plane plane, Matrix matrix)
 Transforms a normalized Plane by a Matrix. More...
 
static void Transform (ref Plane plane, ref Matrix matrix, out Plane result)
 Transforms a normalized Plane by a Matrix. More...
 

Public Attributes

Vector3 Normal
 The normal vector of the Plane. More...
 
float D
 The distance of the Plane along its normal from the origin. Note: Be careful! The distance is signed and is the opposite of what people usually expect. If you look closely at the plane equation: (n dot P) - D = 0, you'll realize that D = - (n dot P) (that is, negative instead of positive) More...
 

Static Public Attributes

static System.Random _random
 

Detailed Description

Defines a plane.

Definition at line 10 of file Plane.cs.

Constructor & Destructor Documentation

VRageMath.Plane.Plane ( float  a,
float  b,
float  c,
float  d 
)
inline

Creates a new instance of Plane.

Parameters
aX component of the normal defining the Plane.
bY component of the normal defining the Plane.
cZ component of the normal defining the Plane.
dDistance of the origin from the plane along its normal.

Definition at line 27 of file Plane.cs.

VRageMath.Plane.Plane ( Vector3  normal,
float  d 
)
inline

Creates a new instance of Plane.

Parameters
normalThe normal vector to the Plane.
dDistance of the origin from the plane along its normal.

Definition at line 39 of file Plane.cs.

VRageMath.Plane.Plane ( Vector3  position,
Vector3  normal 
)
inline

Creates a new instance of Plane.

Parameters
positionA point that lies on the Plane
normalThe normal vector to the Plane.

Definition at line 49 of file Plane.cs.

VRageMath.Plane.Plane ( Vector4  value)
inline

Creates a new instance of Plane.

Parameters
valueVector4 with X, Y, and Z components defining the normal of the Plane. The W component defines the distance of the origin from the plane along its normal.

Definition at line 60 of file Plane.cs.

VRageMath.Plane.Plane ( Vector3  point1,
Vector3  point2,
Vector3  point3 
)
inline

Creates a new instance of Plane.

Parameters
point1One point of a triangle defining the Plane.
point2One point of a triangle defining the Plane.
point3One point of a triangle defining the Plane.

Definition at line 72 of file Plane.cs.

Member Function Documentation

float VRageMath.Plane.Dot ( Vector4  value)
inline

Calculates the dot product of a specified Vector4 and this Plane.

Parameters
valueThe Vector4 to multiply this Plane by.

Definition at line 248 of file Plane.cs.

void VRageMath.Plane.Dot ( ref Vector4  value,
out float  result 
)
inline

Calculates the dot product of a specified Vector4 and this Plane.

Parameters
valueThe Vector4 to multiply this Plane by.
result[OutAttribute] The dot product of the specified Vector4 and this Plane.

Definition at line 257 of file Plane.cs.

float VRageMath.Plane.DotCoordinate ( Vector3  value)
inline

Returns the dot product of a specified Vector3 and the Normal vector of this Plane plus the distance (D) value of the Plane.

Parameters
valueThe Vector3 to multiply by.

Definition at line 266 of file Plane.cs.

void VRageMath.Plane.DotCoordinate ( ref Vector3  value,
out float  result 
)
inline

Returns the dot product of a specified Vector3 and the Normal vector of this Plane plus the distance (D) value of the Plane.

Parameters
valueThe Vector3 to multiply by.
result[OutAttribute] The resulting value.

Definition at line 275 of file Plane.cs.

float VRageMath.Plane.DotNormal ( Vector3  value)
inline

Returns the dot product of a specified Vector3 and the Normal vector of this Plane.

Parameters
valueThe Vector3 to multiply by.

Definition at line 284 of file Plane.cs.

void VRageMath.Plane.DotNormal ( ref Vector3  value,
out float  result 
)
inline

Returns the dot product of a specified Vector3 and the Normal vector of this Plane.

Parameters
valueThe Vector3 to multiply by.
result[OutAttribute] The resulting dot product.

Definition at line 293 of file Plane.cs.

bool VRageMath.Plane.Equals ( Plane  other)
inline

Determines whether the specified Plane is equal to the Plane.

Parameters
otherThe Plane to compare with the current Plane.

Definition at line 115 of file Plane.cs.

override bool VRageMath.Plane.Equals ( object  obj)
inline

Determines whether the specified Object is equal to the Plane.

Parameters
objThe Object to compare with the current Plane.

Definition at line 127 of file Plane.cs.

override int VRageMath.Plane.GetHashCode ( )
inline

Gets the hash code for this object.

Definition at line 138 of file Plane.cs.

PlaneIntersectionType VRageMath.Plane.Intersects ( BoundingBox  box)
inline

Checks whether the current Plane intersects a specified BoundingBox.

Parameters
boxThe BoundingBox to test for intersection with.

Definition at line 302 of file Plane.cs.

void VRageMath.Plane.Intersects ( ref BoundingBox  box,
out PlaneIntersectionType  result 
)
inline

Checks whether the current Plane intersects a BoundingBox.

Parameters
boxThe BoundingBox to check for intersection with.
result[OutAttribute] An enumeration indicating whether the Plane intersects the BoundingBox.

Definition at line 321 of file Plane.cs.

PlaneIntersectionType VRageMath.Plane.Intersects ( BoundingFrustum  frustum)
inline

Checks whether the current Plane intersects a specified BoundingFrustum.

Parameters
frustumThe BoundingFrustum to check for intersection with.

Definition at line 343 of file Plane.cs.

PlaneIntersectionType VRageMath.Plane.Intersects ( BoundingSphere  sphere)
inline

Checks whether the current Plane intersects a specified BoundingSphere.

Parameters
sphereThe BoundingSphere to check for intersection with.

Definition at line 352 of file Plane.cs.

void VRageMath.Plane.Intersects ( ref BoundingSphere  sphere,
out PlaneIntersectionType  result 
)
inline

Checks whether the current Plane intersects a BoundingSphere.

Parameters
sphereThe BoundingSphere to check for intersection with.
result[OutAttribute] An enumeration indicating whether the Plane intersects the BoundingSphere.

Definition at line 364 of file Plane.cs.

void VRageMath.Plane.Normalize ( )
inline

Changes the coefficients of the Normal vector of this Plane to make it of unit length.

Definition at line 159 of file Plane.cs.

static Plane VRageMath.Plane.Normalize ( Plane  value)
inlinestatic

Changes the coefficients of the Normal vector of a Plane to make it of unit length.

Parameters
valueThe Plane to normalize.

Definition at line 175 of file Plane.cs.

static void VRageMath.Plane.Normalize ( ref Plane  value,
out Plane  result 
)
inlinestatic

Changes the coefficients of the Normal vector of a Plane to make it of unit length.

Parameters
valueThe Plane to normalize.
result[OutAttribute] An existing plane Plane filled in with a normalized version of the specified plane.

Definition at line 201 of file Plane.cs.

static bool VRageMath.Plane.operator!= ( Plane  lhs,
Plane  rhs 
)
inlinestatic

Determines whether two instances of Plane are not equal.

Parameters
lhsThe object to the left of the inequality operator.
rhsThe object to the right of the inequality operator.

Definition at line 103 of file Plane.cs.

static bool VRageMath.Plane.operator== ( Plane  lhs,
Plane  rhs 
)
inlinestatic

Determines whether two instances of Plane are equal.

Parameters
lhsThe object to the left of the equality operator.
rhsThe object to the right of the equality operator.

Definition at line 94 of file Plane.cs.

Vector3 VRageMath.Plane.RandomPoint ( )
inline

Definition at line 379 of file Plane.cs.

override string VRageMath.Plane.ToString ( )
inline

Returns a String that represents the current Plane.

Definition at line 146 of file Plane.cs.

static Plane VRageMath.Plane.Transform ( Plane  plane,
Matrix  matrix 
)
inlinestatic

Transforms a normalized Plane by a Matrix.

Parameters
planeThe normalized Plane to transform. This Plane must already be normalized, so that its Normal vector is of unit length, before this method is called.
matrixThe transform Matrix to apply to the Plane.

Definition at line 223 of file Plane.cs.

static void VRageMath.Plane.Transform ( ref Plane  plane,
ref Matrix  matrix,
out Plane  result 
)
inlinestatic

Transforms a normalized Plane by a Matrix.

Parameters
planeThe normalized Plane to transform. This Plane must already be normalized, so that its Normal vector is of unit length, before this method is called.
matrixThe transform Matrix to apply to the Plane.
result[OutAttribute] An existing Plane filled in with the results of applying the transform.

Definition at line 234 of file Plane.cs.

Member Data Documentation

System.Random VRageMath.Plane._random
static

Definition at line 375 of file Plane.cs.

float VRageMath.Plane.D

The distance of the Plane along its normal from the origin. Note: Be careful! The distance is signed and is the opposite of what people usually expect. If you look closely at the plane equation: (n dot P) - D = 0, you'll realize that D = - (n dot P) (that is, negative instead of positive)

Definition at line 21 of file Plane.cs.

Vector3 VRageMath.Plane.Normal

The normal vector of the Plane.

Definition at line 15 of file Plane.cs.


The documentation for this struct was generated from the following file: