版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
B样条曲线的绘制内容大纲1B样条曲线简介2
B样条曲线定义3均匀周期二次B样条曲线4均匀周期三次B样条曲线
1B样条曲线简介10次Bezier曲线九段二次Bezier曲线
1B样条曲线简介由Gordon和Riesenfeld在1972年提出。B样条是分段曲线,每段参数t的区间是[0,1]。保留Bezier曲线优点,克服了Bezier曲线的弱点。Pi(xi,yi),i=0,1,…,n是控制曲线形状的n+1个控制点Ni,k(t)(i=0,1,…,n)称为k-1次B样条基函数,是递推公式
2B样条曲线定义
(tk-1≤t≤tn+1)注意:ti取值,T=[t0,t1,…,tn+k]是k次B样条函数的节点矢量,节点矢量值不同,就是不同类型的B样条曲线。
(tk-1≤t≤tn+1)i=1,先计算N1,1(t),再计算N1,2(t),…最后计算N1,k(t)
2B样条曲线定义i=0,先计算N0,1(t),再计算N0,2(t),…最后计算N0,k(t)……
(tk-1≤t≤tn+1)
3均匀周期二次B样条曲线均匀性:节点矢量ti=i(i=0,1,2,…,n+k)周期性:每段基函数一样二次B样条曲线表达式:P(t)=Pi(1-t)2/2+Pi+1(-
t2+t+1/2)+Pi+2t2/20
<=t<=1,i=0,1,2,……n-2当t=0时,P(0)=0.5P0+0.5P1二次B样条曲线经过控制多边形各边的中点i=0P(t)=P0(1-t)2/2+P1(-
t2+t+1/2)+P2t2/2P0P1P2当t=1时,P(1)=0.5P1+0.5P2
3均匀周期二次B样条曲线
每条边是二次B样条曲线的切线i=0:P(t)=P0(1-t)2/2+P1(-
t2+t+1/2)+P2t2/2(0≤t≤1)P0P1P2P3P4P1P2P2P3五个控制点i=1:P(t)=P1(1-t)2/2+P2(-
t2+t+1/2)+P3t2/2(0≤t≤1)i=2:P(t)=P2(1-t)2/2+P3(-
t2+t+1/2)+P4t2/2(0≤t≤1)
3均匀周期二次B样条曲线
01234
3均匀周期二次B样条曲线
5012345678910B样条可扩充性Bezier
B样条可局部修改012345678910012345678910
3均匀周期二次B样条曲线
voidBSpline2(CDC*pDC,intx[],inty[],intn,floatdt,COLORREFcolor){intx1,y1,x2,y2;floatn0,n1,n2;
x1=(x[0]+x[1])*0.5,y1=(y[0]+y[1])*0.5;for(inti=0;i<n-1;i++)
for(floatt=dt;t<1.0001;t=t+0.01)
{n0=(1-t)*(1-t)*0.5;
n1=(-2*t*t+2*t+1)*0.5;n2=t*t*0.5;//计算基函数
x2=x[i]*n0+x[i+1]*n1+x[i+2]*n2;
y2=y[i]*n0+y[i+1]*n1+y[i+2]*n2;//计算曲线上点坐标 Line_DDA(pDC,x1,y1,x2,y2,color);
x1=x2,y1=y2;
}}
3均匀周期二次B样条曲线
P0P1P2P3P(t)=Pi(-t3+3t2-3t+1)/6
+Pi+1(3t3-6t2+4)/6
+Pi+2(-3t3+3t2-3t+1)/6
+Pi+3t3/6
0
<=t<=1,i=0,1,2,……n-3
4均匀周期三次B样条曲线
三次B样条曲线表达式:
4均匀周期三次B样条曲线
voidBSpline3(CDC*pDC,intx[],inty[],intn,floatdt,COLORREFcolor){intx1,y1,x2,y2;floatn0,n1,n2,n3;
x1=(x[0]+x[2])*0.5/3+2*x[1]/3;y1=(y[0]+y[2])*0.5/3+2*y[1]/3;
for(inti=0;i<n-2;i++)for(floatt=dt;t<1.0001;t=t+dt) {n0=(-t*t*t+3*t*t-3*t+1)/6; n1=(3*t*t*t-6*t*t+4)/6; n2=(-3*t*t*t+3*t*t+3*t+1)/6; n3=t*t*t/6;//计算基函数 x2=x[i]*n0+x[i+1]*n1+x[i+2]*n2+x[i+3]*n3; y2=y[i]*n0+y[i+1]*n1+y[i+2]*n2+y[i+3]*n3;//计算曲线上点坐标 Line_DDA(pDC,x1,y1,x2,y2,color); x1=x2,y1=y2; }}【例1】已知控
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026安徽黄山市建设投资集团有限公司招聘13人笔试题库含答案详解(B卷)
- 2026湖北恩施州咸丰县残疾人联合会公益性岗位招聘1人考前冲刺试卷附完整答案详解(全优)
- 南充市嘉陵区2027届数学六年级第一学期期末检测模拟试题含解析
- 江苏省扬州市江都区仙女镇中心小学2027届六年级数学第一学期期末学业质量监测试题含解析
- 岳池县2027届四年级数学第一学期期末统考试题含解析
- 2027届建水县数学六上期末达标检测试题含解析
- 江苏省射阳县人民路小学2027届六年级数学第一学期期末考试模拟试题含解析
- 2027届剑川县数学四上期末预测试题含解析
- 校园环境保护管理体系与保证措施
- 威尼斯的小艇第二课时教案设计教案教学设计
- 2027创新设计一轮生物第14讲 减数分裂和受精作用
- 2026年宁夏惠安市政产业有限公司公开招聘工作人员考试参考题库及答案详解
- 2026上海闵行公安机关专业特保招聘602人笔试模拟试题及答案详解
- 2026河南南阳南召县招聘巡防队员招聘60人笔试模拟试题及答案详解
- 2026年江苏省初级注册安全工程师考试真题及答案
- 2025版老年晚期肺癌治疗专家共识解读课件
- 2026贵州六盘水市消防救援支队面向社会招录政府专职消防员22人笔试参考题库及答案详解
- 小儿支气管哮喘持续状态护理查房
- 临床腹腔内压力经膀胱间接测量技术解读及实践经验共享
- SLT 336-2025水土保持工程全套表格
- 医院合法性审查工作制度
评论
0/150
提交评论