Skip to content

Bezier interpolation,computing control points and Quadratic Bezier Curve over three points and its order upgrading,de Casteljau,etc

Notifications You must be signed in to change notification settings

RobinLiew/XBezier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XBezier

Bezier interpolation,computing control points and Quadratic Bezier Curve over three points and its order upgrading,de Casteljau,etc

我们通常用线条来绘制2D图形,大致分为两种线条:直线和曲线。不论我们动手还是用电脑,都能很容易地画出第一种线条。只要给电脑起点和终点,砰!直线就画出来了。没什么好疑问的。

然而,绘制曲线却是个大问题。虽然我们可以很容易地徒手画出曲线,但除非给出描述曲线的数学函数,不然计算机无法画出曲线。实际上,画直线时也需要数学函数,但画直线所需的方程式很简单,我们在这里不去考虑。在计算机看来,所有线条都是“函数”,不管它们是直线还是曲线。然而,这就表示我们需要找到能在计算机上表现良好的曲线方程。这样的曲线有很多种,在本文我们主要关注一类特殊的、备受关注的函数,基本上任何画曲线的地方都会用到它:贝塞尔曲线。

  • 贝塞尔插值 image

你怎么画它们?包围盒是怎么样的,怎么确定交点,怎么拉伸曲线,怎么进行bezier插值,怎么计算控制点?怎么计算过三点的二次贝塞尔曲线及其升阶(自适应的)?该项目对上述问题的计算逻辑使用scala进行了封装,你可以直接调用,也可以进行相关修改。

  • 过三点的二次贝塞尔曲线及其升阶计算 image

参考文献

About

Bezier interpolation,computing control points and Quadratic Bezier Curve over three points and its order upgrading,de Casteljau,etc

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published