我正在尝试创建一个"平行"贝塞尔曲线.在我的尝试中,我已经接近但没有雪茄.我试图在2条曲线(红色,蓝色)之间保持稳定的1px偏移.

我的主要目标是使用边缘偏离algorythm来扩展/缩小svg路径.
解
对于正在寻找解决方案的其他人,我创建了一个AS3版本.
http://seant23.wordpress.com/2010/11/12/offset-bezier-curves/
通过三次贝塞尔曲线的笔划,我的意思是渲染具有特定线宽'w'的曲线'A'.
如何推导出描述贝塞尔"A"笔划轮廓的其他三次贝塞尔曲线?
我想将描边路径转换为填充对象.(以编程方式,在JavaScript中.)
这条线只是一条简单的曲线,一系列坐标.我可以将这条线渲染成一条路径,然后给它一个特定厚度的笔划......但我试图得到一个填充的形状而不是一条描边线,这样我就可以对它进行进一步的修改,比如翘曲它,所以产生的"笔划"可能会有不同的厚度或者有自定义位被切掉(据我所知,这些东西都不可能用真正的SVG笔划).
所以我试图手动将一条线"加厚"成一个坚固的形状.我找不到任何这样做的功能 - 我查看了D3.js和Raphaël的文档,但没有运气.有谁知道这样做的库/函数?
或者,甚至更好:如果有人能够向我解释关于我将如何手动执行此任务的几何理论,通过获取我所拥有的线坐标列表并制定出有效"抚摸"它的新路径,这将是惊人的.换句话说,当你告诉它描述一条路径时,浏览器会做什么- 它如何确定描边应该是什么形状?
我只发现这个博客与相关答案http://seant23.wordpress.com/2010/11/12/offset-bezier-curves/,但不幸的是我不知道的语言和无法理解的数学原理它.我需要知道如何使贝塞尔曲线与我所拥有的曲线平行.
我有一个Point,Segment和Path类,但我不明白如何将路径分成段.Point类具有CGPoint位置公共变量,Segment类具有4个属性,Point*control1,*control2,*point2和*point1; Path类包含一个NSMutableArray段和一个Point startPoint.
我是目标c的新手,我真的很感激一些帮助,如果不是我的特定班级建设,至少对于更一般的方法.