Xcode,SKSpriteKit,无法绘制四边形

时间:2015-04-15 08:49:32

标签: sprite-kit skshapenode

我正在使用Xcode,SKSpriteKit并正在制作游戏。

我需要我的程序在函数中绘制四边形。

    -(void) DrawQuad {
    //Draw Quadrilateral here with points (a,b), (c,d), (e,f), (g,h)
    }

我已经尝试过其他链接/帮助但由于某些原因,我粘贴的代码无效。

例如,在Draw Rectangle/ Circle and Triangle in Spritekit with Two Colors. . .,我尝试将该函数复制并粘贴到我的代码中(在.mm文件中)。它没有用:

enter image description here

enter image description here

即使在程序中进行建议的更改仍然无法解决问题。

1 个答案:

答案 0 :(得分:1)

SKShapeNode绘制由Core Graphics路径定义的形状。如果我没记错的话,UIBezierPath不是其中的一部分,但你可以使用CGPath。

请看这个示例代码:

SKShapeNode *myNode = [[SKShapeNode alloc] init];
myNode.position = CGPointMake(300,300);
myNode.zPosition = 100;
CGMutablePathRef myPath = CGPathCreateMutable();
CGPathMoveToPoint(myPath, nil, 0, 0);
CGPathAddLineToPoint(myPath, nil, 0, 100);
CGPathAddLineToPoint(myPath, nil, 100, 100);
CGPathAddLineToPoint(myPath, nil, 100, 0);
CGPathAddLineToPoint(myPath, nil, 0, 0);
myNode.path = myPath;
CGPathRelease(myPath);
myNode.strokeColor = [SKColor redColor];
[self addChild:myNode];