Bone2D
继承: Node2D < CanvasItem < Node < Object
与 Skeleton2D 一起使用的关节,能够控制并动画其他节点。
描述
Bone2D 层级结构可以绑定到 Skeleton2D 上,控制并动画其他 Node2D 节点。
你可以使用 Bone2D 和 Skeleton2D 节点对使用 Polygon2D UV 编辑器创建的 2D 网格进行动画。
每个骨骼都有一个 rest 变换,你可以用 apply_rest 来重置到这个变换。这些放松姿势是相对于骨骼的父节点而言的。
如果在编辑器中,你可以使用菜单选项设置整个骨架的放松姿势,从代码中,你需要遍历骨骼来设置它们各自的放松姿势。
属性
|
方法
void | apply_rest ( ) |
get_autocalculate_length_and_angle ( ) const | |
get_bone_angle ( ) const | |
get_index_in_skeleton ( ) const | |
get_length ( ) const | |
get_skeleton_rest ( ) const | |
void | set_autocalculate_length_and_angle ( bool auto_calculate ) |
void | set_bone_angle ( float angle ) |
void | set_length ( float length ) |
属性说明
Transform2D rest = Transform2D(0, 0, 0, 0, 0, 0)
void set_rest ( Transform2D value )
Transform2D get_rest ( )
骨骼的放松变换。你可以使用 apply_rest 将节点的变换重置为这个值。
方法说明
void apply_rest ( )
将节点当前的变换存储在 rest 中。
bool get_autocalculate_length_and_angle ( ) const
如果该 Bone2D 存在骨骼子节点,则返回是否要使用第一个 Bone2D 子节点自动计算其长度和骨骼角度。如果没有 Bone2D 子节点,则无法自动计算这些值,会打印一条警告。
float get_bone_angle ( ) const
返回 Bone2D 中骨骼的角度。
注意:这与 Bone2D 的旋转不同。骨骼角度是小工具显示的骨骼旋转,不受 Bone2D 的 Node2D.transform 的影响。
int get_index_in_skeleton ( ) const
返回节点在整个骨架中的索引号。见 Skeleton2D。
float get_length ( ) const
返回 Bone2D 节点中骨骼的长度。
Transform2D get_skeleton_rest ( ) const
如果节点没有父节点,返回节点的 rest Transform2D,或者返回它相对于父节点的放松姿势。
void set_autocalculate_length_and_angle ( bool auto_calculate )
当设置为 true
时,该 Bone2D 节点将尝试使用第一个子 Bone2D 节点(如果存在)自动计算骨骼角度和长度。如果不存在子节点,Bone2D 将无法自动计算这些值,并将输出一条警告。
void set_bone_angle ( float angle )
设置 Bone2D 节点的骨骼角度。这通常设置为从 Bone2D 节点到子 Bone2D 节点的旋转。
注意:这与 Bone2D 的旋转不同。骨骼角度是 Bone2D 小工具显示的骨骼旋转,不受 Bone2D 的 Node2D.transform 的影响。
void set_length ( float length )
设置该 Bone2D 中骨骼的长度。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.