全文预览

贝切尔曲线拼接代码-MATLAB

上传者:qnrdwb |  格式:doc  |  页数:3 |  大小:0KB

文档介绍
s=BP1(4,:)-BP2(1,:);Р%BP3=BP2+trans;РBP3(:,1)=BP2(:,1)+trans(:,1);РBP3(:,2)=BP2(:,2)+trans(:,2);РPoint3(:,1)=Point2(:,1)+trans(:,1);РPoint3(:,2)=Point2(:,2)+trans(:,2);Рsubplot(2,1,2);Рhold on;Рscatter(Point1(:,1),Point1(:,2),'.g');Рscatter(Point3(:,1),Point3(:,2),'.b');Р%绘制控制线Рfor i=1:3Р CP1=[BP1(i,:);BP1(i+1,:)];Р CP2=[BP3(i,:);BP3(i+1,:)];Р plot(CP1(:,1),CP1(:,2),'--r','LineWidth',2);Р plot(CP2(:,1),CP2(:,2),'--r','LineWidth',2);РendРhold off;Р%title('连接后的Bezier曲线');РendР%GetBezier.m文件,这是计算贝切尔曲线点坐标函数Рfunction [Point]=GetBezier(t,P)Р%t为参数矩阵,共一列。Р%P为控制点坐标矩阵,每一行为一个点的x,y,坐标Р[row,column]=size(t);РT(:,4)=ones(row,column);Рfor i=4:-1:2Р T(:,i-1)=T(:,i).*t;РendРM=[Р -1,3,-3,1;Р 3,-6,3,0;Р -3,3,0,0;Р 1,0,0,0;Р ];РPoint=T*M*P;РendР%bezier_callback.m文件。Рfunction bezier_callback()Рmainfunction;Рend

收藏

分享

举报
下载此文档