0

我使用以下代码制作了一个 drawNode 来绘制图元:

    var.drawNode = cc.DrawNode.create();
    drawNode.drawSegment(this.pos, cc.p(this.pos.x + this.length * Math.sin(this.rotation), this.pos.y + this.length * Math.cos(this.rotation)), STICK_THICKESS, cc.color(255,255,0,255));

它基本上从 this.pos 到另一个点画了一条线。

现在我想围绕this.pos旋转这条线,所以我想我只需要简单地添加这个:

    drawNode.setAnchorPoint(this.pos);
    var rotate = cc.RotateBy.create(2, 360);
    drawNode.runAction(rotate);

但它仍然围绕某个随机点旋转。

4

1 回答 1

1

丑陋但工作方法:

drawNode.setContentSize(1, 1);
drawNode.setAnchorPoint(this.pos);
drawNode.setPosition(this.pos);
var rotate = cc.RotateBy.create(2, 360);
drawNode.runAction(rotate);

BTW create 方法在 Cocos2d-html5 3.0+ 中被弃用。使用cc.rotateBy()代替cc.RotateBy.Create()新的 cc.DrawNode()代替cc.DrawNode.create()

于 2014-10-27T19:15:52.467 回答