# PhysicsPlane

> Represents a 2D plane.

## Definition

* **Type:** Struct
* **Namespace:** [Unity.U2D.Physics](/engine/6000.7/script-reference/unity/u2d/physics.md)
* **Assembly:** UnityEngine.PhysicsCore2DModule
* **Implements:** [IEquatable\<PhysicsPlane>](https://learn.microsoft.com/dotnet/api/system.iequatable-1)

```csharp
public struct PhysicsPlane : IEquatable<PhysicsPlane>
```

## Fields

| Value                                                                              | Description                                                       |
| ---------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| [normal](/engine/6000.7/script-reference/unity/u2d/physics/physicsplane/normal.md) | The plane normal. This must be normalized for the plane be valid. |
| [offset](/engine/6000.7/script-reference/unity/u2d/physics/physicsplane/offset.md) | The plane offset.                                                 |

## Properties

| Property                                                                             | Description                                                                                                                                            |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [isValid](/engine/6000.7/script-reference/unity/u2d/physics/physicsplane/isvalid.md) | Check if the plane is valid. To be valid, the [\_normal](/engine/6000.7/script-reference/unity/u2d/physics/physicsplane/normal.md) must be normalized. |

## Methods

| Method                                                                                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [GetSeparation](/engine/6000.7/script-reference/unity/u2d/physics/physicsplane/getseparation.md)             | Get the signed separation of a point from a plane.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [ToPositionAndNormal](/engine/6000.7/script-reference/unity/u2d/physics/physicsplane/topositionandnormal.md) | Decompose the plane into a point lying on the plane and the plane's normal direction. The returned position is the foot of the perpendicular from the world origin to the plane, computed as normal \* offset. This is the unique closest-to-origin point on the plane; any other point on the plane would describe the same plane equation but be non-deterministic. Useful for feeding a plane into APIs that take a (position, normal) pair such as [\_surfacePosition](/engine/6000.7/script-reference/unity/u2d/physics/physicsbody/buoyancyinput/surfaceposition.md) and [\_surfaceNormal](/engine/6000.7/script-reference/unity/u2d/physics/physicsbody/buoyancyinput/surfacenormal.md). |
