Animation 如何设置EaselJS图形和形状的z索引

Animation 如何设置EaselJS图形和形状的z索引,animation,canvas,vector-graphics,easeljs,createjs,Animation,Canvas,Vector Graphics,Easeljs,Createjs,我在画布上画了画架的形状,然后我开始画每一个记号的图形。此时图形正在图形上绘制。有没有办法定义z索引,以便在每个帧的图形上绘制形状 任何帮助都将不胜感激。画布API。一旦画出某样东西,它被画出来的事实就会被忘记,而且画布上也没有对象的引用。这意味着,如果对象发生更改,可能需要重新绘制整个画布 因此,如果需要在图形对象的顶部绘制图形对象,只需在绘制图形之前绘制图形即可。每次重新绘制图形时,都需要重新绘制形状 您还可以将形状和图形放入容器中,并使用容器的属性来控制对象的渲染顺序 编辑:如所述,阶段

我在画布上画了画架的形状,然后我开始画每一个记号的图形。此时图形正在图形上绘制。有没有办法定义z索引,以便在每个帧的图形上绘制形状

任何帮助都将不胜感激。

画布API。一旦画出某样东西,它被画出来的事实就会被忘记,而且画布上也没有对象的引用。这意味着,如果对象发生更改,可能需要重新绘制整个画布

因此,如果需要在图形对象的顶部绘制图形对象,只需在绘制图形之前绘制图形即可。每次重新绘制图形时,都需要重新绘制形状

您还可以将形状和图形放入容器中,并使用容器的属性来控制对象的渲染顺序



编辑:如所述,阶段本身可用于管理子索引。这是因为Stage扩展了Container类,从而继承了该类的方法。

要在插入后将
DisplayObject
放在前面,只需使用以下命令:

stage.setChildIndex( displayObject, stage.getNumChildren()-1);

实际上,setChildIndex、addChild和addChildAt API将帮助您实现这一点。可以使用stage.setChildIndex(..)设置其索引。请参阅@stot answerThank you@stot。这些createjs stage方法与旧的Flash方法相同。顺便说一句,对于那些使用Adobe Animate的人来说,这里是语法,因为stage指的是:
this.setChildIndex(my_movieclip,this.getNumChildren()-1)getNumChildren。现在可以直接调用属性numChildren。资料来源: