[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 : General version of n-angles - norekusion ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ *)
{
Well, if you will study rekpic21.pas and rekpic19.pas then is easy to
make it general.
The angle is 360/Level
Item to case : 1 and 2..L
And angle for rotation is : 90-360/Level
(Angle is : 90 - angle of angle in peak of n-angle)
}
uses oKor, oStack_b;
Const Level=5;
type MyKor=object(Kor)
Procedure N_angle(n:integer; a:real);
End;
procedure MyKor.N_angle(n:integer; a:real);
var v:integer;
s:Stack;
begin
with s do
begin
init;
push(1,n,a);
while not empty do
begin
pop(v,n,a);
case v of
1: if n=0 then
else
begin
Dopredu(a); Vlavo(360/Level);
push(2,n,a);
push(1,n-1,a/3);
end;
2..Level: begin
Dopredu(a); Vlavo(360/Level);
if v<Level then push(v+1,n,a);
push(1,n-1,a/3);
end;
end {case}
end {while}
end {with}
end;
var k:MyKor;
Begin
With k do
Begin
Init(200,-200,90-360/Level);
N_angle(4,250);
PresunXY(-300,230); Pis('N-angle level 4 - Norekusion');
CakajKlaves;
Koniec;
End
End.
[Back to TURTLE SWAG index] [Back to Main SWAG index] [Original]