# Plane Structure

Represents a double precision plane in three-dimensional space.

Namespace:  NeoAxis
Assembly:  NeoAxis.Core (in NeoAxis.Core.dll) Version: 2024.1.1.0 (2024.1.1.0)
Syntax
C#
`public struct Plane`

The Plane type exposes the following members.

Constructors
NameDescription
Plane(Plane)
Constructs a plane with another specified Plane object.
Plane(PlaneF)
Constructs a plane with the specified PlaneF object.
Plane(Vector4)
Constructs a plane from the given Vector4 object.
Plane(Vector3, Double)
Constructs a plane with the given normal and the distance along this normal from the origin.
Plane(Double, Double, Double, Double)
Constructs a plane with the given A, B, C and D components.
Top
Properties
NameDescription
Distance
The distance of the plane along its normal from the origin.
Item
Gets or sets the component at the specified index.
Normal
The normal vector of the plane.
Top
Methods
NameDescription
Equals(Object)
Determines whether the specified object is equal to the current instance of Plane.
(Overrides ValueTypeEquals(Object).)
Equals(Plane, Double)
Determines whether the specified plane is equal to the current instance of Plane with a given precision.
Equals(Plane, Double)
Determines whether the specified plane is equal to the current instance of Plane with a given precision.
Equals(Plane, Double, Double)
Determines whether the specified plane is equal to the current instance of Plane with the given normal and distance precisions.
Equals(Plane, Double, Double)
Determines whether the specified plane is equal to the current instance of Plane with the given normal and distance precisions.
FromPointAndNormal(Vector3, Vector3)
Creates an instance of Plane with the normal and the point.
FromPointAndNormal(Vector3, Vector3, Plane)
Creates an instance of Plane with the normal and the point.
FromPoints(Vector3, Vector3, Vector3)
Creates an instance of Plane that contains the three given points.
FromPoints(Vector3, Vector3, Vector3, Plane)
Creates an instance of Plane that contains the three given points.
FromVectors(Vector3, Vector3, Vector3)
Creates an instance of Plane with point and two direction vectors.
FromVectors(Vector3, Vector3, Vector3, Plane)
Creates an instance of Plane with point and two direction vectors.
GetDistance(Vector3)
Calculates the dot product of a specified vector and the normal of the plane plus the distance value of the plane.
GetDistance(Vector3)
Calculates the dot product of a specified vector and the normal of the plane plus the distance value of the plane.
GetHashCode
Returns a hash code for this instance.
(Overrides ValueTypeGetHashCode.)
GetNormalize
Converts a normal vector of the current instance of Plane into a unit vector and returns the resulting plane.
GetSide(Bounds)
Returns side of the plane that the given box lies on. The box is defined as bounds.
GetSide(Bounds)
Returns side of the plane that the given box lies on. The box is defined as bounds.
GetSide(Vector3)
Determines from which side of the plane the point is on.
GetSide(Vector3)
Determines from which side of the plane the point is on.
GetSide(Vector3, Vector3)
Returns side of the plane that the given box lies on. The box is defined as centre/half-size pairs for effectively.
GetSide(Vector3, Double)
Determines from which side of the plane the point is on (with the given precision).
GetSide(Vector3, Vector3)
Returns side of the plane that the given box lies on. The box is defined as centre/half-size pairs for effectively.
GetSide(Vector3, Double)
Determines from which side of the plane the point is on (with the given precision).
GetType
Gets the Type of the current instance.
(Inherited from Object.)
Intersects(Line3, Vector3)
Intersects(Line3, Double)
Determines whether the given line intersects the current instance of Plane.
Intersects(Line3, Double)
Determines whether the given line intersects the current instance of Plane.
Intersects(Ray, Vector3)
Determines whether the given ray intersects the current instance of Plane.
Intersects(Ray, Double)
Determines whether the given ray intersects the current instance of Plane.
Intersects(Ray, Vector3)
Determines whether the given ray intersects the current instance of Plane.
Intersects(Ray, Double)
Determines whether the given ray intersects the current instance of Plane.
Negate
Reverses the direction of a given plane.
Normalize
Converts a normal vector of the current instance of Plane into a unit vector.
Parse
Converts a string representation of a plane into the equivalent Plane structure.
Subtract
Subtracts two planes.
ToPlaneF
Converts the current instance of Plane to the plane of PlaneF format.
ToString
Returns a String that represents the current instance of Plane.
(Overrides ValueTypeToString.)
ToString(Int32)
Returns a String that represents the current instance of Plane with a given precision.
ToVector4
Converts the current instance of Plane into an instance of Vector4.
Top
Operators
NameDescription
Equality
Determines whether two given planes are equal.
Inequality
Determines whether two given planes are unequal.
Subtraction
Subtracts two planes.
UnaryNegation
Reverses the direction of a given plane.
Top
Fields
NameDescription
A
The A component of the plane.
B
The B component of the plane.
C
The C component of the plane.
D
The D component of the plane.
Zero
Returns the plane with all of its components set to zero.
Top
Extension Methods
NameDescription
MethodInvoke
Calls the object method by name.
(Defined by ObjectEx.)