# ChainGeometry

> The geometry of a chain of ChainSegment.

## Definition

* **Type:** Struct
* **Namespace:** [UnityEngine.LowLevelPhysics2D](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d.md)
* **Assembly:** UnityEngine.Physics2DModule

```csharp
public struct ChainGeometry
```

## Constructors

| Constructor                                                                                                                                                                                   | Description                                                  |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| [ChainGeometry(System.ReadOnlySpan\{UnityEngine.Vector2})](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/ctor.md#chaingeometry\(readonlyspanvector2\))          | Create the geometry of a chain using the specified vertices. |
| [ChainGeometry(Unity.Collections.NativeArray\{UnityEngine.Vector2})](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/ctor.md#chaingeometry\(nativearrayvector2\)) | Create the geometry of a Chain using the specified vertices. |

## Properties

| Property                                                                                            | Description                            |
| --------------------------------------------------------------------------------------------------- | -------------------------------------- |
| [isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/isvalid.md)   | Check if the geometry is valid or not. |
| [vertices](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/vertices.md) | Get the geometry vertices.             |

## Methods

| Method                                                                                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [CalculateAABB](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/calculateaabb.md) | Calculate the AABB of the geometry.                                                                                                                                                                                                                                                                                                                                                                                             |
| [CastRay](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/castray.md)             | Calculate if a world ray intersects the geometry. See [PhysicsQuery.CastResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/castresult.md).                                                                                                                                                                                                                                                      |
| [CastShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/castshape.md)         | Calculate if a cast shape intersects the geometry. Initially touching shapes are treated as a miss. You should check for overlap first if initial overlap is required. See [PhysicsQuery.CastShapeInput](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/castshapeinput.md) and [PhysicsQuery.CastResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/castresult.md). |
| [ClosestPoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/chaingeometry/closestpoint.md)   | Calculate the closest point on this geometry to the specified point.                                                                                                                                                                                                                                                                                                                                                            |
