Plane
Represents the value of a center point and two axes in a plane in three dimensions.
Namespace: Rhino.Geometry
Assembly: RhinoCommon (in RhinoCommon.dll)
Syntax
[SerializableAttribute]public struct Plane : IEquatable<Plane>, IEpsilonComparable<Plane>, ICloneable, IFormattable
The Plane type exposes the following members.
Constructors
Name
Description
Public Method
Plane(Plane)
Copy constructor.
Public Method
Code Example
Plane(Point3d, Vector3d)
Constructs a plane from a point and a normal vector.
Public Method
Code Example
Plane(Point3d, Point3d, Point3d)
Initializes a plane from three non-collinear points.
Public Method
Plane(Point3d, Vector3d, Vector3d)
Constructs a plane from a point and two vectors in the plane.
Public Method
Plane(Double, Double, Double, Double)
Constructs a plane from an equation Ax+By+Cz+D=0.
Properties
Name
Description
Public Property
IsValid
Gets a value indicating whether or not this is a valid plane. A plane is considered to be valid when all fields contain reasonable information and the equation jibes with point and z-axis.
Public Property
Normal
Gets the normal of this plane. This is essentially the ZAxis of the plane.
Public Property
Origin
Gets or sets the origin point of this plane.
Public Property
OriginX
Gets or sets the X coordinate of the origin of this plane.
Public Property
OriginY
Gets or sets the Y coordinate of the origin of this plane.
Public Property
OriginZ
Gets or sets the Z coordinate of the origin of this plane.
Public Property
Static Member
Unset
Gets a plane that contains Unset origin and axis vectors.
Public Property
Static Member
WorldXY
plane coincident with the World XY plane.
Public Property
Static Member
WorldYZ
plane coincident with the World YZ plane.
Public Property
Static Member
WorldZX
plane coincident with the World ZX plane.
Public Property
XAxis
Gets or sets the X axis vector of this plane.
Public Property
YAxis
Gets or sets the Y axis vector of this plane.
Public Property
ZAxis
Gets or sets the Z axis vector of this plane.
Methods
Name
Description
Public Method
Clone
Returns a deep copy of this instance.
Public Method
Code Example
ClosestParameter
Gets the parameters of the point on the plane closest to a test point.
Public Method
ClosestPoint
Gets the point on the plane closest to a test point.
Public Method
Static Member
CreateFromFrame
Constructs a plane from a point, and two vectors in the plane.
Public Method
Static Member
CreateFromNormal
Constructs a plane from a point and normal vector.
Public Method
Static Member
CreateFromNormalYup
Construct a plane from a point, a normal vector, and a vector that projects to the positive YAxis.
Public Method
Static Member
CreateFromPoints
Construct a plane from three non-collinear points.
Public Method
Code Example
DistanceTo(Point3d)
Returns the signed distance from testPoint to its projection onto this plane. If the point is below the plane, a negative distance is returned.
Public Method
DistanceTo(BoundingBox, Double., Double.)
Returns the signed minimum and maximum distances from bounding box to this plane.
Public Method
EpsilonEquals
Check that all values in other are within epsilon of the values in this
Public Method
Equals(Object)
Determines if an object is a plane and has the same components as this plane.
(Overrides ValueType.Equals(Object).)
Public Method
Equals(Plane)
Determines if another plane has the same components as this plane.
Public Method
ExtendThroughBox(BoundingBox, Interval., Interval.)
Extends this plane through a bounding box.
Public Method
ExtendThroughBox(Box, Interval., Interval.)
Extend this plane through a Box.
Public Method
Static Member
FitPlaneToPoints(IEnumerable.Point3d., Plane.)
Fit a plane through a collection of points.
Public Method
Static Member
FitPlaneToPoints(IEnumerable.Point3d., Plane., Double.)
Fit a plane through a collection of points.
Public Method
Flip
Flip this plane by swapping out the X and Y axes and inverting the Z axis.
Public Method
GetHashCode
Gets a non-unique hashing code for this entity.
(Overrides ValueType.GetHashCode..)
Public Method
GetPlaneEquation
Gets the plane equation for this plane in the format of Ax+By+Cz+D=0.
Public Method
GetType
Gets the Type of the current instance.
(Inherited from Object.)
Public Method
IsCoplanar(Plane)
Test if this plane is co-planar with a another plane.
Public Method
IsCoplanar(Plane, Double)
Test if this plane is co-planar with a another plane.
Public Method
PointAt(Double, Double)
Evaluate a point on the plane.
Public Method
PointAt(Double, Double, Double)
Evaluate a point on the plane.
Public Method
RemapToPlaneSpace
Convert a point from World space coordinates into Plane space coordinates.
Public Method
Rotate(Double, Vector3d)
Rotate the plane about its origin point.
Public Method
Rotate(Double, Vector3d, Point3d)
Rotate the plane about a custom anchor point.
Public Method
Rotate(Double, Double, Vector3d)
Rotate the plane about its origin point.
Public Method
Rotate(Double, Double, Vector3d, Point3d)
Rotate the plane about a custom anchor point.
Public Method
ToString.
Constructs the string representation of this plane.
(Overrides ValueType.ToString..)
Public Method
ToString(String, IFormatProvider)
Formats the value of the current instance using the specified format.
Public Method
Transform
Transform the plane with a Transformation matrix.
Public Method
Translate
Translate (move) the plane along a vector.
Public Method
UpdateEquation
Update Equations
Public Method
ValueAt
Get the value of the plane equation at the point.
Operators
Name
Description
Public Operator
Static Member
Equality
Determines if two planes are equal.
Public Operator
Static Member
Inequality
Determines if two planes are different.