我在畫布上有EaselJS形狀,然後我開始繪製圖形每個勾號。此刻圖形正在繪製在形狀上。有沒有辦法定義z-index,以便在每個圖形上繪製圖形?我如何設置EaselJS圖形和形狀的z-index
任何幫助將不勝感激。
我在畫布上有EaselJS形狀,然後我開始繪製圖形每個勾號。此刻圖形正在繪製在形狀上。有沒有辦法定義z-index,以便在每個圖形上繪製圖形?我如何設置EaselJS圖形和形狀的z-index
任何幫助將不勝感激。
提起DisplayObject
向前插入後只是用這樣的:
stage.setChildIndex(displayObject, stage.getNumChildren()-1);
The Canvas API has no built-in scene graph。一旦被繪製出來,它被繪製的事實就被遺忘了,並且沒有任何與畫布相關的對象的引用。這意味着,如果對象發生變化,整個畫布可能需要重新繪製。因此,如果您需要在Graphics對象頂部繪製Shape對象,則只需在繪製Shapes之前繪製圖形即可。每次重繪圖形時都需要重繪形狀。
您也可以將圖形和圖形放入Container,並使用容器的indices來控制對象的渲染順序。
編輯:由於@stot's answer指出,事實證明,舞臺本身可以用來管理子指數。這是因爲Stage擴展了Container類,因此繼承了該類的方法。
謝謝@stot。這些createjs階段方法與舊版Flash相同。對於那些使用Adobe Animate的人來說,這裏的語法就像這個stage所指的那樣:'this.setChildIndex(my_movieclip,this.getNumChildren() - 1);' – jck 2016-06-06 13:34:37
在新版本中,getNumChildren已被棄用。你現在可以直接調用屬性numChildren。資料來源:http://createjs.com/docs/easeljs/classes/Container.html#method_getNumChildren – zozo 2016-10-14 09:33:39