作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
贝塞尔曲线上的控制点越多,曲线到达的任何给定控制点就越远。
例如,一条 2 点(线性)曲线到达两个控制点。 3 点(二次)曲线在三个点之间形成一条弧,这对我来说是理想的,它不完全遵循直线,因为那样它就不是曲线,但是控制点之间有很强的视觉关系和线路。
使用 4 点(三次)曲线,其控制点呈锯齿形,但生成的线要直得多。扩展为在锯齿形中使用 100 个控制点,曲线几乎完全是直的。
为了继续使用锯齿形示例,形成我正在寻找的曲线的一种方法是,在本例中,该曲线看起来不像 100 个控制点贝塞尔曲线产生的那样平滑平滑的锯齿形。将形状分解为许多小的 3 点贝塞尔曲线,并在它们的末端进行插值。
是否有 C#、伪代码或者只是简单形式的更多信息可用于执行此更复杂的贝塞尔曲线相关任务?
最佳答案
使用二次贝塞尔弧构建曲线非常容易实现
您基本上使用源顶点之间的中点作为每个弧的起点/终点,并将源顶点作为弧的控制点。这种选择保证了切线的连续性,并为曲线形状留下了很多控制权。
此外,您还可以通过使用具有相同坐标的两个连续源顶点轻松获得尖角。
关于c# - 活泼的贝塞尔曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9658932/
我是一名优秀的程序员,十分优秀!