[已解决]我用cc.DrawNode画图后,怎么获取某个坐标点的颜色值

因为我要做油漆桶,直接浇灌空白区域颜色,必须根据坐标所在点的颜色值来判断是否需要浇灌。百度了很久,没有结果,谁知道的告诉我一下,谢谢。

获取指定位置的像素
readPixels:function(x,y,w,h) {
if( ‘opengl’ in cc.sys.capabilities) {
var size = 4 * w * h;
var array = new Uint8Array(size);
gl.readPixels(x, y, w, h, gl.RGBA, gl.UNSIGNED_BYTE, array);
return array;
} else {
// implement a canvas-html5 readpixels
return cc._renderContext.getImageData(x, winSize.height-y-h, w, h).data;
}
},

测试代码
var spriteTemp = new cc.Sprite(res.HelloWorld_png);
this.addChild(spriteTemp);

    var self = this;
    cc.eventManager.addListener({
        event: cc.EventListener.MOUSE,
        onMouseUp: function(event){
            var pixelArr = self.readPixels(10, 10, 1, 1);
            cc.log(pixelArr);
        }
    }, spriteTemp);
1赞

if( ‘opengl’ in cc.sys.capabilities) { 这句可以理解成在电脑端的意思?

mark

怎么解决的