Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
отчет №8 читерский.docx
Скачиваний:
5
Добавлен:
29.05.2017
Размер:
221.84 Кб
Скачать

При запуске получаем следующее изображение:

Проекции на оси:

XY ZX

ZY

Таблица значений:

N

X

Y

Z

X

Y

Z

0

0

0

0

-

-

-

1

0,904

3,053

-72,930

0,174

0,612

0,030

2

4,915

8,574

-128,513

0,449

1,012

0,092

3

14,193

17,852

-199,307

0,869

1,465

0,208

4

28,625

26,523

-260,016

1,306

1,764

0,358

5

45,079

32,512

-306,849

1,679

1,932

0,512

6

72,275

37,798

-360,070

2,124

2,069

0,756

7

91,572

37,967

-384,331

2,335

2,105

0,926

3-ий способ:

%Исходные данные

L = [0, 73, 129, 201, 264, 314, 374, 405];

a = [0, 5, 9, 12, 19, 22, 33, 44];

A = [180, 147, 141, 129, 113, 107, 95, 86];

%Вычисление координат точек

s=0;

for t=1:8

s=s+L(1,t);

end

X=zeros(1,s); Y=zeros(1,s); Z=zeros(1,s);

Arad=zeros(1,8); Arad(1,:)=(A(1,:)*pi)/180;

arad=zeros(1,8); arad(1,:)=(a(1,:)*pi)/180;

count=2;

X(1)=0; Y(1)=0; Z(1)=0;

for n=1:7

k=1;

for g=1:L(1,n+1)

alpha=arad(1,n)+((arad(1,n+1)-arad(1,n))/L(1,n+1))*k;

Az=Arad(1,n)+((Arad(1,n+1)-Arad(1,n))/L(1,n+1))*k;

X(count)=sin(Az)*sin(alpha)*L(1,n+1)+X(count-1);

Y(count)=-cos(Az)*sin(alpha)*L(1,n+1)+Y(count-1);

Z(count)=-cos(alpha)*L(1,n+1)+Z(count-1);

count=count+1;

k=k+1;

end

end

%Прорисовка графика

p=plot3(X(1,:),Y(1,:),Z(1,:),'Color', 'g', 'LineWidth' ,3);

hold on;

xlabel('X,м'); ylabel('Y,м'); zlabel('Z,м');

grid on;

s1=num2str(X(s)); s2=num2str(Y(s)); s3=num2str(Z(s));

text(X(1),Y(1),Z(1),'Устье','Color','m', 'Fontsize', 11 );

text(X(s),Y(s),Z(s),'Забой','Color','m', 'Fontsize', 11 );

%Погрешности

Xi=zeros(1,s); Yi=zeros(1,s); Zi=zeros(1,s);

Xi(1)=0; Yi(1)=0; Zi(1)=0;

Ai(1,:)=A(1,:)+0.1; ai(1,:)=a(1,:)+0.5;

Aradi=zeros(1,8); Aradi(1,:)=(Ai(1,:)*pi)/180;

aradi=zeros(1,8); aradi(1,:)=(ai(1,:)*pi)/180;

count1=2;

for n=1:7

l=1;

for g=1:L(1,n+1)

dalpha1=aradi(1,n)+((aradi(1,n+1)-aradi(1,n))/L(1,n+1))*l;

dAz1=Aradi(1,n)+((Aradi(1,n+1)-Aradi(1,n))/L(1,n+1))*l;

Xi(count1)=sin(dAz1)*sin(dalpha1)*L(1,n+1)+Xi(count1-1);

Yi(count1)=-cos(dAz1)*sin(dalpha1)*L(1,n+1)+Yi(count1-1);

Zi(count1)=-cos(dalpha1)*L(1,n+1)+Zi(count1-1);

count1=count1+1;

l=l+1;

end

end

plot3(Xi(1,:),Yi(1,:),Zi(1,:),'Color','r');

hold on

Xm=zeros(1,s); Ym=zeros(1,s); Zm=zeros(1,s);

Xm(1)=0; Ym(1)=0; Zm(1)=0;

Am(1,:)=A(1,:)-0.1; am(1,:)=a(1,:)-0.5;

Aradm=zeros(1,8); Aradm(1,:)=(Am(1,:)*pi)/180;

aradm=zeros(1,8); aradm(1,:)=(am(1,:)*pi)/180;

count2=2;

for n=1:7

k=1;

for g=1:L(1,n+1)

dalpha2=aradm(1,n)+((aradm(1,n+1)-aradm(1,n))/L(1,n+1))*k;

dAz2=Aradm(1,n)+((Aradm(1,n+1)-Aradm(1,n))/L(1,n+1))*k;

Xm(count2)=sin(dAz2)*sin(dalpha2)*L(1,n+1)+Xm(count2-1);

Ym(count2)=-cos(dAz2)*sin(dalpha2)*L(1,n+1)+Ym(count2-1);

Zm(count2)=-cos(dalpha2)*L(1,n+1)+Zm(count2-1);

count2=count2+1;

k=k+1;

end

end

plot3(Xm(1,:),Ym(1,:),Zm(1,:),'Color','r')