Plane Class

A Planar surface.
Inheritance Hierarchy
SystemObject
  Autodesk.Revit.DBSurface
    Autodesk.Revit.DBPlane

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public class Plane : Surface

The Plane type exposes the following members.

Properties
 NameDescription
Public propertyIsValidObject Specifies whether the .NET object represents a valid Revit entity.
(Inherited from Surface)
Public propertyNormal Plane normal.
Public propertyOrientationMatchesParametricOrientation Indicates whether this Surface's orientation is the same as or opposite to its parametric orientation.
(Inherited from Surface)
Public propertyOrigin Plane origin.
Public propertyXVec Axis defining the first parametric direction of the plane.
Public propertyYVec Axis defining the second parametric direction of the plane.
Top
Methods
 NameDescription
Public methodStatic memberCreate Creates a Plane object defined by a local frame of reference.
Public methodStatic memberCode exampleCreateByNormalAndOrigin Constructs a Plane object from a normal and an origin represented as XYZ objects. Follows the standard conventions for a planar surface. The constructed Plane object will pass through origin and be perpendicular to normal. The X and Y axes of the plane will be defined arbitrarily.
Public methodStatic memberCreateByOriginAndBasis Creates a Plane object defined by the two orthogonal unit vectors and passing through the origin point supplied as arguments.
Public methodStatic memberCreateByThreePoints Creates a Plane object passing through three points supplied as arguments.
Public methodDispose
(Inherited from Surface)
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodGetBoundingBoxUV Gets the UV bounding box of the surface.
(Inherited from Surface)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodProject Project a 3D point orthogonally onto a surface (to find the nearest point). Throws InvalidOperationException if the projection fails.
(Inherited from Surface)
Public methodProjectWithGuessPoint Project a 3D point orthogonally onto a surface (to find the nearest point). This method is meant to be used when a good approximate solution for the projection is available. Throws InvalidOperationException if the projection fails.
(Inherited from Surface)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Remarks
The parametric equation of the plane is S(u, v) = origin + u*xVec + v*yVec.
Example
public void GetPlaneInfo(Plane plane)
{
    XYZ origin = plane.Origin;
    XYZ normal = plane.Normal;
    XYZ xVec = plane.XVec;
    XYZ yVec = plane.YVec;

    StringBuilder info = new StringBuilder();
    info.AppendLine("Plane Data:");
    info.AppendLine(string.Format("     Origin: ({0},{1},{2})", origin.X, origin.Y, origin.Z));
    info.AppendLine(string.Format("     Normal: ({0},{1},{2})", normal.X, normal.Y, normal.Z));
    info.AppendLine(string.Format("     XVec: ({0},{1},{2})", xVec.X, xVec.Y, xVec.Z));
    info.AppendLine(string.Format("     YVec: ({0},{1},{2})", yVec.X, yVec.Y, yVec.Z));

    TaskDialog.Show("Revit",info.ToString());
}
See Also