Revit 2025 API
PlaneCreate |
Creates a Plane object passing through three points supplied as arguments.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public static Plane CreateByThreePoints( XYZ point1, XYZ point2, XYZ point3 )
Public Shared Function CreateByThreePoints ( point1 As XYZ, point2 As XYZ, point3 As XYZ ) As Plane
public: static Plane^ CreateByThreePoints( XYZ^ point1, XYZ^ point2, XYZ^ point3 )
static member CreateByThreePoints : point1 : XYZ * point2 : XYZ * point3 : XYZ -> Plane
Parameters
- point1 XYZ
- First of the three points that define a unique plane. The created Plane object will pass through these points.
- point2 XYZ
- Second of the three points that define a unique plane.
- point3 XYZ
- Third of the three points that define a unique plane.
Return Value
Plane
Exception | Condition |
---|---|
ArgumentException | The input point lies outside of Revit design limits. |
ArgumentNullException | A non-optional argument was null |
ArgumentsInconsistentException | Throws if the input points do not define a unique plane. This is typically caused by points being too close to each other, or all three points being on or close to a straight line. |

The points supplied as arguments must fully define a plane: they may not lie on a straight line or be too close to each other. The points must lie within the Revit design limits.
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.
All three points are expected to lie within the Revit design limits IsWithinLengthLimits(XYZ).
See Also