如何创建椭圆CGPathRef?

时间:2014-03-22 11:00:11

标签: ios xcode core-graphics sprite-kit cgpath

我是可可的核心图形新手。 我有一张鸡蛋的图片,我正在使用Sprite工具包模拟一个鸡蛋自由下落的物理学。 我需要设置egg的physicsBody属性。 如何为此目的创建一个椭圆CGPathRef?

对于蛋形路径,我必须创建一半圆形,一半椭圆形。怎么做?

2 个答案:

答案 0 :(得分:2)

请允许我指出CGPath的参考文档,您将在其中找到CGPathCreateWithEllipseInRect

答案 1 :(得分:1)

实际上,我刚刚在我编写的应用程序中遇到了这个问题,以创建一些图形资源。

CGPathMoveToPoint(path, nil, 10, 95);
CGPathAddLineToPoint(path, nil, (5 + SIZE) * 1.5, 95 - SIZE * 1 / 3);

CGAffineTransform t = CGAffineTransformMakeScale(1.5, 1.0);
CGPathAddArc(path, &t, SIZE + 5, 95 - SIZE * 4 / 3, SIZE, M_PI / 2, -M_PI * 5 / 4, YES);
CGPathCloseSubpath(path);

TL; DR

您必须使用CGAffineTransform才能获得椭圆弧。