[Back to TURTLE SWAG index] [Back to Main SWAG index] [Original]
(* ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Programated by Vladimir Zahoransky ³
³ Vladko software ³
³ Contact : zahoran@cezap.ii.fmph.uniba.sk ³
³ Program tema : squard, circle Nx in norekusion version ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ *)
{ This program modify rekpic11.pas. This program draw squard in circle ...
This just modify all parametres :
Pt [-s/2 ,-s/2] (cotg(45)=1)
ZmenSmer=0 (90- 90*1 = 0) (See rekpic15.pas)
diagonal of squard (use Pytagoras sentence) s = sqrt(2)*s
s for circle = s*sin(pi/alfa)
}
uses okor;
Const Alfa=60;
type Mykor=object(kor)
Procedure Config(s:real);
Procedure Poly(n:integer;s,u:real);
Procedure Squard(s:real);
Procedure Circle(n:integer;s:real);
Procedure Draw(s:real;p:integer);
End;
var
k:Mykor;
poc:integer;
Procedure Mykor.Config(s:real);
Begin
ph;
zmenxy(-s/2,-s/2);
zmensmer(0);
pd;
End;
Procedure Mykor.poly(n:integer;s,u:real);
Begin
While n>0 do
Begin
dopredu(s);
vpravo(u);
dec(n);
End;
End;
Procedure Mykor.Squard(s:real);
Begin
poly(4,s,360/4);
End;
Procedure Mykor.Circle(n:integer;s:real);
Begin
vlavo(45-180/n);
poly(n,s,360/n);
End;
Procedure Mykor.draw(s:real;p:integer);
Begin
While p>0 do
Begin
inc(poc);
Zmenfp(poc);
Config(s);
Squard(s);
s:=s*sqrt(2);
Circle(Alfa,s*sin(pi/Alfa));
dec(p);
End;
End;
begin
poc:=0;
With k do Begin
Init(0,0,0);
Draw(100,4);
CakajKlaves;
Koniec;
End;
End.
[Back to TURTLE SWAG index] [Back to Main SWAG index] [Original]