我正在尝试创建一个椭圆。我用过bodyWithEdgeLoopFromPath
它,但它似乎有问题,因为有时其他物体会被夹在中间。
但我希望椭圆是实心的,所以我尝试bodyWithPolygonFromPath
了(我希望它是静态的)
horizontalOval = [[SKShapeNode alloc] init];
theRect = CGRectMake(0, 0, self.frame.size.width/6 , 15);
CGMutablePathRef ovalPath = CGPathCreateMutable();
CGPathAddEllipseInRect(ovalPath, NULL, theRect);
horizontalOval.path = ovalPath;
horizontalOval.fillColor = [UIColor blueColor];
horizontalOval.physicsBody.dynamic = NO;
horizontalOval.physicsBody = [SKPhysicsBody bodyWithPolygonFromPath:ovalPath];
但是得到了错误
SKPhysicsBody: Error attempting to create polygon with 17 vertices, maximum is 12
如何创建复杂的路径并使它们坚固?
此外,当我将它放在适当的位置self.frame.size.width/2
并且self.frame.size.height/2
它没有保持在中心位置时,它会向右移动一点。
我必须theRect = CGRectMake(-40, 0........)
让它居中,但这是为什么呢?
UIBezierPath* ovalPath = [UIBezierPath bezierPathWithOvalInRect: _paddleRect];
但是有13个顶点。试图使用PaintCode
.