# SetRotation

> Sets the rotation of the Rigidbody2D to angle (given in degrees).

## Definition

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

## SetRotation(float)

Sets the rotation of the [Rigidbody2D](/engine/6000.5/script-reference/unityengine/rigidbody2d.md) to `angle` (given in degrees).

```csharp
public void SetRotation(float angle)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): The rotation of the Rigidbody (in degrees).

### Remarks

Additional Resources: [Rigidbody2D.rotation](/engine/6000.5/script-reference/unityengine/rigidbody2d/rotation.md) and [Rigidbody2D.MoveRotation](/engine/6000.5/script-reference/unityengine/rigidbody2d/moverotation.md).

### Examples

```csharp
using UnityEngine;

// Rotate rigidBody2D every frame.
public class ExampleScript : MonoBehaviour
{
    public Rigidbody2D rigidBody2D;
    public float rotation = 0.0f;

    void Start()
    {
        rigidBody2D = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        rigidBody2D.SetRotation(rotation);

        rotation += 1.0f;
    }
}
```

## SetRotation(Quaternion)

Sets the rotation of the [Rigidbody2D](/engine/6000.5/script-reference/unityengine/rigidbody2d.md) to the z-axis rotation extracted from the full 3D `rotation`.

```csharp
public void SetRotation(Quaternion rotation)
```

### Parameters

**** (\[Quaternion]\(/engine/6000.5/script-reference/unityengine/quaternion)): Full 3D rotation used to extract only the z-axis rotation.

### Remarks

The z-axis rotation is extracted from the given [Quaternion](/engine/6000.5/script-reference/unityengine/quaternion.md) `rotation` and used as the rotation for [Rigidbody2D](/engine/6000.5/script-reference/unityengine/rigidbody2d.md). It is important to understand that the full 3D rotation isn't used because the [Rigidbody2D](/engine/6000.5/script-reference/unityengine/rigidbody2d.md) only has a single degree of rotational freedom around the z-axis.

### Examples

```csharp
using UnityEngine;

// Rotate rigidBody2D every frame.
public class ExampleScript : MonoBehaviour
{
    public Rigidbody2D rigidBody2D;
    public float rotation = 0.0f;

    void Start()
    {
        rigidBody2D = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        var quaternionRotation = Quaternion.Euler(0f, 0f, rotation);
        rigidBody2D.SetRotation(rotation);

        rotation += 1.0f;
    }
}
```
