Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
55
Task/Julia-set/Delphi/julia-set.delphi
Normal file
55
Task/Julia-set/Delphi/julia-set.delphi
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
program Julia_set;
|
||||
|
||||
{$APPTYPE CONSOLE}
|
||||
|
||||
uses
|
||||
System.SysUtils,
|
||||
Winapi.Windows,
|
||||
Vcl.Graphics;
|
||||
|
||||
var
|
||||
Colors: array[0..255] of TColor;
|
||||
w, h, zoom, maxiter, moveX, moveY: Integer;
|
||||
cX, cY, zx, zy, tmp: Double;
|
||||
i: Integer;
|
||||
bitmap: TBitmap;
|
||||
x, y: Integer;
|
||||
|
||||
begin
|
||||
w := 800;
|
||||
h := 600;
|
||||
zoom := 1;
|
||||
maxiter := 255;
|
||||
moveX := 0;
|
||||
moveY := 0;
|
||||
cX := -0.7;
|
||||
cY := 0.27015;
|
||||
bitmap := TBitmap.Create();
|
||||
bitmap.SetSize(w, h);
|
||||
bitmap.Canvas.Brush.Color := clwhite;
|
||||
bitmap.Canvas.FillRect(bitmap.Canvas.ClipRect);
|
||||
|
||||
for i := 0 to 255 do
|
||||
Colors[i] := RGB((i shr 5) * 36, ((i shr 3) and 7) * 36, (i and 3) * 85);
|
||||
|
||||
for x := 0 to w - 1 do
|
||||
begin
|
||||
for y := 0 to h - 1 do
|
||||
begin
|
||||
zx := 1.5 * (x - w / 2) / (0.5 * zoom * w) + moveX;
|
||||
zy := 1.0 * (y - h / 2) / (0.5 * zoom * h) + moveY;
|
||||
i := maxiter;
|
||||
while (zx * zx + zy * zy < 4) and (i > 1) do
|
||||
begin
|
||||
tmp := zx * zx - zy * zy + cX;
|
||||
zy := 2.0 * zx * zy + cY;
|
||||
zx := tmp;
|
||||
i := i - 1;
|
||||
end;
|
||||
bitmap.Canvas.Pixels[x, y] := colors[i];
|
||||
end;
|
||||
end;
|
||||
|
||||
bitmap.SaveToFile('julia-set.bmp');
|
||||
bitmap.Free;
|
||||
end.
|
||||
Loading…
Add table
Add a link
Reference in a new issue