cocos绘画(cc.DrawNode的使用)
if (this._underLine) { this._underLine.clear(); } else this._underLine = cc.DrawNode.create().addToEx(this); var lineColor = this._label.getColor(); lineColor = lineColor.a === undefined ? cc.c4b(lineColor.r, lineColor.g, lineColor.b, 255) : lineColor; var labelSize = this._label.getContentSize(); var labelPos = this._label.getPosition(); var y = labelPos.y - labelSize.height / 2; var start = cc.p(labelPos.x - labelSize.width / 2, y); var end = cc.p(labelPos.x + labelSize.width / 2, y); // 两个点确定一条线段 this._underLine.drawSegment(start, end, 1, lineColor);
绘制矩形:drawRect
//创建draw对象 var drawNode =new cc.DrawNode(); //绘制矩形,参数:坐标,大小,填充颜色,边框大小,边框颜色 drawNode.drawRect(cc.p(0,0),cc.p(300,300),cc.color(),5,cc.color(255,255,0,255)); //加入Layer层 this.addChild(drawNode);
绘制圆形:drawCircle
//创建draw对象 var drawNode =new cc.DrawNode(); //圆形,参数:原点,半径,弧度,分段(越大越接近圆),原点到弧度的线是否显示,线条宽度,颜色 drawNode.drawCircle(cc.p(200, 200), 50, 0, 50, false, 2, cc.color(0, 255, 0, 255)); //加入Layer层 this.addChild(drawNode);
画圆点:drawDot
//创建draw对象 var drawNode =new cc.DrawNode(); //画点,参数:坐标,半径, 颜色 drawNode.drawDot(cc.p(100,100),10,cc.color(255,255,255)); //加入Layer层 this.addChild(drawNode);
绘制直线:drawSegment
//创建draw对象 var drawNode =new cc.DrawNode(); //线,参数:起点,终点,线条宽度,线条颜色 drawNode.drawSegment(cc.p(0, 0), cc.p(200,300), 1, cc.color(255, 0, 255, 255)); //加入Layer层 this.addChild(drawNode);
绘制曲线:drawCardinalSpline
//创建draw对象 var drawNode =new cc.DrawNode(); var vertices = [cc.p(60, 80), cc.p(60, 300), cc.p(300, 60)]; //曲线,参数:点数组,张力,段落,线条宽度,颜色 drawNode.drawCardinalSpline(vertices, 0.5,4,2,cc.color(255, 255, 255, 255)); //加入Layer层 this.addChild(drawNode);
浙公网安备 33010602011771号