Optional
options: INodeOptions是否缓存为静态渲染,对有大量不变子节点的容器可提升渲染效率
是否启用节点,设为 false 时节点不可用且脚本不执行,而 visible 只影响显示
节点标签名称,用于快速查找和识别节点
是否支持鼠标事件,默认不支持,添加鼠标事件监听后会自动启用 当父节点 pointerEnabled=true 时,会优先判断父节点命中后再判定子节点,以提高性能
是否支持子节点鼠标事件判定,添加鼠标事件监听后会自动启用 当节点 pointerEnabled=false 但 pointerEnabledForChildren=true 时,仍会尝试命中子节点并冒泡
节点透明度,范围 0-1,0 表示完全透明
节点锚点,以宽高的百分比表示,如 0.5 表示中心点
节点旋转角度,底层仍使用 rotation(弧度)存储
子节点列表,可直接读取但不应直接修改此数组
是否已被销毁,销毁后不可再用
滤镜列表,可直接读取但不应直接修改此数组
节点高度,单位为像素
节点 id,作为节点的唯一标识符
节点轴心点,影响节点旋转和缩放的中心点(只读)
节点位置坐标,相对于父节点的坐标系
节点旋转弧度,以弧度为单位
节点缩放比率,1.0 表示原始大小
场景节点引用,只有被添加到场景后此属性才有值(建议缓存为局部变量以减少遍历开销)
脚本列表,可直接读取但不应直接修改此数组
舞台节点引用,只有被添加到舞台后此属性才有值
获取渲染纹理对象,在需要时自动更新画布内容
节点叠加颜色,用于调整节点的颜色
节点变换对象,管理位置、旋转、缩放等变换属性
自定义数据,用于存储额外信息,如 node.userData.speed = 1
是否可见,不可见时不会被渲染
节点宽度,单位为像素
节点世界透明度,考虑了父节点透明度的最终透明度
世界矩阵,相对于舞台的变换矩阵
Protected
_custom添加滤镜到当前节点
将指定的滤镜实例添加到当前节点,使节点在渲染时应用该滤镜效果。
要添加的滤镜实例
当前节点实例,支持链式调用
添加脚本到当前节点
将指定的脚本实例添加到当前节点,并设置脚本的目标节点为当前节点。 添加后脚本会自动执行其生命周期方法(onCreate 等)。
要添加的脚本实例
当前节点实例,支持链式调用
绘制圆弧路径
圆弧圆心的 x 坐标
圆弧圆心的 y 坐标
圆弧半径
开始角度(弧度)
结束角度(弧度)
当前实例,支持链式调用
根据两个控制点绘制圆弧路径
控制点 1 的 x 坐标
控制点 1 的 y 坐标
控制点 2 的 x 坐标
控制点 2 的 y 坐标
圆弧半径
当前实例,支持链式调用
开始一个新的路径
绘制闭环路径时,需要调用 beginPath 和 closePath
当前实例,支持链式调用
绘制三次贝塞尔曲线路径
起点是当前路径最后落点,有两个控制点,x 和 y 是终点
控制点 1 的 x 坐标
控制点 1 的 y 坐标
控制点 2 的 x 坐标
控制点 2 的 y 坐标
终点的 x 坐标
终点的 y 坐标
当前实例,支持链式调用
绘制圆形路径
圆心的 x 坐标
圆心的 y 坐标
圆的半径
当前实例,支持链式调用
清理所有绘制命令和画布内容
当前实例,支持链式调用
创建裁剪区域
Optional
path: Path2D可选的 Path2D 对象
当前实例,支持链式调用
闭合当前路径
当前实例,支持链式调用
销毁 Canvas 实例及其资源
销毁当前节点的所有子节点
与 removeChildren 不同,此方法会彻底销毁子节点,销毁后子节点不可再用。 销毁过程会递归处理所有子节点,清理所有资源和事件监听。
当前节点实例,支持链式调用
销毁当前节点的所有滤镜
彻底销毁当前节点的所有滤镜实例,销毁后滤镜不可再用。
当前节点实例,支持链式调用
销毁当前节点的所有脚本 销毁后脚本不可再用
当前节点实例,支持链式调用
绘制完整图像
图片、canvas 或 Texture 对象
目标 x 坐标
目标 y 坐标
当前实例,支持链式调用
绘制缩放后的图像
图片、canvas 或 Texture 对象
目标 x 坐标
目标 y 坐标
目标宽度
目标高度
当前实例,支持链式调用
绘制 SVG 图像
SVG 字符串
目标 x 坐标
目标 y 坐标
缩放比例
当前实例,支持链式调用
绘制椭圆路径或圆弧
通过设置 startAngle 和 endAngle,还可以绘制圆弧
椭圆圆心的 x 坐标
椭圆圆心的 y 坐标
椭圆水平半径
椭圆垂直半径
开始角度(弧度)
结束角度(弧度)
当前实例,支持链式调用
派发事件
触发指定类型的事件,并将参数传递给所有注册的监听器。 事件会按照注册顺序依次调用监听器,并支持传递任意数量的参数。 事件会在当前节点触发,并根据事件类型可能会向上冒泡到父节点。
事件类型,不区分大小写
传递给监听器的参数,支持多个参数
当前节点实例,支持链式调用
填充当前路径
Optional
options: { color: ColorData }填充选项
当前实例,支持链式调用
根据筛选条件查找滤镜实例
在当前节点的滤镜列表中查找符合指定条件的滤镜实例。 支持按 ID、标签或类型查找。
筛选条件,可包含 id、label 和 Class 选项
返回匹配的滤镜实例,如果未找到则返回 undefined
根据筛选条件查找脚本实例
在当前节点的脚本列表中查找符合指定条件的脚本实例。 支持按 ID、标签或类型查找。
筛选条件,可包含 id、label 和 Class 选项
返回匹配的脚本实例,如果未找到则返回 undefined
获取当前节点在父节点中的索引位置
返回在父节点中的索引,如果没有父节点则返回 -1
获取本地边界(相对于父节点)
计算节点在本地坐标系中的边界矩形,用于碰撞检测、点击测试和布局计算等。 如果节点设置了明确的宽高,则直接使用这些值;否则会根据节点内容计算边界。
返回本地边界对象
获取世界旋转边界,考虑了旋转角度的精确边界
与 getWorldBounds 不同,此方法返回的是考虑了旋转角度的精确边界矩形, 适用于需要精确碰撞检测或旋转对象交互的场景。
Optional
root: LikoNode相对参考节点,为空则默认相对于舞台
返回考虑旋转的边界对象
检查是否存在指定类型的事件监听器
判断当前节点是否注册了指定类型的事件监听器,用于条件判断和性能优化。
事件类型,不区分大小写
如果存在监听器则返回 true,否则返回 false
检测指定点是否在节点内部
判断世界坐标系中的点是否位于节点的可见区域内,用于鼠标交互和碰撞检测。 首先将世界坐标转换为节点的本地坐标,然后检查是否在节点的边界内。
要检测的点(世界坐标)
如果点在节点内部则返回 true,否则返回 false
判断某点是否在矢量图形内部
世界坐标点
点是否在路径内
从当前位置绘制线段到指定位置
目标点的 x 坐标
目标点的 y 坐标
当前实例,支持链式调用
移动绘制起点到指定位置
目标点的 x 坐标
目标点的 y 坐标
当前实例,支持链式调用
移除事件监听器
移除之前通过 on 或 once 方法注册的事件监听器。需要提供完全相同的参数才能成功移除。
事件类型,不区分大小写
要移除的回调函数
Optional
caller: any回调函数的调用者
当前节点实例,支持链式调用
移除特定调用者的所有事件监听器
一次性移除特定调用者注册的所有事件监听器,或在不指定调用者时移除所有监听器。 这在组件销毁或重置时特别有用。
Optional
caller: unknown调用者对象,如果为空则移除所有事件监听器
当前节点实例,支持链式调用
注册事件监听器
为节点添加事件监听器,当指定类型的事件触发时,会调用提供的回调函数。 如果注册的是指针事件(如 click、pointerdown 等),会自动启用节点的指针交互功能。
事件类型,不区分大小写
事件触发时的回调函数
Optional
caller: any回调函数的调用者,通常为 this
当前节点实例,支持链式调用
绘制二次贝塞尔曲线路径
起点是当前路径最后落点,cpx 和 cpy 是控制点,x 和 y 是终点
控制点的 x 坐标
控制点的 y 坐标
终点的 x 坐标
终点的 y 坐标
当前实例,支持链式调用
绘制矩形路径
左上角的 x 坐标
左上角的 y 坐标
矩形宽度
矩形高度
当前实例,支持链式调用
删除当前节点的所有子节点
将所有子节点从当前节点的子节点列表中移除,但不会销毁这些子节点。 子节点会被从节点树中移除,可以被重新添加到其他节点中。 所有被移除的子节点会触发 removed 事件。
当前节点实例,支持链式调用
从当前节点移除指定的滤镜
将指定的滤镜实例从当前节点的滤镜列表中移除,但不会销毁该滤镜。
Optional
filter: T要移除的滤镜实例
当前节点实例,支持链式调用
将当前节点从其父节点中移除
从父节点的子节点列表中移除当前节点,但不会销毁当前节点。 即使没有被添加到父节点,调用此方法也不会报错。
当前节点实例,支持链式调用
绘制圆角矩形路径
左上角的 x 坐标
左上角的 y 坐标
矩形宽度
矩形高度
Optional
radii: number | DOMPointInit | (number | DOMPointInit)[]圆角半径,可以是单个数值或多个值
当前实例,支持链式调用
通过滤镜数据列表重置节点的滤镜
会先清除现有滤镜,然后根据数据创建新滤镜。 此方法通常用于从序列化数据恢复节点的滤镜效果。
Optional
filters: IFilterData[]滤镜数据列表
当前节点实例,支持链式调用
通过脚本数据列表重置节点的脚本
会先清除现有脚本,然后根据数据创建新脚本。 此方法通常用于从序列化数据恢复节点的脚本状态。
Optional
scripts: IScriptData[]脚本数据列表
当前节点实例,支持链式调用
绘制当前路径的描边
Optional
options: {描边选项
当前实例,支持链式调用
更新滤镜状态,当滤镜参数变化时调用
当滤镜的参数发生变化时,应调用此方法以确保变化生效。
要更新的滤镜实例
当前节点实例,支持链式调用
Canvas 矢量图形绘制类