问题标签 [bezier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bezier - 二次贝塞尔曲线:计算正切
我有一条二次贝塞尔曲线,我想计算给定点的切线斜率。例如,让它成为二次贝塞尔曲线的中点,因此 t=0.5(请参阅下面的链接以获取图片)。我已经计算了二次贝塞尔曲线公式的一阶导数;但是我得到 400 作为斜率的值,尽管它应该是 0。也许我以错误的方式使用一阶导数?我知道我也可以使用三角函数计算切线;但是我想用一阶导数来做,这不应该吗?感谢您的任何提示!
为了澄清/请注意:我对获得二次贝塞尔曲线上任意给定点的斜率的一般方法感兴趣,而不仅仅是获得起点和终点的切线。
我的问题图片,包括上面的文字: http: //cid-0432ee4cfe9c26a0.skydrive.live.com/self.aspx/%c3%96ffentlich/Quadratic%20Bezier%20Curve.pdf
非常感谢您的任何提示!
python - 如何将大纲数据写入 .otf 文件?
我需要编辑或完全替换 OpenType 字体的轮廓数据(贝塞尔曲线)。输入数据是一个 EPS 文件,我必须将其写入具有一定缩放比例的 otf 文件的一个指定字形中。(字形由 PostScript 名称或 Unicode 值指定。)
我需要像编码器这样的东西(或者只是 OpenType 的文件结构库)?
在哪里可以找到有关 otf 和 ttf 文件的结构?
注意:执行 python 相关的工具和库 :-?
algorithm - 找到封闭贝塞尔曲线边界框的算法?
我正在寻找一种算法来找到笛卡尔轴中封闭二次贝塞尔曲线的边界框(最大/最小点):
图片 http://www.imagechicken.com/uploads/1270586513022388700.jpg
注意:上图显示平滑曲线。它可能并不顺利。(有角)
graphics - 渲染抗锯齿螺旋
我已经看过这个例子,使用 php 和 GD分段渲染带有小弧的螺旋。我想做的是渲染一个在数学上尽可能准确的螺旋近似值。
Inkscape 有一个看起来不错的螺旋工具,但我想以编程方式进行螺旋生成(最好在 Python 中)。
我还没有找到任何原生支持螺旋形状的绘图库(例如 Cairo)。如果想要渲染一个完美的抗锯齿螺旋,最好的方法是在画布上逐个像素地迭代,确定每个像素是否位于数学定义的螺旋臂区域(有限厚度)内?在这种情况下,还必须从头开始实现抗锯齿逻辑。您是否会整合位于每个像素框内的曲线部分,然后将填充区域与空白区域的比率转换为 alpha 值?
在这种情况下,渲染的质量比渲染时间更重要。然而,评估每个像素的积分让我觉得效率很低。
更新:我相信我应该问的是这个问题(雅虎问答失败了)。
algorithm - 在分段三次贝塞尔路径中插入点的算法
我正在寻找一种算法来在贝塞尔曲线上插入一个新的控制点,而不会变形。
有人知道贝塞尔算法的库或参考(插入、优化、de Casteljau ...)吗?
javascript - 多个圆圈-> 一个多边形?
使用 Google Maps API v3,我能够google.maps.Circle
在我的地图上创建多个对象。但是,我现在需要以某种方式“连接”它们。我有以下带有多个圆圈的地图:
我现在需要让它看起来像这样:
(来源:pcwp.com)
我在整个互联网上寻找解决方案,但无济于事。有任何想法吗?
algorithm - 如何将封闭的贝塞尔曲线转换为位图?
我需要一种算法来将封闭的贝塞尔曲线(可能是自交叉)转换为二进制位图:内部像素为 0,外部像素为 1。我正在编写一个需要在贝塞尔曲线上实现一些操作的代码,有人可以给我一些关于贝塞尔曲线的资源或教程吗?维基百科和其他人没有说优化、减法、并集、节点插入和删除等操作:-)
替代文字 http://www.imagechicken.com/uploads/1271001073057545100.jpg
algorithm - 计算用于定义二次贝塞尔曲线分段的参数
我有一个二次贝塞尔曲线,描述为(startX,startY)到(anchorX,anchorY)并使用控制点(controlX,controlY)。
我有两个问题:
(1) 我想根据 x 点确定该曲线上的 y 点。
(2)然后,给定我的贝塞尔曲线上的线段(由贝塞尔曲线上的两个中间点(startX',startY',anchorX',anchorY')定义),我想知道该线段的控制点使其与原始贝塞尔曲线完全重叠。
为什么?我想要这些信息进行优化。我正在画很多水平贝塞尔曲线。当贝塞尔曲线大于屏幕时,性能会受到影响,因为渲染引擎最终会渲染超出可见范围。这个问题的答案将让我只渲染可见的内容。
geometry - 计算切线垂直于锚线的三次贝塞尔 T 值
将三次贝塞尔曲线 p1,p2,p3,p4 投影到线 p1,p4 上。当 p2 或 p3 没有投影到 p1 和 p4 之间的线段上时,曲线将从锚点凸出。有没有办法计算曲线的切线垂直于锚线的T值?
这也可以说是找到投影曲线离线段 p1、p4 中心最远的 T 值。当 p2 和 p3 投影到线段上时,解分别为 0 和 1。是否有一个方程可以解决更有趣的情况?
T 值似乎仅取决于映射的控制点与锚线段的距离。
我可以通过改进猜测来确定价值,但我希望有更好的方法。
编辑:
从 2d 中的 p1,..,p4 开始,值为 x1,y1, ..., x4,y4 我根据 Philippe 的回答使用以下代码:
在我查看的示例中,必须从 1.0 中减去 t2 才能正确。