Курсовая работа: Простая замкнутая ломаная кривая

a1:=2*(B.x-C.x)+2*k*(B.y-C.y);

b1:=2*b2*(B.y-C.y)+(sqr(C.x)-sqr(B.x))+(sqr(C.y)-sqr(B.y));

c1:=sqr(B.x-T.x)+sqr(B.y-T.y)-sqr(C.x-T.x)-sqr(C.y-T.y);

O.x:=(-c1-b1)/a1;

O.y:=k*O.x+b2;

end;

End;

{Функция истина если три точки лежат на одной прямой}

FUNCTION S_3(T,B,C:tochka):Boolean;

{Функция истина если точка Т принадлежит отрезку ВС}

Function Prin(T,B,C:tochka):boolean;

Begin

If S_3(T,B,C) then

if (((B.x<=T.x)and(T.x<=C.x)) or ((C.x<=T.x)and(T.x<=B.x))) and

(((B.y<=T.y)and(T.y<=C.y)) or ((C.y<=T.y)and(T.y<=B.y)))

then Prin:=true

else Prin:=false

elsePrin:=false

End;

{Возвращает расстояние между точкой и отрезком ВС}

Function R_TO(T,B,C:tochka):real;

Var T1:tochka;

Begin

Osn(T,B,C,T1);

If prin(T1,B,C) then R_TO:=R_tt(T1,T)

else if R_tt(T,B)<=R_tt(T,C) then R_TO:=R_tt(T,B)

else R_TO:=R_tt(T,C)

End;

{Строит ломанную через точки с номера n1 до n2}

К-во Просмотров: 472
Бесплатно скачать Курсовая работа: Простая замкнутая ломаная кривая