clippingnode繼承自node,主要做了兩件事堂湖,第一是設(shè)置模板的緩沖值(以stencil為參考),這些過程都在visit中完成。
通過onBeforeVisit函數(shù):
通過繪制一個全屏的矩形樟结,將模板緩沖置為0,有一個問題是:不繪制具體的圖形不能把模板緩沖置為0嗎精算?
然后設(shè)置模板的繪制
然后進行具體的模板繪制瓢宦,根據(jù)上面設(shè)置的條件,模板所有值都不會通過測試灰羽,然后模板緩沖會被置為模板的mask值
最后通過onAfterDrawStencil繪制clippingnode
這里有個迷惑的地方驮履,為什么參考值不是mask_layer鱼辙,而是_mask_layer_le,主要是clippingnode的孩子可能也是一個clippingnode
總結(jié)一下:
clippingnode的visit函數(shù)玫镐,先以模板為參考設(shè)置模板緩沖值座每,然后再根據(jù)設(shè)置繪制clippingnode