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: 26.3.0.0 (26.3.0.0)
Syntax
C#
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
PlaneExceptions
| 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
C#
// 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);
VB
' Create a geometry plane in Revit application Dim normal As XYZ = XYZ.BasisZ ' use basis of the z-axis (0,0,1) for normal vector Dim origin As XYZ = XYZ.Zero ' origin is (0,0,0) Dim geomPlane As Plane = Plane.CreateByNormalAndOrigin(normal, origin)
