Linux server1.hosting4iran.com 4.18.0-553.89.1.el8_10.x86_64 #1 SMP Mon Dec 8 03:53:08 EST 2025 x86_64
LiteSpeed
Server IP : 185.208.174.156 & Your IP : 216.73.216.218
Domains : 282 Domain
User : satitravel
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
graphviz /
lefty /
Delete
Unzip
Name
Size
Permission
Date
Action
box.lefty
3.53
KB
-rw-r--r--
2024-04-06 12:47
def.lefty
459
B
-rw-r--r--
2024-04-06 12:47
dotty.lefty
22.5
KB
-rw-r--r--
2024-04-06 12:47
dotty_draw.lefty
19.48
KB
-rw-r--r--
2024-04-06 12:47
dotty_edit.lefty
17.62
KB
-rw-r--r--
2024-04-06 12:47
dotty_layout.lefty
14.23
KB
-rw-r--r--
2024-04-06 12:47
dotty_ui.lefty
13.88
KB
-rw-r--r--
2024-04-06 12:47
fractal.lefty
2.65
KB
-rw-r--r--
2024-04-06 12:47
fractal2.lefty
5.62
KB
-rw-r--r--
2024-04-06 12:47
lefty.psp
2.37
KB
-rw-r--r--
2024-04-06 12:47
slides.lefty
3.12
KB
-rw-r--r--
2024-04-06 12:47
tree.lefty
4.9
KB
-rw-r--r--
2024-04-06 12:47
Save
Rename
load ('def.lefty'); definit (); # # initialize window data # canvas = defcanvas; wrect = [0 = ['x' = 0; 'y' = 0;]; 1 = ['x' = 400; 'y' = 500;];]; setwidgetattr (canvas, ['window' = wrect;]); sq = function (x) { return x * x; }; # data structures # length = 300; center = ['x' = 200; 'y' = 250;]; radius = 2 * length / sqrt (12); fractalangle = 0; maxlevel = 2; # drawing functions # # draw a Koch curve (a ``snowflake'' fractal) # # start with a triangle and keep replacing edges # with the construct: _/\_ # until the recursion level reaches 'maxlevel' # fractal = function (level, length, angle) { local nlength, newpenpos; if (level >= maxlevel) { newpenpos.x = penpos.x + length * cos (angle); newpenpos.y = penpos.y + length * sin (angle); line (canvas, null, penpos, newpenpos, ['color' = 1;]); penpos = newpenpos; return; } nlength = length / 3; fractal (level + 1, nlength, angle); fractal (level + 1, nlength, angle + 60); fractal (level + 1, nlength, angle - 60); fractal (level + 1, nlength, angle); }; drawfractal = function () { clear (canvas); setpick (canvas, center, wrect); penpos = [ 'x' = center.x + cos (fractalangle + 210) * radius; 'y' = center.y + sin (fractalangle + 210) * radius; ]; fractal (0, length, fractalangle + 60); fractal (0, length, fractalangle - 60); fractal (0, length, fractalangle - 180); remove ('penpos'); }; # editing functions # # transform the fractal. # # map point 'prevpoint' to point 'currpoint' # with respect to the center of the fractal. # transformfractal = function (prevpoint, currpoint) { local prevtan, currtan, prevradius, currradius; prevtan = atan (prevpoint.y - center.y, prevpoint.x - center.x); currtan = atan (currpoint.y - center.y, currpoint.x - center.x); fractalangle = fractalangle + (currtan - prevtan); prevradius = sqrt ( sq (prevpoint.y - center.y) + sq (prevpoint.x - center.x) ); currradius = sqrt ( sq (currpoint.y - center.y) + sq (currpoint.x - center.x) ); radius = radius / prevradius * currradius; length = radius / 2 * sqrt (12); }; # user interface functions # # bind changes to the fractal to user actions # leftup = function (data) { transformfractal (data.ppos, data.pos); drawfractal (); }; dops = function () { local s; s = ['x' = 8 * 300; 'y' = 10.5 * 300;]; canvas = createwidget (-1, ['type' = 'ps'; 'size' = s;]); setwidgetattr (canvas, ['window' = wrect;]); drawfractal (); destroywidget (canvas); canvas=defcanvas; }; transformfractal (['x' = 0; 'y' = 0;], ['x' = 0; 'y' = 0;]); drawfractal ();