Skip to content

Plane.CreateByNormalAndOrigin

Public Class

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.

Namespace: Autodesk.Revit.DB

Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

Syntax

public static Plane CreateByNormalAndOrigin(
XYZ normal,
XYZ origin
)

Parameters

normal XYZ

Plane normal. Expected to be a valid non-zero length vector. Doesn’t need to be a unit vector.

origin XYZ

Plane origin. Expected to lie within the Revit design limits IsWithinLengthLimits(XYZ).

Return Value

Plane

Exceptions

Exception

Condition


ArgumentException

The input point lies outside of Revit design limits.


ArgumentNullException

A non-optional argument was null


ArgumentOutOfRangeException

normal has zero length.


Remarks

This function does not guarantee a specific parameterization of the created Plane. Use Plane.Create(Frame) to enforce a specific parameterization of the created Plane object.

Example

// Create a geometry plane in Revit application
XYZ normal = XYZ.BasisZ; // use basis of the z-axis (0,0,1) for normal vector
XYZ origin = XYZ.Zero; // origin is (0,0,0)
Plane geomPlane = Plane.CreateByNormalAndOrigin(normal, origin);