Analytická geometria v rovine
Delphi & Pascal (česká wiki)
Kategorija: Zadaňa zos Pascalu
Program: Angeom02.pas
Program: Angeom02.pas
Programová jednotka (unit) AnGeom02 - algebraická geometria obsahuje funkcie pre zobrazenie a vypocet roznych grafických primitív ako bod, úsečka, priamka.
{ 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.