我的尾巴形状存储在CGMutablePathref中,它的绘制如下:
- (voID) drawPaths{ CGContextRef context = UIGraphicsGetCurrentContext(); CGContextAddpath(context,self.mutablePath); CGPathRelease(mutablePath); CGcolorRelease(fillcolor); CGcolorRelease(strokecolor);}
当我向这个算法(比如45度)输入一些角度时,我试图做到这一点,尾巴的旋转和曲线非常像上面的照片.旋转显然是一个容易的转变,但是让它曲线是我正在努力的.我意识到我可能需要使用:CGPathAddQuadCurvetoPoint,但是我无法理解要设置为我的控制点,并获得不可预知的结果.即使这个辉煌的职位让我无能为力:Given a CGPath,how to make it curve?
有谁知道如何做到这一点?
解决方法 我假设你有或可以得到路径的原点的x和y坐标 – 气球上的路径的结束,而对于终点,三角形的尖端,你想要的每个路径.我们来调用原点(xorig,yorig)和终点(xend,yend).为了形成路径曲线,我们需要计算一个合理的二次曲线协调点,我们称之为(xc,yc).我相信以下坐标计算将为您产生合理的曲线:xc = (xorig * 3 + xend) / 4;yc = (xorig + xend) / 2;CGPathAddQuadCurvetoPoint(mutablePath,NulL,xc,yc,xend,yend).
为了使路径曲线不同,您可以在xc的计算中改变xorig和xend的权重.
总结以上是内存溢出为你收集整理的ios – 如何弯曲气球尾巴(简单三角形)全部内容,希望文章能够帮你解决ios – 如何弯曲气球尾巴(简单三角形)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)