# DrawBezier(Vector3, Vector3, Vector3, Vector3, Color, Texture2D, float)

> Draw textured bezier line through start and end points with the given tangents.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/6000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor

```csharp
public static void DrawBezier(Vector3 startPosition, Vector3 endPosition, Vector3 startTangent, Vector3 endTangent, Color color, Texture2D texture, float width)
```

### Parameters

**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): The start point of the bezier line.**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): The end point of the bezier line.**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): The start tangent of the bezier line.**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): The end tangent of the bezier line.**** (\[Color]\(/engine/6000.0/script-reference/unityengine/color)): The color to use for the bezier line.**** (\[Texture2D]\(/engine/6000.0/script-reference/unityengine/texture2d)): The texture to use for drawing the bezier line.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): The width of the bezier line.

### Remarks

To get an anti-aliased effect use a texture that is 1x2 pixels with one transparent white pixel and one opaque white pixel.  The bezier curve will be swept using this texture.

**Note:** Use [HandleUtility.GetHandleSize](/engine/6000.0/script-reference/unityeditor/handleutility/gethandlesize.md) where you might want to have constant screen-sized handles.

![DrawBezier (DrawBezier(Vector3, Vector3, Vector3, Vector3, Color, Texture2D, float))](/api/media?file=/engine/6000.0/media/images/DrawBezier.png)

*Bezier Line in the Scene View.*

```csharp
using UnityEditor;
using UnityEngine;

[CustomEditor(typeof(BezierExample))]
public class DrawBezierExample : Editor
{
    void OnSceneGUI()
    {
        BezierExample be = target as BezierExample;

        be.startPoint = Handles.PositionHandle(be.startPoint, Quaternion.identity);
        be.endPoint = Handles.PositionHandle(be.endPoint, Quaternion.identity);
        be.startTangent = Handles.PositionHandle(be.startTangent, Quaternion.identity);
        be.endTangent = Handles.PositionHandle(be.endTangent, Quaternion.identity);

        // Visualize the tangent lines
        Handles.DrawDottedLine(be.startPoint, be.startTangent, 5);
        Handles.DrawDottedLine(be.endPoint, be.endTangent, 5);

        Handles.DrawBezier(be.startPoint, be.endPoint, be.startTangent, be.endTangent, Color.red, null, 5f);
    }
}
```

And the script attached to this Handle:

```csharp
using UnityEngine;

public class BezierExample : MonoBehaviour
{
    public Vector3 startPoint = new Vector3(-5f, 2f, 0f);
    public Vector3 endPoint = new Vector3(5f, -2f, 0f);
    public Vector3 startTangent = new Vector3(0f, 2f, 0f);
    public Vector3 endTangent = new Vector3(0f, -2f, 0f);
}
```
