Curve
Inherits: Resource < Reference < Object
一条数学曲线。
描述
可以保存并重新用于其他对象的曲线。默认情况下,它在Y轴上的范围在 0
到 1
之间,并且位置点相对于 0.5
Y 位置。
属性
| ||
| ||
|
方法
add_point ( Vector2 position, float left_tangent=0, float right_tangent=0, TangentMode left_mode=0, TangentMode right_mode=0 ) | |
void | bake ( ) |
void | clean_dupes ( ) |
void | clear_points ( ) |
get_point_count ( ) const | |
get_point_left_mode ( int index ) const | |
get_point_left_tangent ( int index ) const | |
get_point_position ( int index ) const | |
get_point_right_mode ( int index ) const | |
get_point_right_tangent ( int index ) const | |
interpolate ( float offset ) const | |
interpolate_baked ( float offset ) | |
void | remove_point ( int index ) |
void | set_point_left_mode ( int index, TangentMode mode ) |
void | set_point_left_tangent ( int index, float tangent ) |
set_point_offset ( int index, float offset ) | |
void | set_point_right_mode ( int index, TangentMode mode ) |
void | set_point_right_tangent ( int index, float tangent ) |
void | set_point_value ( int index, float y ) |
信号
- range_changed ( )
枚举
enum TangentMode:
TANGENT_FREE = 0 —- 点这边的切线是用户自定义的。
TANGENT_LINEAR = 1 —- 曲线计算点的这一侧的切线,作为向相邻点的一半的斜率。
TANGENT_MODE_COUNT = 2 —- 可用切线模式的总数。
属性说明
- int bake_resolution
Default |
|
Setter | set_bake_resolution(value) |
Getter | get_bake_resolution() |
烘焙(即缓存)曲线数据中包含的点的数量。
- float max_value
Default |
|
Setter | set_max_value(value) |
Getter | get_max_value() |
曲线能达到的最大值。
- float min_value
Default |
|
Setter | set_min_value(value) |
Getter | get_min_value() |
曲线能达到的最小值。
方法说明
- int add_point ( Vector2 position, float left_tangent=0, float right_tangent=0, TangentMode left_mode=0, TangentMode right_mode=0 )
在曲线上添加一个点。对于每一侧,如果*_mode
为TANGENT_LINEAR,则*_tangent
角度(以度为单位)将使用曲线到邻近点的一半的斜率。如果*_mode
设置为TANGENT_FREE,则允许自定义分配给*_tangent
角度。
- void bake ( )
重新计算曲线的烘焙点缓存。
- void clean_dupes ( )
删除比曲线上的相邻点近CMP_EPSILON
(0.00001)个单位的点。
- void clear_points ( )
从曲线中删除所有点。
- int get_point_count ( ) const
返回描述曲线的点数。
- TangentMode get_point_left_mode ( int index ) const
返回index
处的点的左侧TangentMode。
返回index
处的点的左切线角(以度为单位)。
返回index
处该点的曲线坐标。
- TangentMode get_point_right_mode ( int index ) const
返回在index
处的点的右TangentMode。
返回index
处的点的左切线角(以度为单位)。
返回沿曲线的X位置offset
处将存在的点的Y值。
使用烘焙的缓存返回沿曲线的X位置offset
处将存在的点的Y值。如果尚未烘焙曲线的点,则将其烘焙。
- void remove_point ( int index )
从曲线中删除index
处的点。
- void set_point_left_mode ( int index, TangentMode mode )
将index
处的点的左侧TangentMode设置为mode
。
将点的左切线角度设置为 index
至 tangent
。
设置相对于0.5
的偏移量。
- void set_point_right_mode ( int index, TangentMode mode )
将index
上的点的右侧TangentMode设置为mode
。
设置index
至tangent
处的点的右切线角。
将垂直位置y
分配给index
处的点。