参数图形几何变换

本文介绍了针对参数表示的曲线、曲面的几何变换方法,包括平移、旋转、比例缩放及对称反射等,并给出了具体的变换矩阵及计算公式。

前二节所介绍的二维、三维图形的几何变换均是基于点的几何变换。对于可用参数表示的曲线、曲面图形,若其几何变换仍然基于点,则计算工作量和存储空间都很大,下面介绍几种对参数表示的点、贡线及曲面直接进行几何变换的算法。

    1圆锥曲线的几何变换

    圆锥曲线的二次方程是Ax2+Bxy+Cy2+Dx+Ey+F=0,其相应的矩阵表达式是

       x  y  1 =0,简记为XSXT=0。

    (1)平移变换。若对圆锥曲线平移变换,平移矩阵是Tr ,则平移后的圆锥曲线矩阵方程是XTrSTTrXT=0。

    (2)旋转变换。若对圆锥曲线相对坐标原点作旋转变换,旋转变换矩阵是

    R ,则旋转后的圆锥曲线矩阵方程是XRSRTXT=0。

    若对圆锥曲线相对(m,n)点作旋转θ角变换,则旋转后的圆锥曲线是上述TrR变换的复合变换,变换后圆锥曲线的矩阵方程是XTrRSRTTTrXT=0。

    (3)比例变换。若对圆锥曲线相对(m,n)点比例变换,比例变换矩阵为

    ST ,则变换后圆锥曲线的矩阵方程是XTrSTSSTTTTrXT=0。

    对于二次曲面也有与上述类似的矩阵表示和几何变换表达式。

    2参数曲线、曲面的几何变换

    (1)平移

    若指定一个平移矢量t,对曲线平移t,即对曲线上的每一点P都平移t。平移后的点P*

                 P*=P+t

对于参数曲线和曲面的几何系数矩阵B和代数系数矩阵A,可以直接实现平移变换,即有

               B*=B+T,T=[t t 0 0T

B*是经平移后参数曲线的几何系数矩阵,变换结果如图3.8所示。

    因为双三次曲面片的系数矩阵是4×4的,故其平移变换矩阵为

             T

 

 

 

 

 

文本框: 	图3.8                                   图3.9

 

 

 

     (2)旋转

    形体的旋转变换有绕主轴旋转,或绕空间任一直线旋转等多种形式。若令Rθ表示绕z轴转θ角,Rβ表示绕y轴转β角,Rγ表示绕x轴转γ角,则点Pxyz轴转γ、β、θ角的变换公式是

R=RθRβRγ

对于参数曲线或曲面的代数系数矩阵和几何系数矩阵的变换公式是

         A*=AR, B*=BR

    对于绕空间任一直线旋转,如图3.9所示。设空间任一直线(即轴)由矢量r1r2定义(即该直线的端点),空间参数曲线要绕此轴旋转φ角,则该变换可以由以下几步完成

    第一步:平移曲线和此轴,令平移量为r1,使该轴的一端点变为坐标原点,则t=-r1,若P为曲线上任一点,则有:P*=P-r1

    第二步:旋转曲线和该轴,使该轴和x轴共线,先绕z轴转-θ角,再绕y轴旋转-β角,

    θ=tan-1[(y2y1)/(x2x1),β=sin-1((z2z1)/r2r1|)

            P*=[P-r1Rθβ

    第三步:绕x轴转γ角,γ=φ,则有:P*=[Pr1RθβRr

    第四步:对第二步的变换求逆,即:P*=[Pr1RθβRrR_θβ

    第五步:对第一步的变换求逆,即:P*=[Pr1RθβRrR_θβr1

    经过上述五步,即在新的位置上定义了参数曲线。使用几何系数矩阵B实现上述变换的公式是

         B*=[B+T]RθβRrR_θβ-T  T=[-r1  r1  0  0T

若令                      Ra=RθβRr R_θβ

             B*=[B+T]Ra-T=BRa+TRa-T

                     Ta=TRa-T

                     B*=BRa+Ta

    (3)变比例

    令比例系数为s, 对参数曲线作变比例变换,只要对几何系数矩阵B作变比例变换即可, 也就是

           B*sBB*=[sP0 sP1 sPu0 SPu1T

3.10中定义的曲线P(μ)P*(μ)是相似的,它们相对原点作了变换比例变换。图3.11所示参数曲线对Q点作变比例变换的情况,其变换表达式是

              B*sB+Ts

              Ts=[-Q(s-1)-Q(s-1)0 0]

 

 

 

 

文本框: 图3.11相对空间一点Q对参数曲线作比例变换 文本框: 图3.10 相对原点对参数曲线作比例变换

 

 

 

 

(4)对称反射变换

对称反射变换可用下式表示:B*BRf其中

①对x0的平面作对称反射变换,则

       Rf

    ②对y0的平面作对称反射变换,则

       Rf

    ③对z0的平面作对称反射变换,则

       Rf

    ④对x轴作对称反射变换,则

             Rf

    ⑤对y轴作对称反射变换,则

             Rf

    ⑥对z轴作对称反射变换,则

             Rf

    ⑦对坐标原点作对称反射变换,则

             Rf

    3.12表示对在xy平面上的曲线作对称反射变换的例子,图3.13表示一条参数曲线对空间任一点Q作对称反射变换的情况,其中

             P*=P-2(Q-P),P*u=-Pu

对应的几何系数矩阵B*

             B*=[2Q-P, 2Q-P,Pu0 -Pu1T

 

文本框:        图3.12  一条参数曲线在xy平面上作各种对称反射变换

 

 

 

 

 

3.14表示一条参数曲线对任一点Q作对称反射放大变换的情况,放大系数为m,其几何系数矩阵表达式是

 

文本框: 图3.14  一条参数曲线对空间一点作对称反射放大变换 文本框: 图3.13  一条参数曲线对空间     一点作对称反射变换

 

 

 

 

    以上讨论了对参数曲线、曲面的控制点及其矢量,即对其几何系数矩阵(或代数系数矩阵)直接进行几何变换的情况。对某些应用,在保持形体拓扑关系不变的情况下,还可以把这类几何变换矩阵的元素为常数的变换转化为其矩阵元素为线性或非线性函数的变换,从而可以扩大几何造型的域。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值