Line2D
继承
简要描述
2D线。
描述
一条穿过2D空间中多个点的线。
注意:默认情况下,IdeaXR一次最多只能绘制4,096个多边形点。想要增加这个限制,需要打开项目设置增加ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb 和 ProjectSettings.rendering/limits/buffers/canvas_polygon_index_buffer_size_kb.
成员
类型 | 属性名 | 默认值 |
---|---|---|
bool | antialiased | false |
int | begin_cap_mode | 0 |
Color | default_color | Color( 0.4, 0.5, 1, 1 ) |
int | end_cap_mode | 0 |
Gradient | gradient | |
int | joint_mode | 0 |
PoolVector2Array | points | PoolVector2Array( ) |
int | round_precision | 8 |
float | sharp_limit | 2.0 |
Texture | texture | |
int | texture_mode | 0 |
float | width | 10.0 |
Curve | width_curve |
方法
返回值类型 | 方法名称 |
---|---|
void | add_point(position: Vector2, at_position: int = -1) |
void | clear_points() |
int | get_point_count() const |
Vector2 | get_point_position(i: int) const |
void | remove_point(i: int) |
void | set_point_position(i: int, position: Vector2) |
枚举
enum LineJointMode:
- **LINE_JOINT_SHARP = 0**
该线的接缝将很尖。
- **LINE_JOINT_BEVEL = 1**
线的接缝将被倒角/倒角。
- **LINE_JOINT_ROUND = 2**
线的接缝将变圆。
enum LineCapMode:
- **LINE_CAP_NONE = 0**
不要画线帽。
- **LINE_CAP_BOX = 1**
将线帽绘制为一个框。
- **LINE_CAP_ROUND = 2**
将线帽绘制为圆形。
enum LineTextureMode:
- **LINE_TEXTURE_NONE = 0**
取得纹理的左像素,并将其渲染到整条线上。
- **LINE_TEXTURE_TILE = 1**
在直线上平铺纹理。贴图不需被使用Repeat导入才能正常工作。
- **LINE_TEXTURE_STRETCH = 2**
沿线拉伸纹理。导入贴图使用Repeat禁用最好的结果。
常量
成员说明
- bool antialiased
Default | false |
---|---|
setter | set_antialiased(value) |
getter | get_antialiased |
- int begin_cap_mode
Default | 0 |
---|---|
setter | set_begin_cap_mode(value) |
getter | get_begin_cap_mode |
- Color default_color
Default | Color( 0.4, 0.5, 1, 1 ) |
---|---|
setter | set_default_color(value) |
getter | get_default_color |
- int end_cap_mode
Default | 0 |
---|---|
setter | set_end_cap_mode(value) |
getter | get_end_cap_mode |
- Gradient gradient
setter | set_gradient(value) |
---|---|
getter | get_gradient |
- int joint_mode
Default | 0 |
---|---|
setter | set_joint_mode(value) |
getter | get_joint_mode |
- PoolVector2Array points
Default | PoolVector2Array( ) |
---|---|
setter | set_points(value) |
getter | get_points |
- int round_precision
Default | 8 |
---|---|
setter | set_round_precision(value) |
getter | get_round_precision |
- float sharp_limit
Default | 2.0 |
---|---|
setter | set_sharp_limit(value) |
getter | get_sharp_limit |
- Texture texture
setter | set_texture(value) |
---|---|
getter | get_texture |
- int texture_mode
Default | 0 |
---|---|
setter | set_texture_mode(value) |
getter | get_texture_mode |
- float width
Default | 10.0 |
---|---|
setter | set_width(value) |
getter | get_width |
- Curve width_curve
setter | set_curve(value) |
---|---|
getter | get_curve |
方法说明
- add_point add_point(position: Vector2, at_position: int = -1)
在position
处添加一个点。在行的末尾添加。
如果给出了at_position
,则将该点插入到点编号at_position
之前,然后将该点(及其后的每个点)移动到插入点之后。
- clear_points clear_points()
从线上删除所有点。
- get_point_count get_point_count() const
返回Line2D的点数。
- get_point_position get_point_position(i: int) const
返回点i
的位置。
- remove_point remove_point(i: int)
从行中删除索引i
上的点。
- set_point_position set_point_position(i: int, position: Vector2)
用提供的position
覆盖点i
中的位置。