وبلاگ تخصصی متلب و نقشه برداری

clc
clear all
format long g
%barname gizman%
xa=input('xa=');ya=input('ya=');
xb=input('xb=');yb=input('yb=');
dxab=xb-xa;dyab=yb-ya;
vab=atand(abs(dxab/dyab));
if dxab>0&dyab>0
    gab=vab
elseif dxab>0&dyab<0
    gab=180-vab
elseif dxab<0&dyab<0
    gab=180+vab
elseif dxab<0&dyab>0
    gab=360-vab
end
if gab<=180
    gba=360-(180-gab)
elseif gab>180
    gba=180-(360-gab)
end

clc
clear all
format long g
g=input('g');
n=input('n');
x=input('x');
y=input('y');
for i=1:n
    z(i)=input('z');
    l(i)=input('l');
    if (g(i)-z(i))>180;
    g(i+1)=(g(i)-z(i))-180;
    elseif (g(i)-z(i))<180;
    g(i+1)=(g(i)-z(i))+180
    end
end
for i=1:n
dx(i)=(l(i)*sind(g(i)))
dy(i)=(l(i)*cosd(g(i)))
end
for i=1:n
    x(i+1)=x(i)+dx(i)
    y(i+1)=y(i)+dx(i)
end

clc
clear all
format long g
h=input('hi');
L=input('L');
n=input('n');
for i=1:n;
    bs(i)=input('bs');
    fs(i)=input('fs');
    dh(i)=bs(i)-fs(i);
    h(i+1)=dh(i)+h(i);
end
f=sum(bs)-sum(fs);
e=12*sqrt(L);
if f<=e;
    c=-f/n;
    for i=1:n
        hc(i)=h(i)+i*c
    end
end

برنامه زیر را در متلب کپی کنید

clc
clear all
format long g
%barname taghato va tarfi%
%noghat az chap be rast hastand%
q=input('baraye taghato 1 & baraye tarfi 2 =');
w=input('baraye darage 1 & baraye gerad 2 =');
if q==1;
    xa=input('xa=');ya=input('ya=');
    xb=input('xb=');yb=input('yb=');
    al=input('alfa=');be=input('beta=');
    if w==1;
        alfa=al;
        beta=be;
    elseif w==2;
        alfa=(al*180)/200;
        beta=(be*180)/200;
    end;
    omega=180-(alfa+beta);
    dxab=xb-xa;dyab=yb-ya;
    lab=sqrt(dxab^2+dyab^2);vab=atand(abs(dxab/dyab));
    if dxab>=0&dyab>=0;
        gab=vab;
    elseif dxab>=0&dyab<=0;
        gab=180-vab;
    elseif dxab<=0&dyab<=0;
        gab=180+vab;
    elseif dxab<=0^dyab>=0;
        gab=360-vab;
    end;
    gam=gab+alfa;lam=(lab*sind(beta))/sind(omega);
    xm=xa+(lam*sind(gam));
    ym=ya+(lam*cosd(gam));
    m=[xm ym]
elseif q==2;
    xa=input('xa=');ya=input('ya=');
    xb=input('xb=');yb=input('yb=');
    xc=input('xc=');yc=input('yc=');
    al=input('alfa=');be=input('beta=');
    if w==1;
        alfa=al;
        beta=be;
    elseif w==2;
        alfa=(al*180)/200;
        beta=(be*180)/200;
    end;
    xn=(xa*cotd(alfa)+xc*cotd(beta)+(ya-yc))/(cotd(alfa)+cotd(beta));
    yn=(ya*cotd(alfa)+yc*cotd(beta)+(xc-xa))/(cotd(alfa)+cotd(beta));
    dxbn=xn-xb;dybn=yn-yb;
    vbn=atand(abs(dxbn/dybn));
    if dxbn>=0&dybn>=0;
    gbn=vbn;
    elseif dxbn>=0&dybn<=0;
    gbn=180-vbn;
    elseif dxbn<=0&dybn<=0;
    gbn=180+vbn;
    elseif dxbn<=0&dybn>=0;
    gbn=360-vbn;
    end;
    dxab=xb-xa;dyab=yb-ya;
    vab=atand(abs(dxab/dyab));
    if dxab>=0&dyab>=0;
    gab=vab;
    elseif dxab>=0&dyab<=0;
    gab=180-vab;
    elseif dxab<=0&dyab<=0;
    gab=180+vba;
    elseif dxab<=0&dyab>=0;
    gab=360-vab;
    end;
    if
    b1=gba-gbn;a=180-(b1+alfa);
    dxab=xb-xa;dyab=yb-ya;
    lab=sqrt(dxab^2+dyab^2);
    if gba>=180;
    gab=180-(360-gba);
    elseif gba<180;
    gab=360-(180-gba);
    end;
    gam=gab+a;lam=(lab*sind(b1))/sind(alfa);
    xm=xa+(lam*sind(gam));
    ym=ya+(lam*cosd(gam));
    m=[xm ym]
end

%tabdile motavasset be lahzei(A.T to I.T)%

clc

clear all

format long g

AT=input('AT ra vared konid [x;y;z]=');

xp=input('xp ra vared konid=');

yp=input('yp ra vared konid=');

R1=[1 0 0;0 cos(yp) sin(yp);0 -sin(yp) cos(yp)];

R2=[cos(xp) 0 -sin(xp);0 1 0;sin(xp) 0 cos(xp)];

IT=R1*R2*AT

%tabdile lahzei be motavasset(I.T to A.T)%

clc

clear all

format long g

IT=input('IT ra vared konid [x;y;z]=');

xp=input('xp ra vared konid=');

yp=input('yp ra vared konid=');

R1=[1 0 0;0 cos(-yp) sin(-yp);0 -sin(-yp) cos(-yp)];

R2=[cos(-xp) 0 -sin(-xp);0 1 0;sin(-xp) 0 cos(-xp)];

AT=R2*R1*IT