Commit 0da8bf37 authored by wjf's avatar wjf

l

parent bde6bc89
......@@ -1112,6 +1112,8 @@ export default class Graphics extends Container {
* @param {CanvasRenderer} renderer - The renderer
*/
_renderCanvas(renderer/*: CanvasRenderer*/) {
//以防没有end,
this.finishPoly();
if (this.cacheAsBitmap) {
if (this.cacheDirty != this.dirty) {
this.cacheDirty = this.dirty;
......@@ -1121,11 +1123,14 @@ export default class Graphics extends Container {
this.cacheAsBitmap = false;
var tempAlpha = this.alpha;
this.alpha = 1;
var tempChildren = this.children //待测试,预存子级
this.children = [];//置空子级,防止离屏canvas绘制
this.generateCanvasTexture();
//恢复
this.mask = tempMask;
this.alpha = tempAlpha;
this.cacheAsBitmap = true;
this.children = tempChildren;//待测试,还原原先子级
this.updateTransform()
}
//普通画图的渲染,提供图片和图形的插件,先判断_anchorTexture,offsetX,0
......
......@@ -41,6 +41,8 @@ export default class CanvasMaskManager extends HashObject {
if (maskData.instanceType == "Shape") {
maskData["_drawShape"](renderer.context)
} else {
//以防万一,没有end,加一段,不考虑闭合情况
maskData["finishPoly"]()
this.renderGraphicsShape(maskData);
}
renderer.context.clip();
......
......@@ -109,6 +109,10 @@ export default class MaskManager {
//存下之前的滤镜区域
const cacheFilterArea = target.filterArea;
//待测试 先计算如果maskData是shape要先执行updateShape
if (maskData.instanceType == "Shape") maskData.updateShape();
//取遮罩的范围
target.filterArea = maskData.getBounds(true);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment