|
发布时间: 2018-09-16 |
计算机图形学 |
|
|
收稿日期: 2018-01-22; 修回日期: 2018-02-27
基金项目: 国家自然科学基金项目(11261003,11761008);江西省自然科学基金项目(20161BAB211028);江西省教育厅科技项目(GJJ160558)
第一作者简介:
严兰兰, 1982年生, 女, 副教授, 2016年于中南大学获计算数学专业理学博士学位, 主要研究方向为计算机辅助几何设计。E-mail:yxh821011@aliyun.com;
饶智勇, 男, 讲师, 主要研究方向为数值计算。E-mail:zyrao@ecit.cn; 黄涛, 男, 讲师, 主要研究方向为数值计算。E-mail:thuang@ecit.cn.
中图法分类号: TP391.72
文献标识码: A
文章编号: 1006-8961(2018)09-1411-13
|
摘要
目的 本文旨在构造一种含形状参数的Bézier曲线,要求该曲线定义在代数多项式空间上,其基函数的次数与相同数量控制顶点所需Bernstein基函数的次数相同,对基函数以及相应曲线的计算要尽可能简单,并且要给出常见设计要求下曲线中形状参数的选取方案。方法 以三次Bézier曲线为初始研究对象,依据由可调控制顶点定义可调曲线的思想,在两个内控制顶点中引入参数,与Bernstein基函数作线性组合生成形状可调曲线,再将曲线表达式改写成固定控制顶点与含参数的调配函数的线性组合,从而得出三次Bernstein基函数的含参数扩展基,借助递推公式得出更高次的含参数扩展基,然后观察基函数表达式的规律,给出所有含参数扩展基统一的显示表达式,分析了扩展基的性质,并由之定义含参数的曲线,分析了曲线的性质,给出了曲线的几何作图法以及光滑拼接条件,以曲线拉伸能量、弯曲能量、扭曲能量近似最小为目标,推导了曲线中形状参数的计算公式,再通过曲线图和曲率图对比分析了不同能量目标所得曲线的差异。结果 由于所给含参数的扩展基并未提升Bernstein基函数的次数,且具有统一的显示表达式,因此本文方法在赋予Bézier曲线形状调整能力的同时并未增加计算量,由于提供了可以直接使用的形状参数的计算公式,因此在使用该方法时,符合设计要求的形状参数的确定变得简单,数值实例直观显示了所给曲线造型方法以及曲线中形状参数选取方案的正确性与有效性,体现了本文方法较文献中类似方法的优越之处。结论 所给含参数扩展基的构造方法以及形状参数的选取方法具有一般性,该方法可以推广至构造含形状参数的三角域Bézier曲面。
关键词
曲线造型; Bézier曲线; 形状参数; 能量优化; 参数选择
Abstract
Objective The purpose of this paper is to construct a type of Bézier curve with a shape parameter. We require the curves defined in algebraic polynomial space. The degree of the basis functions should be the same as the Bernstein basis functions, which needed the same number of control points. The calculation of the basis functions and corresponding curves should be as simple as possible. The selection scheme under common design requirements of the shape parameter in the curves should be provided. Method With the cubic Bézier curve as the initial research object and in accordance with the idea of defining a shape-adjustable curve by using adjustable control points, we introduce a parameter into the two inner control points. Let the control points with the parameter have a linear combination with the Bernstein basis functions to generate the shape adjustable curves. By rewriting the expression of the curves as the linear combination of the fixed control points and the blending functions with the parameter, we obtain the extended basis with the parameter of the cubic Bernstein basis functions. By using the recursive formula, we obtain the extended basis with the parameter of a high degree. Then, we observe the rule of the basis function expression and provide the uniform explicit expression of all extended basis functions with parameters. The properties of the extended basis functions are analyzed, and the corresponding curves with parameters are defined. The properties of the curves are analyzed. The geometric drawing method and smooth joining conditions of the curves are also provided. The calculation formula of the parameter, which causes the stretch, strain, and jerk energies of the curves to be approximately minimum, is deduced. The difference of the curves determined by different energy targets is compared and analyzed by using the graph of the curves and their curvatures. Result The method provides the Bézier curve shape adjustability without increasing the calculation amount due to the fact that the extended basis functions have the same degree as the Bernstein basis functions and have a uniform explicit expression. Determining the shape parameter that conforms to the design requirements when using this method is easy because the calculation formula of the shape parameter can be used directly. The numerical examples intuitively show the correctness and validity of the proposed curve modeling method and the shape parameter selection scheme in the curve. The illustration also shows the superiority of the method provided in this paper over similar methods presented in the literature. Conclusion The method of constructing an extended basis with the parameter and selection method of the shape parameter are general. This method can be extended to construct a triangular Bézier surface with parameter.
Key words
curve modeling; Bézier curve; shape parameter; energy minimization; parameter selection
0 引言
计算机辅助几何设计(CAGD)是随着航空、汽车等现代工业的发展与计算机的出现而产生与发展起来的一门新兴学科,其主要研究对象是工业产品的几何形状。工业产品的形状大致可分为两类:一类仅由初等解析曲面组成,可用解析几何方法表达;一类由自由型曲线曲面组成,例如飞机、汽车、船舶的外形零件。Bézier方法是CAGD中定义自由型曲线曲面的常用方法之一,该方法采用Bernstein多项式作为基函数,归功于Bernstein基函数的一些“几何直观的”性质[1],Bézier方法具有许多有利于形状设计的优良性质,使得该方法在实践中表现出强大的生命力。
虽然Bézier方法具有诸多优点,但也存在一些不足。例如:对于Bézier曲线曲面而言,当选定曲线曲面次数以后,其形状便由控制顶点唯一确定。为了对此进行改进,学者们给出了多种带形状参数的Bézier曲线曲面模型[2-15]。这些模型有的定义在多项式函数空间上[2-9],有的定义在非多项式函数空间上[10-15],如三角函数空间[10-12]、双曲函数空间[13-15]。建立这些模型的共同方法是构造含参数的调配函数,然后用调配函数与控制顶点作线性组合来定义曲线曲面。正是因为调配函数中含参数,所以选择不同的参数值,真正参与计算的调配函数是不一样的,这样一来,即使不改变控制顶点,曲线曲面的形状依然可以通过改变形状参数的取值来进行调整。
与经典的Bézier曲线曲面相比,带形状参数的Bézier曲线曲面提供了独立于控制顶点的形状调整自由度,但同时也增加了设计人员选择形状参数的工作量。因此,为带形状参数的Bézier曲线曲面模型提供形状参数的选取方案,对于增强这些模型的实用性具有积极意义。
在实际的曲线曲面造型设计中,设计人员比较关注的是曲线曲面的连续性和光顺性。对于Bézier型曲线曲面而言,一旦曲线曲面次数选定,连续性和光顺性这两个特征就直接取决于曲线曲面的控制顶点。这样一来,要想获得满意的形状,控制顶点的选择至关重要。文献[16]研究了在给定部分控制顶点的情况下,如何构造其他控制顶点,使得最终定义的Bézier曲线具有最小的能量,从而具有视觉上较优的形状。
文献[16]中使用的能量优化法是构造光顺曲线的常用方法,该方法在动画设计、计算机视觉、工业设计等领域有着广泛的应用。例如在船体、汽车车身的设计中,通常根据曲面上的关键曲线是否光顺以及曲面的主曲率、高斯曲率、平均曲率等变化是否均匀来判断曲面是否光顺。文献[17-20]研究了能量优化法在曲线曲面光顺处理中的应用。
采用能量优化法进行曲线设计,可以根据不同的设计要求选择不同的能量函数,这种方法具有可控性好、真实性强的特征。关于能量最小曲线造型方法的研究文献有很多[21-27],文献[28]则研究了曲线形状与能量之间的关系。
对于传统的Bézier方法而言,由于曲线曲面形状几乎由控制顶点唯一确定,所以当曲线曲面的连续性、光顺性达不到要求时,唯一的做法是调整控制顶点。然而这种方式不仅使用不方便,而且注意到有些时候曲线曲面控制顶点是事先给定的,不宜对其进行调整,特别是当控制顶点为取自实物的精确测量点时,对其调整是不可取的。在这种情况下,带形状参数的Bézier曲线曲面模型的优越性便凸显出来,因为设计人员可以不调整控制顶点,仅通过改变形状参数的取值来调整曲线曲面的连续性与光顺性[29]。
虽然目前有众多文献给出了带形状参数的Bézier曲线曲面模型,但很少有文献从光顺性的角度给出形状参数取值的建议。另外,多项式函数是众多函数类型中计算最为简单的,且多项式调配函数易于表示成Bernstein基函数的线性组合,因此相应的曲线曲面模型易于统一到目前CAD/CAM系统中所使用的标准形式中来。鉴于此,本文希望给出一种新的定义在多项式函数空间上的含形状参数的Bézier曲线模型,并借助能量优化法给出形状参数取值的建议。
首先构造了一组含参数
1 调配函数及其性质
设
$ \begin{array}{*{20}{c}} {b_i^n\left( t \right) = {\rm{C}}_n^i{{\left( {1 - t} \right)}^{n - i}}{t^i} + \left( {1 - \lambda } \right){{\left( {1 - t} \right)}^{n - i - 1}}{t^{i - 1}} \times }\\ {\left[ {{\rm{C}}_{n - 3}^{i - 3}{{\left( {1 - t} \right)}^2} - {\rm{C}}_{n - 2}^{i - 1}\left( {1 - t} \right)t + {\rm{C}}_{n - 3}^i{t^2}} \right]} \end{array} $ | (1) |
式中,
为了方便,在不至于引起混淆时,文中将省略自变量的记号,例如将
命题1
$ b_i^n = \left( {1 - t} \right)b_i^{n - 1} + tb_{i - 1}^{n - 1},t \in \left[ {0,1} \right] $ | (2) |
式中,
证明 记
$ \begin{array}{*{20}{c}} {A_i^n = {{\left( {1 - t} \right)}^{n - i - 1}}{t^{i - 1}}\left[ {{\rm{C}}_{n - 3}^{i - 3}{{\left( {1 - t} \right)}^2} - } \right.}\\ {\left. {{\rm{C}}_{n - 2}^{i - 1}\left( {1 - t} \right)t + {\rm{C}}_{n - 3}^i{t^2}} \right]} \end{array} $ |
则
$ b_i^n = B_i^n + \left( {1 - \lambda } \right)A_i^n $ |
由于
$ B_i^n = \left( {1 - t} \right)B_i^{n - 1} + tB_{i - 1}^{n - 1} $ |
因此接下来只需注明
$ \begin{array}{*{20}{c}} {\left( {1 - t} \right)A_i^{n - 1} + tA_{i - 1}^{n - 1} = }\\ {{{\left( {1 - t} \right)}^{n - 1 - i}}{t^{i - 1}}\left[ {{\rm{C}}_{n - 4}^{i - 3}{{\left( {1 - t} \right)}^2} - {\rm{C}}_{n - 3}^{i - 1}\left( {1 - t} \right)t + } \right.}\\ {\left. {{\rm{C}}_{n - 4}^i{t^2}} \right] + {{\left( {1 - t} \right)}^{n - i - 1}}{t^{i - 1}}\left[ {{\rm{C}}_{n - 4}^{i - 4}{{\left( {1 - t} \right)}^2} - } \right.}\\ {\left. {{\rm{C}}_{n - 3}^{i - 3}\left( {1 - t} \right)t + {\rm{C}}_{n - 4}^{i - 1}{t^2}} \right] = {{\left( {1 - t} \right)}^{n - i - 1}}{t^{i - 1}}}\\ {\left[ {{\rm{C}}_{n - 3}^{i - 3}{{\left( {1 - t} \right)}^2} - {\rm{C}}_{n - 2}^{i - 1}\left( {1 - t} \right)t + {\rm{C}}_{n - 3}^i{t^2}} \right] = A_i^n} \end{array} $ |
故得证。
命题2 当
证明 由式(1)可知
$ \left\{ \begin{array}{l} b_0^3 = \left( {1 - \lambda t} \right){\left( {1 - t} \right)^2}\\ b_1^3 = \left( {2 + \lambda } \right)t{\left( {1 - t} \right)^2}\\ b_2^3 = \left( {2 + \lambda } \right){t^2}\left( {1 - t} \right)\\ b_3^3 = \left( {1 - \lambda + \lambda t} \right){t^2} \end{array} \right. $ | (3) |
易知当
命题3 对所有
证明 由式(3)可知
$ \left\{ \begin{array}{l} b_0^3 = B_0^3 + \frac{{1 - \lambda }}{3}B_1^3\\ b_1^3 = \frac{{2 + \lambda }}{3}B_1^3\\ b_2^3 = \frac{{2 + \lambda }}{3}B_2^3\\ b_3^3 = \frac{{1 - \lambda }}{3}B_2^3 + B_3^3 \end{array} \right. $ | (4) |
由3次Bernstein基函数的规范性可知
$ \begin{array}{*{20}{c}} {\sum\limits_{i = 0}^{k + 1} {b_i^{k + 1}} = \left( {1 - t} \right)\sum\limits_{i = 0}^k {b_i^k} + t\sum\limits_{i - 1 = 0}^k {b_{i - 1}^k} = }\\ {\left( {1 - t} \right) + t = 1} \end{array} $ |
证毕。
命题4 对所有
证明 当
$ \begin{array}{*{20}{c}} {b_i^{k + 1}\left( {1 - t} \right) = tb_i^k\left( {1 - t} \right) + \left( {1 - t} \right)b_{i - 1}^k\left( {1 - t} \right) = }\\ {tb_{k - i}^k\left( t \right) + \left( {1 - t} \right)b_{k + 1 - i}^k\left( t \right) = b_{k + 1 - i}^{k + 1}\left( t \right)} \end{array} $ |
证毕。
命题5 当
证明 当
$ \sum\limits_{i = 0}^3 {{k_i}b_i^3} = 0 $ |
式中,
$ \begin{array}{*{20}{c}} {{k_0}B_0^3 + \left( {\frac{{1 - \lambda }}{3}{k_0} + \frac{{2 + \lambda }}{3}{k_1}} \right)B_1^3 + }\\ {\left( {\frac{{2 + \lambda }}{3}{k_2} + \frac{{1 - \lambda }}{3}{k_3}} \right)B_2^3 + {k_3}B_3^3 = 0} \end{array} $ |
由3次Bernstein基函数的线性无关性可得
$ \left\{ \begin{array}{l} {k_0} = 0\\ \frac{{1 - \lambda }}{3}{k_0} + \frac{{2 + \lambda }}{3}{k_1} = 0\\ \frac{{2 + \lambda }}{3}{k_2} + \frac{{1 - \lambda }}{3}{k_3} = 0\\ {k_3} = 0 \end{array} \right. $ |
注意到
$ \sum\limits_{i = 0}^{k + 1} {{l_i}b_i^{k + 1}} = 0 $ |
式中,
$ \left( {1 - t} \right)\sum\limits_{i = 0}^k {{l_i}b_i^k} + t\sum\limits_{i = 1}^{k + 1} {{l_i}b_{i - 1}^k} = 0 $ |
注意到上式对区间[0, 1]内所有
$ \sum\limits_{i = 0}^k {{l_i}b_i^k} = 0 $ | (5) |
$ \sum\limits_{i = 1}^{k + 1} {{l_i}b_{i - 1}^k} = 0 $ | (6) |
由归纳假设和式(5)可得
命题6 对所有
$ \begin{array}{*{20}{c}} {b_i^n = \frac{{{\rm{C}}_{n - 3}^{i - 3}\left( {1 - \lambda } \right)}}{{{\rm{C}}_n^{i - 1}}}B_{i - 1}^n + \frac{{\left( {{\rm{C}}_n^i - {\rm{C}}_{n - 2}^{i - 1}} \right) + {\rm{C}}_{n - 2}^{i - 1}\lambda }}{{{\rm{C}}_n^i}}B_i^n + }\\ {\frac{{{\rm{C}}_{n - 3}^i\left( {1 - \lambda } \right)}}{{{\rm{C}}_n^{i + 1}}}B_{i + 1}^n} \end{array} $ | (7) |
式中,
证明 直接由式(1)即可得到。
命题7 对所有
$ \left\{ \begin{array}{l} b_i^n\left( 0 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} 1\\ 0 \end{array}&\begin{array}{l} i = 0\\ i \ne 0 \end{array} \end{array}} \right.\\ b_i^n\left( 1 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} 1\\ 0 \end{array}&\begin{array}{l} i = n\\ i \ne n \end{array} \end{array}} \right. \end{array} \right. $ | (8) |
$ \left\{ \begin{array}{l} b{_i^n }'\left( 0 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} - \left( {n - 1 + \lambda } \right)\\ n - 1 + \lambda \\ 0 \end{array}&\begin{array}{l} i = 0\\ i = 1\\ i \ne 0,1 \end{array} \end{array}} \right.\\ b{_i^n }'\left( 1 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} - \left( {n - 1 + \lambda } \right)\\ n - 1 + \lambda \\ 0 \end{array}&\begin{array}{l} i = n - 1\\ i = n\\ i \ne n - 1,n \end{array} \end{array}} \right. \end{array} \right. $ | (9) |
证明 注意到Bernstein基函数的端点性质
$ \left\{ \begin{array}{l} B_i^n\left( 0 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} 1\\ 0 \end{array}&\begin{array}{l} i = 0\\ i \ne 0 \end{array} \end{array}} \right.\\ B_i^n\left( 1 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} 1\\ 0 \end{array}&\begin{array}{l} i = n\\ i \ne n \end{array} \end{array}} \right. \end{array} \right. $ | (10) |
$ \left\{ \begin{array}{l} B{_i^n }'\left( 0 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} - n\\ n\\ 0 \end{array}&\begin{array}{l} i = 0\\ i = 1\\ i \ne 0,1 \end{array} \end{array}} \right.\\ B{_i^n}'\left( 1 \right) = \left\{ {\begin{array}{*{20}{c}} \begin{array}{l} - n\\ n\\ 0 \end{array}&\begin{array}{l} i = n - 1\\ i = n\\ i \ne n - 1,n \end{array} \end{array}} \right. \end{array} \right. $ | (11) |
由式(7)(10)易得
$ \left\{ \begin{array}{l} b_0^n\left( 0 \right) = \frac{{{\rm{C}}_n^0}}{{{\rm{C}}_n^0}}B_0^n\left( 0 \right) + \frac{{{\rm{C}}_{n - 3}^0\left( {1 - \lambda } \right)}}{{{\rm{C}}_n^1}}B_1^n\left( 0 \right) = \\ B_0^n\left( 0 \right) = 1\\ b_i^n\left( 0 \right) = 0\left( {i \ne 0} \right)\\ b_i^n\left( 1 \right) = 0\left( {i \ne n} \right)\\ b_n^n\left( 1 \right) = \frac{{{\rm{C}}_{n - 3}^{n - 3}\left( {1 - \lambda } \right)}}{{{\rm{C}}_n^{n - 1}}}B_{n - 1}^n\left( 1 \right) + \frac{{{\rm{C}}_n^n}}{{{\rm{C}}_n^n}}B_n^n\left( 1 \right) = \\ B_n^n\left( 1 \right) = 1 \end{array} \right. $ |
这表明式(8)成立。由式(7)(11)易得
$ \left\{ \begin{array}{l} b{_0^n}'\left( 0 \right) = \frac{{{\rm{C}}_n^0}}{{{\rm{C}}_n^0}}B{_0^n}'\left( 0 \right) + \frac{{{\rm{C}}_{n - 3}^0\left( {1 - \lambda } \right)}}{{{\rm{C}}_n^1}}B{_1^n}'\left( 0 \right) = \\ \;\;\;\;\;\;\;\;\;\;\;\; - \left( {n - 1 + \lambda } \right)\\ b{_1^n}'\left( 0 \right) = \frac{{\left( {{\rm{C}}_n^1 - {\rm{C}}_{n{\rm{ - 2}}}^0} \right) + {\rm{C}}_{n - 2}^0\lambda }}{{{\rm{C}}_{\rm{n}}^1}}B{_1^n}'\left( 0 \right) = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;n - 1 + \lambda \\ b{_i^n}'\left( 0 \right) = 0\left( {i \ne 0,1} \right)\\ b{_i^n}'\left( 1 \right) = 0\left( {i \ne n - 1,n} \right)\\ b{_{n - 1}^n}'\left( 1 \right) = \frac{{\left( {{\rm{C}}_n^{n - 1} - {\rm{C}}_{n - 2}^0} \right) + {\rm{C}}_{n - 2}^{n - 2}\lambda }}{{{\rm{C}}_n^{n - 1}}}B{_{n - 1}^n}'\left( 1 \right) = \\ \;\;\;\;\;\;\;\;\;\;\;\;\; - \left( {n - 1 + \lambda } \right)\\ b{_n^n}'\left( 1 \right) = \frac{{{\rm{C}}_{n - 3}^{n - 3}\left( {1 - \lambda } \right)}}{{{\rm{C}}_n^{n - 1}}}B{_{n - 1}^n}'\left( 1 \right) + \frac{{{\rm{C}}_n^n}}{{{\rm{C}}_n^i}}B{_n^n}'\left( 1 \right) = \\ \;\;\;\;\;\;\;\;\;\;\;\;n - 1 + \lambda \end{array} \right. $ |
这表明式(9)成立。证毕。
2 可调曲线及其性质
给定控制顶点
$ \mathit{\boldsymbol{p}}\left( t \right) = \sum\limits_{i = 0}^n {b_i^n\left( t \right){\mathit{\boldsymbol{V}}_i}} $ | (12) |
式中,
根据
命题8 给定参数值
$ \begin{array}{*{20}{c}} {\mathit{\boldsymbol{p}}\left( t \right) = \sum\limits_{i = 0}^n {b_i^n\mathit{\boldsymbol{V}}_i^0} = \sum\limits_{i = 0}^{n - 1} {b_i^{n - 1}\mathit{\boldsymbol{V}}_i^1} = L = }\\ {\sum\limits_{i = 0}^3 {b_i^3\mathit{\boldsymbol{V}}_i^{n - 3}} = \sum\limits_{i = 0}^3 {B_i^3\mathit{\boldsymbol{Q}}_i^{n - 2}} = L = \mathit{\boldsymbol{Q}}_i^{n + 1}} \end{array} $ | (13) |
式中,
$ \mathit{\boldsymbol{V}}_i^l = \left( {1 - t} \right)\mathit{\boldsymbol{V}}_i^{l - 1} + t\mathit{\boldsymbol{V}}_{i + 1}^{l - 1};i = 0,1, \cdots ,n - l $ | (14) |
点
$ \begin{array}{*{20}{c}} {\mathit{\boldsymbol{Q}}_i^l = \left( {1 - t} \right)\mathit{\boldsymbol{Q}}_i^{l - 1} + t\mathit{\boldsymbol{Q}}_{i + 1}^{l - 1}}\\ {i = 0,1, \cdots ,n + 1 - l} \end{array} $ | (15) |
当
$ \left\{ \begin{array}{l} \mathit{\boldsymbol{Q}}_0^{n - 2} = \mathit{\boldsymbol{V}}_0^{n - 3}\\ \mathit{\boldsymbol{Q}}_1^{n - 2} = \frac{{1 - \lambda }}{3}\mathit{\boldsymbol{V}}_0^{n - 3} + \frac{{2 + \lambda }}{3}\mathit{\boldsymbol{V}}_1^{n - 3}\\ \mathit{\boldsymbol{Q}}_2^{n - 2} = \frac{{2 + \lambda }}{3}\mathit{\boldsymbol{V}}_2^{n - 3} + \frac{{1 - \lambda }}{3}\mathit{\boldsymbol{V}}_3^{n - 3}\\ \mathit{\boldsymbol{Q}}_3^{n - 2} = \mathit{\boldsymbol{V}}_3^{n - 3} \end{array} \right. $ | (16) |
证明 将式(2)代入式(12)并整理可得
$ \begin{array}{*{20}{c}} {\mathit{\boldsymbol{p}}\left( t \right) = \sum\limits_{i = 0}^n {b_i^n{\mathit{\boldsymbol{V}}_i}} = \left( {1 - t} \right)\sum\limits_{i = 0}^n {b_i^{n - 1}{\mathit{\boldsymbol{V}}_i}} + t\sum\limits_{i = 0}^n {b_{i - 1}^{n - 1}{\mathit{\boldsymbol{V}}_i}} = }\\ {\left( {1 - t} \right)\sum\limits_{i = 0}^{n - 1} {b_i^{n - 1}{\mathit{\boldsymbol{V}}_i}} + t\sum\limits_{i = 0}^{n - 1} {b_i^{n - 1}{\mathit{\boldsymbol{V}}_{i + 1}}} = }\\ {\sum\limits_{i = 0}^{n - 1} {\left[ {\left( {1 - t} \right){\mathit{\boldsymbol{V}}_i} + t{\mathit{\boldsymbol{V}}_{i + 1}}} \right]b_i^{n - 1}} } \end{array} $ |
应用该结论
$ \begin{array}{*{20}{c}} {\sum\limits_{i = 0}^n {b_i^3{\mathit{\boldsymbol{V}}_i}} = B_0^3{\mathit{\boldsymbol{V}}_0} + B_1^3\left( {\frac{{1 - \lambda }}{3}{\mathit{\boldsymbol{V}}_0} + \frac{{2 + \lambda }}{3}{\mathit{\boldsymbol{V}}_1}} \right) + }\\ {B_2^3\left( {\frac{{2 + \lambda }}{3}{\mathit{\boldsymbol{V}}_2} + \frac{{1 - \lambda }}{3}{\mathit{\boldsymbol{V}}_3}} \right) + B_3^3{\mathit{\boldsymbol{V}}_3} = \sum\limits_{i = 0}^3 {B_i^3{\mathit{\boldsymbol{Q}}_i}} } \end{array} $ |
显然,从该关系式中可以导出式(16)。然后,对3次Bézier曲线执行de casteljau算法,最后得到的点即为
式(16)具有明确的几何意义:点
给定参数值
命题9 给定含参数
$ \left\{ \begin{array}{l} {\mathit{\boldsymbol{p}}_1}\left( t \right) = \sum\limits_{i = 0}^m {b_i^m\left( {t;{\lambda _1}} \right){\mathit{\boldsymbol{V}}_{1i}}} \\ {\mathit{\boldsymbol{p}}_2}\left( t \right) = \sum\limits_{i = 0}^n {b_i^n\left( {t;{\lambda _2}} \right){\mathit{\boldsymbol{V}}_{2i}}} \end{array} \right. $ | (17) |
式中,
$ \left\{ \begin{array}{l} {\mathit{\boldsymbol{V}}_{20}} = {\mathit{\boldsymbol{V}}_{1m}}\\ {\mathit{\boldsymbol{V}}_{21}} = {\mathit{\boldsymbol{V}}_{20}} + C\left( {{\mathit{\boldsymbol{V}}_{1m}} - {\mathit{\boldsymbol{V}}_{1,m - 1}}} \right) \end{array} \right. $ | (18) |
式中,
证明 由式(8)(9)(17)可得
$ \left\{ \begin{array}{l} {\mathit{\boldsymbol{p}}_1}\left( 1 \right) = {\mathit{\boldsymbol{V}}_{1m}}\\ {{\mathit{\boldsymbol{p'}}}_1}\left( 1 \right) = \left( {m - 1 + {\lambda _1}} \right)\left( {{\mathit{\boldsymbol{V}}_{1m}} - {\mathit{\boldsymbol{V}}_{1,m - 1}}} \right)\\ {\mathit{\boldsymbol{p}}_2}\left( 0 \right) = {\mathit{\boldsymbol{V}}_{20}}\\ {{\mathit{\boldsymbol{p'}}}_2}\left( 0 \right) = \left( {n - 1 + {\lambda _2}} \right)\left( {{\mathit{\boldsymbol{V}}_{21}} - {\mathit{\boldsymbol{V}}_{20}}} \right) \end{array} \right. $ |
因此当式(18)中所给条件满足时,有
$ \left\{ \begin{array}{l} {\mathit{\boldsymbol{p}}_2}\left( 0 \right) = {\mathit{\boldsymbol{p}}_1}\left( 1 \right)\\ {{\mathit{\boldsymbol{p'}}}_2}\left( 0 \right) = \beta {{\mathit{\boldsymbol{p'}}}_1}\left( 1 \right) \end{array} \right. $ |
式中,
从式(18)可以看出,
对于传统Bézier曲线而言,应用时的局限之一在于曲线的形状控制不具有局部性,改变任何一个控制顶点的位置都会引起整条曲线形状的改变。在组合Bézier曲线中,改变那些在光滑拼接条件中未涉及的控制顶点,只会改变当前曲线段的形状。也就是说,组合Bézier曲线的形状可以在不改变连接点处光滑度的前提下作局部修改。从这个意义上讲,组合Bézier曲线具有局部形状控制性。对于组合
图 2以组合3次
3 形状参数的选择
选择文献[16]中的3种能量函数
$ {E_k} = \int_0^1 {{\mathit{\boldsymbol{p}}^{\left( k \right)}}\left( t \right) \cdot {\mathit{\boldsymbol{p}}^{\left( k \right)}}\left( t \right){\rm{d}}t} ,\;\;\;\;\;\;k = 1,2,3 $ |
当
接下来,推导使
将式(7)代入式(12)并整理,可得
$ \begin{array}{l} \quad \mathit{\boldsymbol{p}}\left( t \right) = \sum\limits_{i = 0}^n {\left( {{\mathit{\boldsymbol{Q}}_i} - \lambda {\mathit{\boldsymbol{W}}_i}} \right)B_i^n} \\ \left\{ \begin{array}{l} {\mathit{\boldsymbol{Q}}_i} = {\mathit{\boldsymbol{W}}_i} + {\mathit{\boldsymbol{V}}_i}\\ {\mathit{\boldsymbol{W}}_i} = \frac{1}{{{\rm{C}}_n^i}}\left( {{\rm{C}}_{n - 3}^{i - 2}{\mathit{\boldsymbol{V}}_{i + 1}} - {\rm{C}}_{n - 2}^{i - 1}{\mathit{\boldsymbol{V}}_i} + {\rm{C}}_{n - 3}^{i - 1}{\mathit{\boldsymbol{V}}_{i - 1}}} \right) \end{array} \right. \end{array} $ |
对
$ \begin{array}{*{20}{c}} {{\mathit{\boldsymbol{p}}^{\left( k \right)}}\left( t \right) = \frac{{n!}}{{\left( {n - k} \right)!}} \times }\\ {\sum\limits_{i = 0}^{n - k} {{\Delta ^k}\left( {{\mathit{\boldsymbol{Q}}_i} - \lambda {\mathit{\boldsymbol{W}}_i}} \right)B_i^{n - k} \buildrel \Delta \over = \mathit{\boldsymbol{f}} - \mathit{\boldsymbol{\lambda g}}} } \end{array} $ |
$ \left\{ \begin{array}{l} \mathit{\boldsymbol{f}} = \frac{{n!}}{{\left( {n - k} \right)!}}\sum\limits_{i = 0}^{n - k} {{\Delta ^k}{\mathit{\boldsymbol{Q}}_i}B_i^{n - k}} \\ \mathit{\boldsymbol{g}} = \frac{{n!}}{{\left( {n - k} \right)!}}\sum\limits_{i = 0}^{n - k} {{\Delta ^k}{\mathit{\boldsymbol{W}}_i}B_i^{n - k}} \end{array} \right. $ | (19) |
因此
$ {\mathit{\boldsymbol{p}}^{\left( k \right)}}\left( t \right) \cdot {\mathit{\boldsymbol{p}}^{\left( k \right)}}\left( t \right) = \mathit{\boldsymbol{f}} \cdot \mathit{\boldsymbol{f}} - 2\lambda \mathit{\boldsymbol{f}} \cdot \mathit{\boldsymbol{g}} + {\lambda ^2}\mathit{\boldsymbol{g}} \cdot \mathit{\boldsymbol{g}} $ |
则曲线能量为关于形状参数
$ {E_k}\left( \lambda \right) = \int_0^1 {\mathit{\boldsymbol{f}} \cdot \mathit{\boldsymbol{f}}{\rm{d}}t} - 2\lambda \int_0^1 {\mathit{\boldsymbol{f}} \cdot \mathit{\boldsymbol{g}}{\rm{d}}t} + {\lambda ^2}\int_0^1 {\mathit{\boldsymbol{g}} \cdot \mathit{\boldsymbol{g}}{\rm{d}}t} $ |
令
$ \frac{{{\rm{d}}{E_k}\left( \lambda \right)}}{{{\rm{d}}\lambda }} = - 2\int_0^1 {\mathit{\boldsymbol{f}} \cdot \mathit{\boldsymbol{g}}{\rm{d}}t} + 2\lambda \int_0^1 {\mathit{\boldsymbol{g}} \cdot \mathit{\boldsymbol{g}}{\rm{d}}t} = 0 $ |
得
$ \lambda = \frac{{\int_0^1 {\mathit{\boldsymbol{f}} \cdot \mathit{\boldsymbol{g}}{\rm{d}}t} }}{{\int_0^1 {\mathit{\boldsymbol{g}} \cdot \mathit{\boldsymbol{g}}{\rm{d}}t} }} $ | (20) |
式中,
为了方便使用,分别给出当
统一记
$ \mathit{\boldsymbol{D}}_n^{\rm{T}} = \left( {{\mathit{\boldsymbol{P}}_0},{\mathit{\boldsymbol{P}}_1}, \cdots ,{\mathit{\boldsymbol{P}}_n}} \right) $ |
式中,
当
$ \lambda = - \frac{1}{2}\frac{{\mathit{\boldsymbol{D}}_3^{\rm{T}}\mathit{\boldsymbol{X}}_3^{\rm{1}}{\mathit{\boldsymbol{D}}_3}}}{{\mathit{\boldsymbol{D}}_3^{\rm{T}}\mathit{\boldsymbol{Y}}_3^{\rm{1}}{\mathit{\boldsymbol{D}}_3}}} $ |
$ \mathit{\boldsymbol{X}}_3^{\rm{1}} = \left( {\begin{array}{*{20}{c}} 5&{ - 13}&{ - 7}&{10}\\ 0&8&4&{ - 7}\\ 0&0&8&{ - 13}\\ 0&0&0&5 \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_3^{\rm{1}} = \left( {\begin{array}{*{20}{c}} 2&{ - 4}&{ - 1}&1\\ 0&2&1&{ - 1}\\ 0&0&2&{ - 4}\\ 0&0&0&2 \end{array}} \right) $ |
当
$ \lambda = - \frac{{\mathit{\boldsymbol{D}}_4^{\rm{T}}\mathit{\boldsymbol{X}}_4^{\rm{1}}{\mathit{\boldsymbol{D}}_4}}}{{\mathit{\boldsymbol{D}}_4^{\rm{T}}\mathit{\boldsymbol{Y}}_4^{\rm{1}}{\mathit{\boldsymbol{D}}_4}}} $ |
$ \mathit{\boldsymbol{X}}_4^{\rm{1}} = \left( {\begin{array}{*{20}{c}} {21}&{ - 39}&{ - 27}&3&{21}\\ 0&{22}&{11}&{ - 19}&3\\ 0&0&{16}&{11}&{ - 27}\\ 0&0&0&{22}&{ - 39}\\ 0&0&0&0&{21} \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_4^{\rm{1}} = \left( {\begin{array}{*{20}{c}} 9&{ - 15}&{ - 6}&6&{ - 3}\\ 0&8&{ - 2}&{ - 5}&6\\ 0&0&8&{ - 2}&{ - 6}\\ 0&0&0&8&{ - 15}\\ 0&0&0&0&9 \end{array}} \right) $ |
当
$ \lambda = - \frac{1}{2}\frac{{\mathit{\boldsymbol{D}}_5^{\rm{T}}\mathit{\boldsymbol{X}}_5^{\rm{1}}{\mathit{\boldsymbol{D}}_5}}}{{\mathit{\boldsymbol{D}}_5^{\rm{T}}\mathit{\boldsymbol{Y}}_5^{\rm{1}}{\mathit{\boldsymbol{D}}_5}}} $ |
$ \mathit{\boldsymbol{X}}_5^{\rm{1}} = \left( {\begin{array}{*{20}{c}} {135}&{ - 215}&{ - 141}&{ - 27}&{59}&{54}\\ 0&{114}&{61}&{ - 85}&{ - 48}&{59}\\ 0&0&{72}&{48}&{ - 85}&{ - 27}\\ 0&0&0&{72}&{61}&{ - 141}\\ 0&0&0&0&{114}&{ - 215}\\ 0&0&0&0&0&{135} \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_5^{\rm{1}} = \left( {\begin{array}{*{20}{c}} {20}&{ - 30}&{ - 17}&{11}&3&{ - 7}\\ 0&{18}&{ - 3}&{ - 15}&9&3\\ 0&0&{14}&{ - 4}&{ - 15}&{11}\\ 0&0&0&{14}&{ - 3}&{ - 17}\\ 0&0&0&0&{18}&{ - 30}\\ 0&0&0&0&0&{20} \end{array}} \right) $ |
当
$ \lambda = - \frac{1}{2}\frac{{\mathit{\boldsymbol{D}}_3^{\rm{T}}\mathit{\boldsymbol{X}}_3^{\rm{2}}{\mathit{\boldsymbol{D}}_3}}}{{\mathit{\boldsymbol{D}}_3^{\rm{T}}\mathit{\boldsymbol{Y}}_3^{\rm{2}}{\mathit{\boldsymbol{D}}_3}}} $ |
$ \mathit{\boldsymbol{X}}_3^{\rm{2}} = \left( {\begin{array}{*{20}{c}} 1&{ - 5}&1&2\\ 0&4&{ - 4}&1\\ 0&0&4&{ - 5}\\ 0&0&0&1 \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_3^{\rm{2}} = \left( {\begin{array}{*{20}{c}} 1&{ - 2}&1&{ - 1}\\ 0&1&{ - 1}&1\\ 0&0&1&{ - 2}\\ 0&0&0&1 \end{array}} \right) $ |
当
$ \lambda = - \frac{1}{2}\frac{{\mathit{\boldsymbol{D}}_4^{\rm{T}}\mathit{\boldsymbol{X}}_4^{\rm{2}}{\mathit{\boldsymbol{D}}_4}}}{{\mathit{\boldsymbol{D}}_4^{\rm{T}}\mathit{\boldsymbol{Y}}_4^{\rm{2}}{\mathit{\boldsymbol{D}}_4}}} $ |
$ \mathit{\boldsymbol{X}}_4^{\rm{2}} = \left( {\begin{array}{*{20}{c}} {15}&{ - 49}&8&{11}&0\\ 0&{38}&{ - 24}&{ - 14}&{11}\\ 0&0&{16}&{ - 24}&8\\ 0&0&0&{38}&{ - 49}\\ 0&0&0&0&{15} \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_4^{\rm{2}} = \left( {\begin{array}{*{20}{c}} 6&{ - 14}&4&1&{ - 3}\\ 0&9&{ - 8}&3&1\\ 0&0&4&{ - 8}&4\\ 0&0&0&9&{ - 14}\\ 0&0&0&0&6 \end{array}} \right) $ |
当
$ \lambda = - \frac{1}{2}\frac{{\mathit{\boldsymbol{D}}_5^{\rm{T}}\mathit{\boldsymbol{X}}_5^2{\mathit{\boldsymbol{D}}_5}}}{{\mathit{\boldsymbol{D}}_5^{\rm{T}}\mathit{\boldsymbol{Y}}_5^2{\mathit{\boldsymbol{D}}_5}}} $ |
$ \mathit{\boldsymbol{X}}_5^2 = \left( {\begin{array}{*{20}{c}} {196}&{ - 600}&{113}&{83}&{40}&{ - 28}\\ 0&{470}&{ - 275}&{ - 145}&{40}&{40}\\ 0&0&{116}&{ - 8}&{ - 145}&{83}\\ 0&0&0&{116}&{ - 275}&{113}\\ 0&0&0&0&{470}&{ - 600}\\ 0&0&0&0&0&{196} \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_5^2 = \left( {\begin{array}{*{20}{c}} {52}&{ - 130}&{31}&{11}&{ - 10}&{ - 6}\\ 0&{90}&{ - 65}&{ - 5}&{30}&{ - 10}\\ 0&0&{27}&{ - 26}&{ - 5}&{11}\\ 0&0&0&{27}&{ - 65}&{31}\\ 0&0&0&0&{90}&{ - 130}\\ 0&0&0&0&0&{52} \end{array}} \right) $ |
当
$ \lambda = - 2\frac{{\mathit{\boldsymbol{D}}_3^{\rm{T}}\mathit{\boldsymbol{X}}_3^3{\mathit{\boldsymbol{D}}_3}}}{{\mathit{\boldsymbol{D}}_3^{\rm{T}}\mathit{\boldsymbol{Y}}_3^3{\mathit{\boldsymbol{D}}_3}}} $ |
$ \mathit{\boldsymbol{X}}_3^3 = \left( {\begin{array}{*{20}{c}} 0&{ - 1}&1&0\\ 0&1&{ - 2}&1\\ 0&0&1&{ - 1}\\ 0&0&0&0 \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_3^3 = \left( {\begin{array}{*{20}{c}} 1&{ - 2}&2&{ - 2}\\ 0&1&{ - 2}&2\\ 0&0&1&{ - 2}\\ 0&0&0&1 \end{array}} \right) $ |
当
$ \lambda = - \frac{{\mathit{\boldsymbol{D}}_4^{\rm{T}}\mathit{\boldsymbol{X}}_4^3{\mathit{\boldsymbol{D}}_4}}}{{\mathit{\boldsymbol{D}}_4^{\rm{T}}\mathit{\boldsymbol{Y}}_4^3{\mathit{\boldsymbol{D}}_4}}} $ |
$ \mathit{\boldsymbol{X}}_4^3 = \left( {\begin{array}{*{20}{c}} 3&{ - 20}&{16}&4&{ - 6}\\ 0&{25}&{ - 48}&{14}&4\\ 0&0&{32}&{ - 48}&{16}\\ 0&0&0&{25}&{ - 20}\\ 0&0&0&0&3 \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_4^3 = \left( {\begin{array}{*{20}{c}} 7&{ - 22}&{16}&{ - 10}&2\\ 0&{19}&{ - 32}&{26}&{ - 10}\\ 0&0&{16}&{ - 32}&{16}\\ 0&0&0&{19}&{ - 22}\\ 0&0&0&0&7 \end{array}} \right) $ |
当
$ \lambda = - \frac{1}{2}\frac{{\mathit{\boldsymbol{D}}_5^{\rm{T}}\mathit{\boldsymbol{X}}_5^3{\mathit{\boldsymbol{D}}_5}}}{{\mathit{\boldsymbol{D}}_5^{\rm{T}}\mathit{\boldsymbol{Y}}_5^3{\mathit{\boldsymbol{D}}_5}}} $ |
$ \mathit{\boldsymbol{X}}_5^3 = \left( {\begin{array}{*{20}{c}} 7&{ - 37}&{27}&1&{ - 3}&{ - 2}\\ 0&{44}&{ - 67}&7&{12}&{ - 3}\\ 0&0&{32}&{ - 32}&7&1\\ 0&0&0&{32}&{ - 67}&{27}\\ 0&0&0&0&{44}&{ - 37}\\ 0&0&0&0&0&7 \end{array}} \right) $ |
$ \mathit{\boldsymbol{Y}}_5^3 = \left( {\begin{array}{*{20}{c}} 4&{ - 14}&9&{ - 3}&{ - 1}&1\\ 0&{13}&{ - 19}&9&{ - 1}&{ - 1}\\ 0&0&9&{ - 14}&9&{ - 3}\\ 0&0&0&9&{ - 19}&9\\ 0&0&0&0&{13}&{ - 14}\\ 0&0&0&0&0&4 \end{array}} \right) $ |
4 数值实验
4.1 $\lambda $ -Bézier曲线与Bézier曲线
为了直观比较以不同能量函数为优化目标所得
图 3(a) (b) (c)分别为以
图 4(a)为图 3(a)曲线的曲率图,第2幅子图为图 4(a)局部放大后的图形;余下3幅子图依次为图 3(b) (c) (d)中曲线的曲率图。
图 5(a) (b)分别为以
图 6(a)为图 5(a)曲线的曲率图,图 6(b)为图 6(a)局部放大后的图形;图 6(c) (d) (e)依次为图 5(b) (c) (d)曲线的曲率图。
图 7(a) (b) (c)分别为以
图 8(a)为图 7(a)中曲线的曲率图,图 8(b)为图 8(a)局部放大后的图形;图 8(c) (d) (e)依次为图 7(b) (c) (d)中曲线的曲率图。
分别比较图 3、图 5、图 7中的4幅子图,基本可以得出相同的规律和特征。取拉伸能量近似最小为目标得到的曲线“棱角分明”,各条曲线段接近拉直状,在分段连接点处容易形成“尖角”,曲线的次数越低,这种特征越明显;从理论上讲,拉伸能量反映的是曲线长度,拉伸能量越小,曲线段越接近连接首末控制顶点的直线段,因此在分段连接点处过渡较不自然。取弯曲能量近似最小为目标得到的曲线总是具有良好的视觉效果;从理论上讲,弯曲能量反映的是曲线曲率,弯曲能量越小,曲线段越平缓,因此在分段连接点处过渡较为自然。取扭曲能量近似最小为目标得到的曲线总是与相应的Bézier曲线具有相似的外形。从对控制多边形的逼近能力这一角度来比较,整体上看,取拉伸能量近似最小为目标得到的曲线最弱,取扭曲能量近似最小为目标得到的曲线最强。这样一来,若将曲线段的首、末控制顶点分别看作山底和山顶,将曲线段看做从山底到山顶的路径,那么以拉伸能量近似最小为目标得到的路径最陡峭,以扭曲能量近似最小为目标得到的路径最平缓,以弯曲能量近似最小为目标得到的路径则介于前二者之间。
从图 4、图 6、图 8可以看出,取拉伸能量近似最小为目标得到的曲线在某些点处具有非常大的曲率,整条曲线的曲率变化范围较大;将取弯曲能量近似最小和取扭曲能量近似最小为目标得到的曲线曲率图相比,有时候前者的变化范围较后者大(如图 4、图 8),有时候前者的变化范围较后者小(如图 6);取扭曲能量近似最小为目标得到的曲线与相应的Bézier曲线具有形状相似的曲率图,有时候前者的曲率变化范围较后者小(如图 4),有时候两者的曲率变化范围相当(如图 6、图 8)。
虽然扭曲能量反映的是曲线曲率的变化量,
4.2 $\lambda $ -Bézier曲线与文献中曲线
本文通过构造含参数的调配函数来定义形状可调的Bézier曲线,很多文献都采用类似的方法给出了调配函数各异的形状可调Bézier曲线模型。相比较而言,本文所给模型的优点主要体现在两个方面:1)所有调配函数都有统一的显示表达式,2)曲线中形状参数的选取有章可循。当有明确的设计要求时,选择本文模型,可以依据相应的计算公式快速确定满足要求的形状参数。而对于文献中那些没有提供形状参数配套计算公式的模型,一般情况下,不管控制顶点如何变化,通常都是在形状参数允许的范围内取一些比较特殊的值来进行曲线设计,这种方式往往不易保证所得曲线满足设计要求。下面以文献[30]中所给曲线模型为例,与本文方法进行比较。
给定控制顶点(0, 6)、(0, 2)、(5, 2)、(7, 0)、(2, 0)、(6, 8),可以确定一段5次
5 结论
形状可调Bézier曲线的设计是CAGD中的一个重要问题,目前已有很多文献研究含形状参数的Bézier曲线。与现有文献相比,本文优点在于赋予曲线形状调整能力的同时并未提升基函数的次数,并且给出了所有基函数统一的显式表示,这给基函数以及由之定义的曲线的计算带来了方便。另外,虽然在基函数中引入参数可以赋予曲线独立于控制顶点的形状调整自由度,但同时也给设计人员增加了选择形状参数的工作量,现有以形状可调Bézier曲线为研究主题的文献很少给出形状参数取值的建议,本文则弥补这一不足,给出了使曲线拉伸能量、弯曲能量、扭曲能量近似最小时,形状参数的计算公式,为曲线的应用提供了方便。
参考文献
-
[1] Wang R H, Li C J, Zhu C G. Computational Geometry Tutorial[M]. Beijing: Science Press, 2008. [ 王仁宏, 李崇君, 朱春钢. 计算几何教程[M]. 北京: 科学出版社, 2008.]
-
[2] Wang W T, Wang G Z. Bézier curves with shape parameter[J]. Journal of Zhejiang University Science-Science A, 2005, 6(6): 497–501. [DOI:10.1631/jzus.2005.A0497]
-
[3] Yan L L, Song L Z. Bézier curves with two shape parameters[J]. Journal of Engineering Graphics, 2008, 29(3): 88–92. [严兰兰, 宋来忠. 带两个形状参数的Bézier曲线[J]. 工程图学学报, 2008, 29(3): 88–92. ] [DOI:10.3969/j.issn.1003-0158.2008.03.017]
-
[4] Yang L Q, Zeng X M. Bézier curves and surfaces with shape parameters[J]. International Journal of Computer Mathematics, 2009, 86(7): 1253–1263. [DOI:10.1080/00207160701821715]
-
[5] Hang H J, Yu J, Li W G. Two parameters extension of cubic Bézier curve and its applications[J]. Computer Engineering and Applications, 2010, 46(31): 178–180, 205. [杭后俊, 余静, 李汪根. 三次Bézier曲线的一种双参数扩展及应用[J]. 计算机工程与应用, 2010, 46(31): 178–180, 205. ] [DOI:10.3778/j.issn.1002-8331.2010.31.049]
-
[6] Yan L L, Liang J F. An extension of the Bézier model[J]. Applied Mathematics and Computation, 2011, 218(6): 2863–2879. [DOI:10.1016/j.amc.2011.08.030]
-
[7] Qin X Q, Hu G, Zhang N J, et al. A novel extension to the polynomial basis functions describing Bezier curves and surfaces of degree n with multiple shape parameters[J]. Applied Mathematics and Computation, 2013, 223: 1–16. [DOI:10.1016/j.amc.2013.07.073]
-
[8] Yan L L, Wu G G. An new extension of Bézier method[J]. Journal of Hefei University of Technology, 2013, 36(5): 625–631. [严兰兰, 邬国根. Bézier方法的新扩展[J]. 合肥工业大学学报:自然科学版, 2013, 36(5): 625–631. ] [DOI:10.3969/j.issn.1003-5060.2013.05.025]
-
[9] Hui H Y, Zhang G C. Similar Bézier curves with two shape parameters[J]. Computer Science, 2014, 41(11A): 100–102, 122. [葸海英, 张贵仓. 带两个参数的拟Bézier曲线[J]. 计算机科学, 2014, 41(11A): 100–102, 122. ]
-
[10] Shi L H, Zhang G C. New extension of cubic TC-Bézier curves[J]. Computer Engineering and Applications, 2011, 47(4): 201–204. [师利红, 张贵仓. 三次TC-Bézier曲线的新扩展[J]. 计算机工程与应用, 2011, 47(4): 201–204. ] [DOI:10.3778/j.issn.1002-8331.2011.04.056]
-
[11] Dube M, Mishra U. Tension quasi-quintic trigonometric Bézier curve with two shape parameters[J]. International Journal of Recent Scientific Research, 2016, 7(8): 12866–12870.
-
[12] Wu B B, Yin J F, Jin M, et al. Rational quadratic trigonometric Bézier curve based on new basis with exponential functions[J]. Journal of Shanghai Normal University:Natural Sciences, 2017, 46(3): 410–416. [吴蓓蓓, 殷俊锋, 金猛, 等. 基于新指数基函数的有理二次三角Bézier曲线[J]. 上海师范大学学报:自然科学版, 2017, 46(3): 410–416. ] [DOI:10.3969/J.ISSN.100-5137.2017.03.009]
-
[13] Chen S G, Huang Y D. Hyperbolic Bézier curves with multiple shape parameters[J]. Journal of Engineering Graphics, 2009, 30(1): 75–79. [陈素根, 黄有度. 带多形状参数的双曲Bézier曲线[J]. 工程图学学报, 2009, 30(1): 75–79. ] [DOI:10.3969/j.issn.1003-0158.2009.01.014]
-
[14] Zhang J X, Tan J Q. Extensions of hyperbolic Bézier curves[J]. Journal of Engineering Graphics, 2011, 32(1): 31–38. [张锦秀, 檀结庆. 代数双曲Bézier曲线的扩展[J]. 工程图学学报, 2011, 32(1): 31–38. ] [DOI:10.3969/j.issn.1003-0158.2011.01.007]
-
[15] Yan L L, Han X L, Zhou Q H. Quadratic hyperbolic Bézier curve and surface[J]. Computer Engineering and Science, 2015, 37(1): 162–167. [严兰兰, 韩旭里, 周其华. 二次双曲Bézier曲线曲面[J]. 计算机工程与科学, 2015, 37(1): 162–167. ] [DOI:10.3969/j.issn.1007-130X.2015.01.025]
-
[16] Xu G, Wang G Z, Chen W Y. Geometric construction of energy-minimizing Béezier curves[J]. Science China Information Sciences, 2011, 54(7): 1395–1406. [DOI:10.1007/s11432-011-4294-8]
-
[17] Zhang C M, Zhang P F, Cheng F H. Fairing spline curves and surfaces by minimizing energy[J]. Computer-Aided Design, 2001, 33(13): 913–923. [DOI:10.1016/S0010-4485(00)00114-7]
-
[18] Long X P. Fairing of curves and surfaces by local energy optimization[J]. Journal of Computer-Aided Design & Computer Graphics, 2002, 14(12): 1109–1113. [龙小平. 局部能量最优法与曲线曲面的光顺[J]. 计算机辅助设计与图形学学报, 2002, 14(12): 1109–1113. ] [DOI:10.3321/j.issn:1003-9775.2002.12.002]
-
[19] Wang Y J, Cao Y. Energy optimization fairing algorithm of non-uniform cubic parametric splines[J]. Journal of Computer-Aided Design & Computer Graphics, 2005, 17(9): 1969–1975. [王远军, 曹沅. 非均匀三次参数样条曲线的能量最优光顺算法[J]. 计算机辅助设计与图形学学报, 2005, 17(9): 1969–1975. ] [DOI:10.3321/j.issn:1003-9775.2005.09.013]
-
[20] Sun Y H. Quintic G2 interpolating fair curves via curvature variation minmization[D]. Hangzhou: Zhejiang Gongshang University, 2015. [孙义环. 曲率变化最小的五次G2插值光顺曲线[D]. 杭州: 浙江工商大学, 2015.] http://cdmd.cnki.com.cn/Article/CDMD-10353-1016031384.htm
-
[21] Wallner J. Existence of set-interpolating and energy-minimizing curves[J]. Computer Aided Geometric Design, 2004, 21(9): 883–892. [DOI:10.1016/j.cagd.2004.07.010]
-
[22] Yong J H, Cheng F H. Geometric hermite curves with minimum strain energy[J]. Computer Aided Geometric Design, 2004, 21(3): 281–301. [DOI:10.1016/j.cagd.2003.08.003]
-
[23] Zhang A, Zhang C. Shape interpolating geometric hermite curves with minimum strain energy[J]. Journal of Information and Computational Science, 2006, 3(4): 1025–1033.
-
[24] Veltkamp R C, Wieger W. Modeling 3D curves of minimal energy[J]. Computer Graphics Forum, 2010, 14(3): 97–110. [DOI:10.1111/j.1467-8659.1995.cgf143_0097.x]
-
[25] Jaklič G, Žagara E. Planar cubic G1 interpolatory splines with small strain energy[J]. Journal of Computational and Applied Mathematics, 2011, 235(8): 2758–2765. [DOI:10.1016/j.cam.2010.11.025]
-
[26] Ling C C, Abbas M, Ali J M. Minimum energy curve in polynomial interpolation[J]. Matematika (Johor Bahru), 2011, 27(2): 159–167.
-
[27] Adriaenssens S, Malek S, Miki M, et al. Generating smooth curves in 3 dimensions by minimizing higher order strain energy measures[J]. International Journal of Space Structures, 2013, 28(3-4): 119–126. [DOI:10.1260/0266-3511.28.3-4.119]
-
[28] Li X M, Zhang Y X, Ma L, et al. Discussion on relationship between minimal energy and curve shapes[J]. Applied Mathematics-A Journal of Chinese Universities, 2014, 29(4): 379–390. [DOI:10.1007/s11766-014-3230-2]
-
[29] Yan L L, Han X L. Improvement of the modifiable Bézier curves[J]. Journal of Image and Graphics, 2014, 19(9): 1368–1376. [严兰兰, 韩旭里. 对可调控Bézier曲线的改进[J]. 中国图象图形学报, 2014, 19(9): 1368–1376. ] [DOI:10.11834/jig.20140914]
-
[30] Wu X Q. Bézier curve with shape parameter[J]. Journal of Image and Graphics, 2006, 11(2): 269–274. [吴晓勤. 带形状参数的Bézier曲线[J]. 中国图象图形学报, 2006, 11(2): 269–274. ] [DOI:10.3969/j.issn.1006-8961.2006.02.019]