# GetPath

> Gets a path from the Collider by its index.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.Physics2DModule

## GetPath(int, Vector2\[])

Gets a path from the Collider by its index.

```csharp
public int GetPath(int index, Vector2[] points)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the path from 0 to [CompositeCollider2D.pathCount](/engine/6000.0/script-reference/unityengine/compositecollider2d/pathcount.md) minus 1.**** (\[Vector2\[]]\(/engine/6000.0/script-reference/unityengine/vector2)): An ordered array of the vertices (points) in the selected path.

### Returns

| Type                                                       | Description                                              |
| ---------------------------------------------------------- | -------------------------------------------------------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | Returns the number of points placed in the points array. |

### Remarks

A *path* is a cyclic sequence of line segments between points that define the outline of the Collider. Since the Collider can have holes and discontinuous parts, its shape is not necessarily defined by a single path.

Returns the number of points placed in the points array.

Additional Resources: [CompositeCollider2D.GetPathPointCount](/engine/6000.0/script-reference/unityengine/compositecollider2d/getpathpointcount.md) & [CompositeCollider2D.pathCount](/engine/6000.0/script-reference/unityengine/compositecollider2d/pathcount.md).

## GetPath(int, List\<Vector2>)

Gets a path from the Collider by its index.

```csharp
public int GetPath(int index, List<Vector2> points)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the path from 0 to [CompositeCollider2D.pathCount](/engine/6000.0/script-reference/unityengine/compositecollider2d/pathcount.md) minus 1.**** (\[List\<Vector2>]\(https\://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)): An ordered list of the vertices (points) in the selected path.

### Returns

| Type                                                       | Description                                             |
| ---------------------------------------------------------- | ------------------------------------------------------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | Returns the number of points placed in the points list. |

### Remarks

A *path* is a cyclic sequence of line segments between points that define the outline of the Collider. Since the Collider can have holes and discontinuous parts, its shape is not necessarily defined by a single path.

The integer return value is the number of results written into the results list. The results list will be resized if it doesn't contain enough elements to report all the results. This prevents memory from being allocated for results when the results list does not need to be resized, and improves garbage collection performance when the query is performed frequently.

Additional Resources: [CompositeCollider2D.GetPathPointCount](/engine/6000.0/script-reference/unityengine/compositecollider2d/getpathpointcount.md) & [CompositeCollider2D.pathCount](/engine/6000.0/script-reference/unityengine/compositecollider2d/pathcount.md).
