# Plane

> Constructs a Plane from arbitrary coefficients A, B, C, D of the plane equation Ax + By + Cz + Dw = 0.

## Definition

* **Type:** Constructor
* **Namespace:** [Unity.Mathematics.Geometry](/engine/6000.6/script-reference/unity/mathematics/geometry.md)
* **Assembly:** UnityEngine.MathematicsModule

## Plane(float, float, float, float)

Constructs a Plane from arbitrary coefficients A, B, C, D of the plane equation Ax + By + Cz + Dw = 0.

```csharp
public Plane(float coefficientA, float coefficientB, float coefficientC, float coefficientD)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Coefficient A from plane equation.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Coefficient B from plane equation.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Coefficient C from plane equation.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Coefficient D from plane equation.

### Remarks

The constructed plane will be the normalized form of the plane specified by the given coefficients.

## Plane(float3, float)

Constructs a plane with a normal vector and distance from the origin.

```csharp
public Plane(float3 normal, float distance)
```

### Parameters

**** (\[float3]\(/engine/6000.6/script-reference/unity/mathematics/float3)): A non-zero vector that is perpendicular to the plane.  It may be any length.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Distance from the origin along the normal.  A negative value moves the plane in the same direction as the normal while a positive value moves it in the opposite direction.

### Remarks

The constructed plane will be the normalized form of the plane specified by the inputs.

## Plane(float3, float3)

Constructs a plane with a normal vector and a point that lies in the plane.

```csharp
public Plane(float3 normal, float3 pointInPlane)
```

### Parameters

**** (\[float3]\(/engine/6000.6/script-reference/unity/mathematics/float3)): A non-zero vector that is perpendicular to the plane.  It may be any length.**** (\[float3]\(/engine/6000.6/script-reference/unity/mathematics/float3)): A point that lies in the plane.

### Remarks

The constructed plane will be the normalized form of the plane specified by the inputs.

## Plane(float3, float3, float3)

Constructs a plane with two vectors and a point that all lie in the plane.

```csharp
public Plane(float3 vector1InPlane, float3 vector2InPlane, float3 pointInPlane)
```

### Parameters

**** (\[float3]\(/engine/6000.6/script-reference/unity/mathematics/float3)): A non-zero vector that lies in the plane.  It may be any length.**** (\[float3]\(/engine/6000.6/script-reference/unity/mathematics/float3)): A non-zero vector that lies in the plane.  It may be any length and must not be a scalar multiple of `vector1InPlane`.**** (\[float3]\(/engine/6000.6/script-reference/unity/mathematics/float3)): A point that lies in the plane.

### Remarks

The constructed plane will be the normalized form of the plane specified by the inputs.
