Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Curve2D

Inherits: Resource < RefCounted < Object

Describes a Bézier curve in 2D space.

Description

This class describes a Bézier curve in 2D space. It is mainly used to give a shape to a Path2D, but can be manually sampled for other purposes.

It keeps a cache of precalculated points along the curve, to speed up further calculations.

Properties

float

bake_interval

5.0

int

point_count

0

Methods

void

add_point ( Vector2 position, Vector2 in=Vector2(0, 0), Vector2 out=Vector2(0, 0), int index=-1 )

void

clear_points ( )

float

get_baked_length ( ) const

PackedVector2Array

get_baked_points ( ) const

float

get_closest_offset ( Vector2 to_point ) const

Vector2

get_closest_point ( Vector2 to_point ) const

Vector2

get_point_in ( int idx ) const

Vector2

get_point_out ( int idx ) const

Vector2

get_point_position ( int idx ) const

void

remove_point ( int idx )

Vector2

sample ( int idx, float t ) const

Vector2

sample_baked ( float offset=0.0, bool cubic=false ) const

Transform2D

sample_baked_with_rotation ( float offset=0.0, bool cubic=false ) const

Vector2

samplef ( float fofs ) const

void

set_point_in ( int idx, Vector2 position )

void

set_point_out ( int idx, Vector2 position )

void

set_point_position ( int idx, Vector2 position )

PackedVector2Array

tessellate ( int max_stages=5, float tolerance_degrees=4 )