0
我创建在Illustrator中一个特殊的椭圆形,一个我在我的应用程序需要绘制。我用Qwarkee使用主要是为了将其转换为核心图形代码:拉伸而贝塞尔曲线,以适应视椭圆界定
void CGPathAddCurveToPoint (CGMutablePathRef path, const CGAffineTransform *m, CGFloat cp1x, CGFloat cp1y, CGFloat cp2x, CGFloat cp2y, CGFloat x, CGFloat y);
下面是代码:
CGMutablePathRef pPath_0 = CGPathCreateMutable();
CGPathMoveToPoint(pPath_0, NULL, 515.98,258.24);
CGPathAddCurveToPoint(pPath_0, NULL, 515.98,435.61,415.54,515.98,258.24,515.98);
CGPathAddCurveToPoint(pPath_0, NULL, 100.94,515.98,0.50,435.61,0.50,258.24);
CGPathAddCurveToPoint(pPath_0, NULL, 0.50,80.86,100.94,0.50,258.24,0.50);
CGPathAddCurveToPoint(pPath_0, NULL, 415.54,0.50,515.98,80.86,515.98,258.24);
CGPathCloseSubpath(pPath_0);
的这一比例大小的椭圆形的直径为515.98。现在我想更改代码,以便椭圆将被拉伸以适应我的视图边界,而不管它的大小。终点很明显,我可以使用视图的高度和宽度来确定这一点。但是,我很难理解如何确定控制点。我是否将这些视为视图高度/视图宽度的比例?不知道我很明白的贝塞尔曲线路径的数学,所以我可以保持曲线我实现了作为视图水平或veritcally绵延的量相同。
您是否尝试过使用'CGContextScaleCTM()'来缩放整个背景?我相信这样可以让你保留所有的绘图;您只需传递您假设的宽度/高度与视图实际具有的宽度/高度的比例。 – 2012-07-14 08:09:42
你知道它是否可以延长mutablePath吗? @KevinGrant – 2012-07-14 09:01:07
“我是否将这些视为视图高度/视图宽度的比例?”那么,如果你只是尝试一下会发生什么? (提示:这应该只是罚款。) – 2012-07-14 16:32:34