Umístnení souboru www.TrSek.com/zadania/angeom/poilinp.pas
{ Testovaci program pre unit PoiLinp }
program Point_Line_OOP;

uses AnGeom02, PoiLinU, Graph, Crt;

var line1 : TLine;        { premena ktora uchovava priamku }
    bodA  : TPoint;        { premena ktora uchovava bod     }
    bod1,bod2 : TPoint;    { pomocne body pre definiciu priamky     }
    x,y : real;            { pomocne premene pre definiciu priamky  }
    vzd : real;            { premena v ktorej bude vzdialenost bodu }

begin
  WriteLn('Program pre Unit AnGeom02');
  WriteLn('Program zisti vzdialenost bodu od priamky.');
  WriteLn;

  Write('Zadaj x-suradnicu bodu a:'); ReadLn(x);
  Write('Zadaj y-suradnicu bodu a:'); ReadLn(y);
  { vytvorim bod A }
  bodA.Init(x,y,'bodA');

  { priamku budem definovat ako 2 body }
  Write('Zadaj x-suradnicu prveho bodu na priamke:'); ReadLn(x);
  Write('Zadaj y-suradnicu prveho bodu na priamke:'); ReadLn(y);
  { vytvorim bod prvy }
  bod1.Init(x,y,'bod1');

  { priamku budem definovat ako 2 body }
  Write('Zadaj x-suradnicu druheho bodu na priamke:'); ReadLn(x);
  Write('Zadaj y-suradnicu druheho bodu na priamke:'); ReadLn(y);
  { vytvorim bod druhy }
  bod2.Init(x,y,'bod2');

  { vytvorim priamku }
  line1.Init_PP(bod1,bod2,'Priamka');

  { vykreslim }
  SetGraphMode( GraphMode );
  GrAxis;

  { teraz to vsetko vykreslim }
  bodA.Draw(yellow,'X');
  bod1.Draw(green,'+');
  bod2.Draw(green,'+');
  line1.Draw(red);

  { teraz vypocitam vzdialenost bodu od priamky }
  vzd := Distance_LP( line1, bodA );

  TextColor( Red );
  OutTextXY(100,100, 'Distance_LP =' + fStrR(size));

  repeat until keypressed;        { pockame na stlacenie klavesy }
  RCM;                            { zatvorime graficky rezim     }
end.

Copyrigth by Zdeno Sekerak 2007, http://www.trsek.com