计算机图形学24471_第1页
计算机图形学24471_第2页
计算机图形学24471_第3页
计算机图形学24471_第4页
计算机图形学24471_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机图形学2Lesson4⼆维三维图形变换1.窗⼝与视图的变换⽤户域(⽤户空间):⽤户⽤来定义设计对象的实数域(连续的⽆限的)窗⼝区W:在⽤户坐标系中需要进⾏观察和处理的⼀个坐标区域,即⽤户在⽤户域中指定的任意区域W(window)。窗⼝是⽤户图形的⼀部分,⼩于或等于⽤户域,可以嵌套定义窗⼝。屏幕域:图形设备上⽤来输出图形的最⼤区域。(有限的整数域)视图区V:将窗⼝映射到显⽰设备上的坐标区域。任何⼩于或等于屏幕域的区域都可定义为视图区V(viewport)。⼀个屏幕上可定义多个视图区。窗⼝区到视图区的观察变换为了全部如实地在视图区中显⽰出窗⼝区内所定义的物体图形,就必须求出图形在窗⼝区和视图区之间的映象关系。即需要根据⽤户所定义的参数(窗⼝区),找到窗⼝区与视图区之间的坐标对应关系。a,c分别反映了窗⼝区和视图区之间在x和y⽅向上的伸缩⽐b,d分别反映了定位点在x和y⽅向上的偏移量。2.⼆维图形的⼏何变换图形变换就是要变换图形的顶点坐标,同时保持图形的原拓扑关系不变。(矩阵加法适合交换律和结合律;矩阵乘法适合结合律,不适合交换律)性质:从属性:变换前直线或图形上的点,变换后直线或图形上均有⼀确定的点与之对应。同素性:变换前是直线、曲线或点,变换后仍有直线、曲线或点与之对应。平⾏性:两直线平⾏,变换后仍保持平⾏。平移变换平移变换定义:平移变换是指将p点沿直线路径从⼀个坐标位置移到另⼀个坐标位置的重定位过程,是⼀种不产⽣变形⽽移动物体的刚体变换。设把图形从屏幕上⼀处p(x,y)移到另⼀处p’(x’,y’),平移的⽔平距离为Tx,垂直距离为Ty。可得:x’=x+Tx和y’=y+Ty(Tx、Ty称为平移⽮量)[x’y’]=[xy]+[TxTy]设T=[TxTy],则p’=p+T⽐例变换⽐例变换定义:⽐例变换是指对p点相对于坐标原点沿x⽅向放缩Sx倍,沿y⽅向放缩Sy倍。可得:x’=xSx和y’=ySy(Sx、Sy称为⽐例系数)若把p(x,y)相对于参考点(x0,y0)缩放到另⼀处p’(x’,y’),sx、sy为⽔平、垂直⽐例因⼦。可得:x’=x0+(x-x0)Sx和y’=y0+(y-y0)Sy旋转变换旋转变换定义:⼆维旋转是指将p点绕坐标原点转动某个⾓度(逆时针为正,顺时针为负)得到新的点p’的重定位过程。原坐标:x=r·cosα和y=r·sinα相对原点变换后:x’=xcosθ-ysinθ和y’=xsinθ+ycosθ相对参考点变换后:x’=x0+(x-x0)cosθ-(y-y0)sinθ和y’=y0+(y-y0)cosθ+(x-x0)sinθ齐次坐标技术使图形变换转化为表⽰图形的点集矩阵与某⼀变换矩阵进⾏矩阵乘法这⼀单⼀问题,从⽽借助计算机快速得到变换后的图形**实现⽅法:**⽤n+1维向量表⽰⼀个n维向量,且在n+1维空间中描述n维向量的变换例如:⼆维坐标点p(x,y)的齐次坐标为p(wx,wy,w)。w是⼀个⾮零⽐例系数。习惯上,⽤p=[xy1]表⽰齐次坐标下⼆维平⾯上⼀个未变换的点。齐次坐标表⽰法把⼆维线形变换表⽰如下所⽰的规格化形式:x’=a1x+b1y+c1和y’=a2x+b2y+c2n个定点的多边形,顶点矩阵变换为:⽤齐次坐标技术表⽰⼏种变换:平移⽐例旋转:镜像对称变换:错切变换:沿x轴⽅向关于y错切(x=x+cy)沿y轴⽅向关于x错切(y=y+bx)复合变换:图形作⼀次以上的⼏何变换时,可以将复杂变换转化成⼀系列简单变换的连乘积,即变换矩阵相乘。矩阵乘法没有交换率,复合变换要按⼀定顺序进⾏连续变换:连续进⾏的平移、⽐例、旋转变换可以交换顺序连续进⾏的沿相同⽅向的错切可以交换顺序eg:求XOY平⾯内,p(x,y)点绕任意点A(x0,y0)逆时针旋转θ⾓的复合变换矩阵。①将任意点A移⾄坐标原点,此时进⾏平移变换。②针对原点进⾏⼆维⼏何变换—逆时针旋转θ⾓。③进⾏反平移,将任意点A⼜移回到原来的位置。整体的⽐例变换(s,全⽐例变换):它使整个图形沿x、y轴作等⽐例均匀变换若s>1,图形整体缩⼩;若0<s<1,图形整体放⼤;若s<0,发⽣关于原点的对称变换。⽆穷远点:[100]:x轴上的⽆穷远点;[010]:y轴上的⽆穷远点;[001]:坐标原点。3.三维图形的⼏何变换通过三维图形变换,可⽤⼆维屏幕坐标表⽰三维形体。三维图形变换则分为三维⼏何变换和投影变换三维图形的⼏何变换三维基本⼏何变换都是相对于坐标原点和坐标轴进⾏的⼏何变换,有平移、⽐例、旋转、对称和错切等。假设三维物体变换前⼀点为p(x,y,z),变换后为p’(x’,y’,z’)。三维空间中某点的变换可以表⽰成点的齐次坐标与四阶的三维变换矩阵相乘:根据T3D在变换中所起的具体作⽤,进⼀步可将T3D分成四个矩阵。即:平移变换⽐例变换⽐例变换分局部⽐例变换和整体⽐例变换。①局部⽐例变换局部⽐例变换由T3D中主对⾓线元素决定,其它元素均为零。当对x,y,z⽅向分别进⾏⽐例变换时,其变换矩阵为:其中,a、e、i分别为x,y,z三个⽅向的⽐例因⼦。若a=e=i,则各⽅向缩放⽐例因⼦相同;若a≠e≠i,则各⽅向缩放⽐例因⼦不同,⽴体产⽣变形。②整体⽐例变换若⽤同⼀⽐例进⾏变换,即得到整体⽐例变换,可⽤以下矩阵表⽰:旋转变换三维旋转变换可以看成是⼆维旋转变换的组合:分别以x,y,z为旋转轴,绕每个旋转轴的三维旋转可以看成是在另两个坐标轴组成的⼆维平⾯上进⾏的⼆维旋转变换,将⼆维旋转变换组合起来,就可得到总的三维变换。①绕z轴旋转z坐标不变,x,y坐标变化,正好同⼆维的正向旋转⼀样三维点p绕z轴正向旋转θ⾓的变换矩阵为:②绕y轴旋转y坐标不变,z,x坐标变化,三维点p绕y轴正向旋转θ⾓的变换矩阵为:③绕x轴旋转x坐标不变,y,z坐标变化,三维点p绕x轴正向旋转θ⾓的变换矩阵为:对称变换对称变换有关于坐标平⾯、坐标轴、原点等对称变换。①关于坐标平⾯对称另两种变换以此类推。②关于坐标轴对称另两种变换以此类推。③关于原点对称错切变换三维物体沿x、y、z轴三个⽅向发⽣错切变换,其变换矩阵为:另两个以此类推。逆变换三维复合变换三维复合变换是指图形作⼀次以上的变换,变换结果是每次的变换矩阵相乘:p’=p·T=p·T1·T2……Tn(n>1)相对于参考点F(xf,yf,zf)的三维变换,步骤为:①将参考点F移⾄坐标原点;②针对原点进⾏三维⼏何变换;③进⾏反平移将物体绕平⾏于某坐标轴的轴旋转,可通过下列变换序列来得到所需旋转矩阵:①平移:使物体的旋转轴和与之平⾏的某⼀坐标轴重合;②旋转:对该坐标轴完成指定的旋转;③逆平移:将物体的旋转轴移回原位置。旋转轴平⾏于z轴的⼏何变换。旋转轴平⾏于y轴的⼏何变换。旋转轴平⾏于x轴的⼏何变换。Lesson5三维图形投影和消隐1.三维图形投影变换基础知识投影变换:把三维物体投射到投影⾯上得到⼆维平⾯图形。分为平⾯⼏何投影和观察投影。1.平⾯⼏何投影主要指平⾏投影、透视投影以及通过这些投影变换⽽得到的三维⽴体的常⽤平⾯图形:三视图、轴测图。2.观察投影是指在观察空间下进⾏的图形投影变换。⾸先在三维空间中选择⼀个点为投影中⼼;不经过这个点再定义⼀个平⾯为投影平⾯;连接投影中⼼与三维物体(线段AB)的线,称为投影线。投影线与投影⾯相交,在投影⾯上形成物体的像(线段A’B’),这个像称为三维物体在⼆维投影⾯上的投影。平⾯⼏何投影可分为两⼤类:透视投影:投影中⼼到投影⾯之间的距离是有限的,有⼀个投影⾯和⼀个投影中⼼⽣成真实感视图但不保持相关⽐例。平⾏投影:投影中⼼到投影⾯之间的距离是⽆限的,有⼀个投影⾯和投影⽅向。精确地反映物体的实际尺⼨,不具有透视缩⼩性。没有给出三维物体外表的真实性表⽰。平⾏投影可分成两类:正投影和斜投影当投影⽅向与投影平⾯的夹⾓为90度时,得到的投影为正投影,否则为斜投影正投影⼜可分为:三视图和正轴测。当投影⾯与某⼀坐标轴垂直(或投影线与某⼀坐标轴平⾏)得到的投影为三视图;否则,得到的投影为正轴测投影。三视图:只有物体⼀个⾯的投影,可以测量距离和⾓度。三视图包括主视图、侧视图和俯视图三种,投影⾯分别与Y轴、X轴和Z轴垂直。正轴测投影:投影平⾯不与坐标轴垂直,所以同时可看到⼀个物体的多个⾯,具有⼀定的⽴体效果。它保持形体间的平⾏性,但⾓度有变化。当投影⾯与三个坐标轴之间的夹⾓都相等时为正等轴测;当投影⾯与两个坐标轴之间的夹⾓相等时为正⼆测;当投影⾯与三个坐标轴之间的夹⾓都不相等时为正三测。三视图为了将三个视图画在⼀张图上,需将三个视图都重合到⼀个平⾯XOZ上去。**主视图:**将三维形体向XOZ⾯(V⾯)作垂直投影(即正平⾏投影),得到主视图侧视图:将三维形体往YOZ⾯(W⾯)作垂直投影得到侧视图。侧视图的投影变换使W⾯绕Z轴正向旋转90°使W⾯沿X轴负向平移⼀段距离x0俯视图:将三维形体向XOY⾯(H⾯)作垂直投影得到俯视图。俯视图的投影变换使H⾯绕X轴负向旋转90°使H⾯沿Z轴负向平移⼀段距离z0[x’y’z’1]=[xyz1]·TV=[x0z1][x’y’z’1]=[xyz1]·TW=[-y0z1][x’y’z’1]=[xyz1]·TH=[x0-y1]正轴测投影①先绕Z轴正向旋转α⾓②再绕X轴反向旋转β⾓③将三维形体向XOZ平⾯(V⾯)作正投影得到正轴测投影的投影变换矩阵正等轴侧投影:投影后三根轴等同地缩短。a=b=c正⼆轴侧投影:投影后三根轴向变形系数有两个等同。a=c=2b正三轴侧投影:投影后三根轴向变形系数三个各不相同。α和β的值随意取斜平⾏投影投影平⾯不垂直于投影⽅向的平⾏投影。能像三视图那样在主平⾯上进⾏距离和⾓度测量,⼜能像正轴测投影那样同时反映物体的多个⾯,具有⽴体效果。斜等轴测投影:投影⽅向与投影⾯成45°。和投影⾯垂直的任何直线段,其投影的长度不变。斜⼆轴测投影:投影⽅向与投影⾯成arctg(2)和投影⾯垂直的任何直线段,其投影的长度为原来⼀半。透视投影特点:视线是从视点出发,它是不平⾏的。(视点到投影⾯的距离有限)在⼆维屏幕上表⽰物体三维空间位置的全部信息。离观察者越近像越⼤,反之亦然。在远处的“汇聚点”处完全消失透视投影缩⼩效应:透视变换与视点(xv,yv,zv)距离投影⾯的远近有关(zv)-正⽐透视变换与物体(x,y,z)距离视点(xv,yv,zv)的远近有关(z-zv)-反⽐当zv=0时,图形退化成⼀个点(汇聚点)当zv→-∞时,为平⾏投影当y=0时,[x’y’z’1]=[x0z1]当y→∞时,[x’y’z’1]=[01/q01]当y→∞时,所有点的变换结果都集中到了y轴上的1/q处,即所有平⾏于y轴的直线将延伸相交于点(0,1/q,0)。该点称为灭点当p≠0,q=r=0时,则将在x轴上的1/p处产⽣⼀灭点,其坐标值为(1/p,0,0)。此时所有平⾏于x轴的直线将延伸交于该点。当r≠0,q=p=0时,则将在z轴上的1/r处产⽣⼀灭点,其坐标值为(0,0,1/r)。此时所有平⾏于z轴的直线将延伸交于该点。灭点⼀束不平⾏于投影⾯的平⾏线的投影将汇聚成⼀点,称作灭点(VanishingPoint)透视投影的灭点个数有⽆限多个,不同⽅向的平⾏线在投影⾯上就能形成不同的灭点。主灭点:平⾏于坐标轴的平⾏线在投影⾯上形成的灭点就是主灭点。主灭点个数:因为有X、Y、Z三个坐标轴,所以主灭点个数最多有三个。透视分类⼀点透视:有⼀个主灭点,即投影⾯与⼀个坐标轴正交,与另外两个坐标轴平⾏。两点透视:有两个主灭点,即投影⾯与两个坐标轴相交,与另⼀个坐标轴平⾏。三点透视:有三个主灭点,即投影⾯与三个坐标轴都相交。⼀点透视(平⾏透视)的变换矩阵将三维形体平移到适当位置x0、y0、z0;进⾏透视变换;向XOZ平⾯作正投影变换,将结果变换到XOZ平⾯上。(平移透视投影的原因:避免把物体安置在原点,产⽣平⾯或直线积聚成直线或点⽽影响图形直观性。)两点透视(成⾓透视)的变换矩阵投影⾯与⼀个坐标轴(Z轴)平⾏,即与XOZ平⾯和YOZ平⾯有⼀个夹⾓绕Z轴正向转θ⾓绕Z轴正向转θ⾓向XOZ平⾯作正投影变换,将结果变换到XOZ平⾯上。三点透视的变换矩阵投影⾯与三个坐标轴都相交,即与XOY、YOZ、XOZ平⾯均有夹⾓。绕Z轴正向转α⾓绕X轴反向转β⾓平移令视点在Y轴,进⾏透视变换;向XOZ平⾯作正投影变换,将结果变换到XOZ平⾯上。视向变换⽤户坐标系的点=>观察坐标系的点=>屏幕坐标系的点。把⽤户坐标系中的点转换成观察坐标系中的点的过程视向变换矩阵1.平移——视点为坐标原点。2.旋转——绕X轴逆时针旋转90˚。3.旋转——绕Y轴顺时针旋转φ⾓,则Z轴垂直指向ZW。4.旋转——绕X轴逆时针旋转θ,则Z轴指向原点0。5.对称——做YOZ平⾯的对称变换使右⼿系变成左⼿系。从坐标变换的⾓度来说,透视投影⽣成的过程就是把点在观察坐标系中的坐标变换到由透视平⾯决定的平⾯坐标系中的过程设:F为透视平⾯与坐标系原点的距离x*=F·x/z和y*=F·y/z2.投影图的消隐真实感图形在现实世界,当观察⼀个不透明的物体时,我们只能看到该物体上朝向我们视线⽅向的那部分表⾯,⽽其余的表⾯不可见。三维图形的表⽰⽅式线框图:图上的线条为形体的棱边消隐图:图上只保留了形体上看得见的部分。真实感图形:能够表现形体的光照效果线框图:在⽤户坐标系下定义的物体,经过空间转换、裁剪,投影到观察平⾯,再变换到视图区并显⽰出来的图形。物体的所有线条都被表⽰出来,物体的形状不清楚,不真实。消隐图:在线框图中消去图形中不可见部分,⽽只在图形中表现可见部分三维物体表⽰⽅式:边界表⽰法消除隐藏线算法基本求交运算1.两条直线相交(笛卡⼉坐标系表⽰)①已知直线⽅程求交点的坐标①已知直线⽅程求交点的坐标②已知直线上两点,求直线⽅程2.两线段相交(参数⽅程表⽰)3.直线与异⾯相交凸多⾯体表⾯外法线与可见性的关系外法线:由物体内部指向外部空间的法线外法线与可见性的关系∵经过投影变换后在V⾯输出正投影图∴V平⾯是投影⾯,投影线//Y轴∵外法线与Y轴的夹⾓β反映了外法线与视轴(投影线)的夹⾓∴根据β值判断该外法线代表平⾯的可见性平⾯外法线⽅程与夹⾓β的计算1.平⾯外法线2.平⾯外法线与Y轴的夹⾓外法线与y轴夹⾓的正负决定可见性,⽽外法线的求法E与两边的叉积有关,所以两边的⽅向(顺序)⾮常重要在向V(XOZ)⾯投影时,β与可见性有关;在向H(XOY)⾯投影时,γ与可见性有关;在向W(YOZ)⾯投影时,α与可见性有关。利⽤物体外法线消去单个凸⾯体隐藏线的⽅法1.单链三表结构:整个数据结构的形式是由三个数据表组成,包括⾯表、环表、顶点表。①⾯表:⼆维数组存放⼀个⾯的信息,两个地址指针分别指出该⾯的⾯环在环表中的起始和终⽌位置。②环表:⼀维数组,对应于⾯表中的次序,存放每个⾯的⾯环。③顶点表:三维数组(四维齐次坐标),存放顶点坐标。2.绘图步骤①按照三表结构的形式建⽴描述⽴体模型的顶点表、环表和⾯表;②根据要⽣成⽴体图形的种类(正等轴测投影),采⽤相应变换矩阵对⽴体的顶点进⾏坐标变换;③按照⾯表中的指⽰地址从相应的环表中取出顶点序号,利⽤变换后的顶点坐标对⽴体的⾯逐⼀计算出每个⾯的E值,根据E的正负判别⾯的可见性;④对于可见⾯,按照该⾯所对应的环表连点绘出多边形的边框。平⾯体的消隐算法1.排斥试验∵只有上下、前后、左右发⽣重叠的⽴体才会互相遮挡∴将物体放⼊⼀个“最⼩盒⼦”中,⽤六个参数定义最⼩盒⼦:Xmax,Xmin,Ymax,Ymin,Zmax,Zmin如果两个“最⼩盒⼦”不相交,那两个物体肯定不相交。2.包含性试验线段如不包含在该平⾯图形内,则该线段不可能被遮住,也就不必进⾏深度⽐较。这个算法是稳定的。假如算出来后代数和不是0,⽽是0.1或0.2,那么基本上可以断定这个点在外部,它是由计算误差引起的,实际上是0。3.检验深度检验平⾯与直线之间的前后关系①粗率地检验(假设以y轴为观察⽅向)如果⼀个平⾯多边形的y的最⼤值⼩于⼀条直线中y的最⼩值,则平⾯完全在线段之后。②精确地检验4.平⾯体消隐算法基本思想及程序结构①计算各平⾯外法线⽅向的值EE>0,⾯向外,正⾯E<0,⾯向⾥,背⾯E=0,侧⾯②隐藏关系判断计算,计算各线段可见⼦段③求各⼦段的交集消除隐藏⾯算法Z缓冲区(Z-Buffer)算法Z缓冲区算法⽐较简单,但关键是它的消隐思路变了,借助外界的帮助来提⾼消隐算法的效率。能不能多花点内存,开⼀个和屏幕显⽰器(帧缓存,实际上就是⼀个1024×1024的数组,这个数组可以保留RGB的值)⼀样⼤的数组,来帮助记录像素的深度值。帧缓存区⽤来存放每个像素的颜⾊值,初值可以放背景颜⾊;Z缓冲区⽤来存放每个像素的深度值,初值存放Z的最⼩值,因为视点在Z的⽆穷⼤处。这样做就会带来⼀个很⼤的变化。假设现在有⼀个⽴⽅体,要把它画在屏幕上,⽴⽅体的6个⾯分别涂上不同的颜⾊,最终画在屏幕上应该是3个⾯可见3个⾯不可见。先拿其中的⼀个⾯把它投影到屏幕上,投影的结果是变成⼀个多边形,然后进⾏扫描转换,结果是知道这个多边形所覆盖的像素。假如这个⾯是红⾊的,那就把这个⾯所包含的像素统统置成红⾊。这样就画出第1个⾯。同时把这个⾯的每个像素所对应那个点的Z值记到Z缓冲区⾥。然后把⽴⽅体的第2个⾯拿来(假如是绿⾊),把它投影到屏幕上,再做扫描转换,转换后⼜得到⼀些新的像素,然后再对这些像素进⾏逐个处理。判断⼀下在原来这个位置是否画过红颜⾊,如果没画过,就放⼼地把绿颜⾊画上去;如果已经画过红颜⾊怎么办?就看谁在前⾯谁在后⾯。因为红颜⾊像素的那个点的深度值Z值是知道的,再算⼀下绿的这个⾯在这⼀点的Z值,然后这两个Z值进⾏⽐较,如果⽐红的Z值⼩,就说明在红的后⾯,就不画了;如果Z值⼤于红的,就画绿的,同时把Z-Buffer⾥的这点的Z值⽤绿颜⾊的Z值替换。也就是说,Z缓冲区⾥的Z值总是保留这个像素所对应空间点的最⼤Z值。接着再画第3个⾯、第4个⾯等,最后就得到结果了Z-Buffer算法⽐较简单,也很直观,代价就是要开这个Z缓冲区。在像素级上以近物取代远物,形体在屏幕上的出现顺序是⽆关紧要的。改进算法:⽤⼀个深度缓存变量zb,取代与图像⼤⼩相等的缓存数组ZBLesson6曲线和曲⾯1.基本概念1.⾃由曲线和⾃由曲⾯形状⽐较复杂,不能⽤简单⽅程描述的曲线/⾯。2.由离散点绘制两类图形由实验、观测、数值计算获得的数据是离散的,根据这些有序点列构造出⼀条光滑曲线,以直观地反映出实验特性、变化规律和趋势等。分为两类:1.数据较精确,误差⼩⾄可忽略不计。可绘制⼀条光滑曲线,使其通过全部数据点(型值点)。包括:①曲线/⾯拟和:⽤⼀组型值点来指定曲线/⾯的形状时,形状完全通过给定的型值点列。②曲线/⾯插值:给定型值点之间曲线/⾯上的点2.数据有显著误差,个别点误差较⼤不宜使所绘的曲线/⾯通过全部数据点(型值点)。①曲线/⾯逼近:⽤⼀组数据点来指定曲线/⾯的形状时,形状不必通过数据点列,使曲线/⾯上的点与数据点的平均距离最⼩。②曲线/⾯逼近:⽤⼀组数据点来指定曲线/⾯的形状时,形状不必通过数据点列。将连接数据点的直线序列称为特征多边形。3.参数⽅程三维空间曲线上的点:p(t)=(x(t),y(t),z(t))三维空间曲⾯上的点:p(u,w)=(x(u,w),y(u,w),z(u,w))优点:①与坐标系的选取⽆关;②突出参数对因变量的影响;③不会出现斜率为⽆穷⼤的情况;④所产⽣的曲线/⾯有界限例如:直线段的参数⽅程:p(t)=p0+(p1-p0)t=(1-t)p0+tp1t∈[0,1]圆的参数⽅程:p(t)=(cost,sint)t∈[0,2Π]椭圆的参数⽅程:p(t)=(acost,bsint)t∈[0,2Π]4.参数曲线的表⽰形式切⽮量:求导f=[f1f2f3f4]为调和函数,表明⼀个点对整段曲线所起的作⽤。通过端点及其切⽮量产⽣整个t值范围内的其余各点列的坐标,并且只与参数t有关。便于通过修改边界条件来改变曲线的形状。Hermite参数曲线的零阶调和函数:t=0时,f1决定p(t)的值,此时f2=f3=f4=0,且f2=1-f1随着t从0→1,f1的作⽤减⼩到零,t=1时,f2=1Hermite参数曲线的⼀阶调和函数:t=0时,f’3决定p(t)的值,此时f’1=f’2=f’4=0随着t从0→1,f’3的作⽤减⼩到零,t=1时,f’4=15.曲线段的光滑连接由离散点列产⽣的曲线不仅要求两点之间的曲线段是光滑的,也要求两曲线段在连接点也是光滑的。q1(1)=q2(0),即q1(t)和q2(t)的端点重合于p,c0连续;q1(1)和q2(0)在p点处重合,且其在p点处的切⽮量⽅向相同,⼤⼩相等,则c1连续;q1(1)和q2(0)在p点c0,c1连续且其q’‘1(1)和q’'2(0)⼤⼩和⽅向均相同,则c2连续6.四点式曲线已知四个点p1、p2、p3、p4,具有连续的t值,且t1<t2<t3<t4,构造⼀条参数曲线,求它的⼏何形式。2.抛物样条曲线⽤抛物线作为基本曲线来拟合给定离散点所⽣成的曲线。抛物线调配曲线,计算⽅法简单,后⾯的计算不影响前⾯结果,节点处c1连续,c2不连续,在精度要求不⾼的情况下常被选⽤。1.由任意3点定义的抛物线绘制抛物线调和曲线⼀次贝塞尔表达式(2)⼆次贝塞尔曲线表达式(3)t=0时,过p1点且与p1p2相切;t=1时,过p3点且与p2p3相切2.过抛物线上3点的曲线段3.抛物线调配曲线的计算公式设有离散点列pi(i=1,2,……,m),⽤过3点作抛物线的⽅法可作m-2条抛物线段4.端点讨论pi+1(t)前后⽤4个已知点,只能作出m-3段曲线,⾸尾两段未包括在内。解决⽅法:补点p0和pm+1①已知两端点的切⽮量p’1和p’m∵p’1=p2–p0∴p0=p2–p’1∵p’m=pm+1–pm-1∴pm+1=p’m+pm-1②⾃由端条件使p0与p1,pm+1与pm重合即可。p0=p1,pm+1=pm③形成封闭曲线令p0=pm,pm+1=p1∵多⼀段pmp1∴pm+2=p2voidparspl(intp[][2],intn,intk,inte){intx,y,i,j,m;floatt1,t2,t3,t,a,b,c,d;if(e==1){m=n;p[0][0]=p[1][0];p[0][1]=p[1][1];p[n+1][0]=p[n][0];p[n+1][1]=p[n][1];}else{m=n+1;p[0][0]=p[n][0];p[0][

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论