CreateByNormalAndOrigin Method


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: 17.0.0.0 (17.0.1090.0)
Since: 2017

Syntax

C#
public static Plane CreateByNormalAndOrigin(
	XYZ normal,
	XYZ origin
)
Visual Basic
Public Shared Function CreateByNormalAndOrigin ( _
	normal As XYZ, _
	origin As XYZ _
) As Plane
Visual C++
public:
static Plane^ CreateByNormalAndOrigin(
	XYZ^ normal, 
	XYZ^ origin
)

Parameters

normal
Type: Autodesk.Revit.DB XYZ
Plane normal. Expected to be a valid non-zero length vector. Doesn't need to be a unit vector.
origin
Type: Autodesk.Revit.DB XYZ
Plane origin. Expected to lie within the Revit design limits IsWithinLengthLimits(XYZ) .

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.

Exceptions

Exception Condition
Autodesk.Revit.Exceptions ArgumentException The input point lies outside of Revit design limits.
Autodesk.Revit.Exceptions ArgumentNullException A non-optional argument was NULL
Autodesk.Revit.Exceptions ArgumentOutOfRangeException normal has zero length.

See Also

ArchiLabs

Stop fighting Revit automation.

Build repeatable BIM design and documentation workflows with scripts, data, and AI in one place, without wrestling brittle one-off automations.

Try ArchiLabs →