构造一条三次Bezier曲线

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构造一条三次Bezier曲线相关的知识,希望对你有一定的参考价值。

题目:
给定四点P1(0,0,0),P2(1,1,1),P3(2,-1,-1),P4(3,0,0),用其作为特征多边形来构造一条三次Bezier曲线,并计算参数为0,1/3,2/3,1的值。

计算机专业 图形学 毕业清考例题 请各位答题时本着真诚负责的精神来 这次考试要是过不了 我就死惨了!就拿不到学位证啦~~~
叩谢各位大侠!悬赏!

参考技术A 真想拿学位证的话为什么不自己做呢,把bezier曲线那一章只要好好看了必然会做出来的,bs一下

双三次Bezier曲面算法

双三次Bezier曲面

定义

  • 双三次Bezier曲面由u,v方向的两组三次Bezier曲线交织而成,控制网格由16和控制点构成。

\\[p(u,v)= \\left[\\begin{matrix} u^3 & u^2 & u & 1 \\end{matrix}\\right] \\left[\\begin{matrix} -1 & 3 & -3 & 1 \\\\ 3 & -6 & 3 & 0 \\\\ -3 & 3 & 0 & 0 \\\\ 1 & 0 & 0 & 0 \\end{matrix}\\right] \\left[\\begin{matrix} P_{0,0} &P_{0,1} & P_{0,2} & P_{0,3}\\\\ P_{1,0} & P_{1,1} & P_{1,2} & P_{1,3} \\\\ P_{2,0} & P_{2,1} & P_{2,2} & P_{2,3} \\\\ P_{3,0} & P_{3,1} &P_{3,2} & P_{3,3} \\end{matrix}\\right] \\left[\\begin{matrix} -1 & 3 & -3 & 1 \\\\ 3 & -6 & 3 & 0 \\\\ -3 & 3 & 0 & 0 \\\\ 1 & 0 & 0 & 0 \\end{matrix}\\right] \\left[\\begin{matrix} u^3\\\\ u^2 \\\\ u \\\\ 1 \\end{matrix}\\right] \\]

  • 简写为

\\[P(u,v)=UMPM^TV^T \\]

递归细分

  • 采用四叉树递归划分法细分曲面

曲面片的法向量

  • 曲面上一个细分点的\\(u\\)方向切向量为\\(p_u\\)\\(v\\)方向上的切向量为\\(p_v\\)

\\[p_u=\\frac{\\partial p(u,v)}{\\partial u}, p_v=\\frac{\\partial p(u,v)}{\\partial v} \\]

细分点在面上的法向量为:

\\[N=\\frac{\\partial p(u,v)}{\\partial v}\\times \\frac{\\partial p(u,v)}{\\partial v} \\]

  • 双三次曲面上法向量:

\\[ p^`_u(u,v)= \\left[\\begin{matrix} 3u^2 & 2u & 1 &0 \\end{matrix}\\right]MPM^TV^T \\]

\\[ p^`_v(u,v)=UMPM^T \\left[\\begin{matrix} 3u^2 & 2u & 1 &0 \\end{matrix}\\right]^T \\]

\\[N=p^`_u(u,v)\\times p^`_v(u,v) \\]

以上是关于构造一条三次Bezier曲线的主要内容,如果未能解决你的问题,请参考以下文章

用OpenGL进行曲线曲面的绘制

de Casteljau算法编写N次bezier曲线的VC程序?

Bezier(贝塞尔)曲线简介

双三次Bezier曲面算法

图形学计算机图形学知识点提纲6

Hermit曲线、Bezier曲线、B样条曲线有啥关系?有啥区别?各自的应用范围?