Ktl-icon-tai-lieu

đường cong bezier

Được đăng lên bởi Sky Love
Số trang: 5 trang   |   Lượt xem: 562 lần   |   Lượt tải: 0 lần
%ve duong cong bezier 4 dinh dieu khien
clear all
clc
V0=[0 0 0];
V1=[10 40 0];
V2=[40 60 0];
V3=[60 30 0];
R=[V0;V1;V2;V3]; % tinh vecto dinh dieu khien
M=[1 0 0 0;-3 3 0 0;3 -6 3 0;-1 3 -3 1]; % ma tran he so Bezier
syms u % khai bao bien u
U=[1 u u^2 u^3]; % tinh vecto co so
r=U*M*R; % tinh duong cong bezier
x=r(1) % gan gia tri cot 1 cua r cho x
y=r(2) % gan gia tri cot 2 cua r cho y
i=0;
for u=0:0.01:1 % u chay voi buoc nhay la 0.01
i=i+1; % dem so lan lap
X(i)=eval(x); % ung voi moi gia tri cua i the cac gia tri u tuong ung và tinh gia tri x
Y(i)=eval(y); % ung voi moi gia tri cua i the cac gia tri u tuong ung và tinh gia tri y
end
plot(X,Y) % ve do thi
line(R(:,1),R(:,2)) % ve duong thang noi cac dinh dieu khien
grid on % tao luoi
hold on % luu lai do thi
xlabel('truc x'); % dat ten truc
ylabel('truc y'); % dat ten truc
title('duong cong bezier') % dat ten tieu de

%ve duong cong bezier 7 dinh dieu khien
clear all
clc
V10=[0 0 0];
V11=[10 40 0];
V12=[40 60 0];
V13=[60 30 0];
R1=[V10;V11;V12;V13];% tinh vecto dinh dieu khien
M=[1 0 0 0;-3 3 0 0;3 -6 3 0;-1 3 -3 1];% ma tran he so Bezier
syms u1 % khai bao bien u1
U1=[1 u1 u1^2 u1^3]; % tinh vecto co so
r1=U1*M*R1; % tinh duong cong bezier
x1=r1(1) % gan gia tri cot 1 cua r1 cho x1
y1=r1(2) % gan gia tri cot 2 cua r1 cho y1
i1=0;
for u1=0:0.01:1 % u1 chay voi buoc nhay la 0.01
i1=i1+1; % dem so lan lap
X1(i1)=eval(x1); % tinh gia tri x1 ung voi moi gia tri cua i1
Y1(i1)=eval(y1); % tinh gia tri y1 ung voi moi gia tri cua i1
end
V20=V13; % dieu kien diem dau va diem cuoi trung nhau
V21=2*V13-V12; % dieu kien bang nhau cua 2 tiep tuyen
V22=[100 10 0];
V23=[120 60 0];
R2=[V20;V21;V22;V23];
M=[1 0 0 0;-3 3 0 0;3 -6 3 0;-1 3 -3 1];

syms u2
U2=[1 u2 u2^2 u2^3];
r2=U2*M*R2;
x2=r2(1)
y2=r2(2)
i2=0;
for u2=0:0.01:1
i2=i2+1;
X2(i2)=eval(x2);
Y2(i2)=eval(y2);
end
hold on % luu lai do thi
plot(X1,Y1) % ve do thi
line(R1(:,1),R1(:,2)) % ve duong thang noi cac dinh dieu khien
plot(X2,Y2) % ve do thi
line(R2(:,1),R2(:,2)) % ve duong thang noi cac dinh dieu khien
grid on % tao luoi
xlabel('truc x'); % dat ten truc
ylabel('truc y'); % dat ten truc
title('duong cong bezier 7 dinh') % dat ten tieu de

...
%ve duong cong bezier 4 dinh dieu khien
clear all
clc
V0=[0 0 0];
V1=[10 40 0];
V2=[40 60 0];
V3=[60 30 0];
R=[V0;V1;V2;V3]; % tinh vecto dinh dieu khien
M=[1 0 0 0;-3 3 0 0;3 -6 3 0;-1 3 -3 1]; % ma tran he so Bezier
syms u % khai bao bien u
U=[1 u u^2 u^3]; % tinh vecto co so
r=U*M*R; % tinh duong cong bezier
x=r(1) % gan gia tri cot 1 cua r cho x
y=r(2) % gan gia tri cot 2 cua r cho y
i=0;
for u=0:0.01:1 % u chay voi buoc nhay la 0.01
i=i+1; % dem so lan lap
X(i)=eval(x); % ung voi moi gia tri cua i the cac gia tri u tuong ung và tinh gia tri x
Y(i)=eval(y); % ung voi moi gia tri cua i the cac gia tri u tuong ung và tinh gia tri y
end
plot(X,Y) % ve do thi
line(R(:,1),R(:,2)) % ve duong thang noi cac dinh dieu khien
grid on % tao luoi
hold on % luu lai do thi
xlabel('truc x'); % dat ten truc
ylabel('truc y'); % dat ten truc
title('duong cong bezier') % dat ten tieu de
đường cong bezier - Trang 2
đường cong bezier - Người đăng: Sky Love
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
5 Vietnamese
đường cong bezier 9 10 723