Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
Turbo Delphi für Win32
|
Re: Apfelmann ohne Zoom
25. Mai 2005, 13:11
ich habe erstmal folgendes geändert, damit das richtige Apfelmännchen herauskommmt:
Delphi-Quellcode:
procedure TFRM_Apfelmann.BTN_ZeichnenClick(Sender: TObject);
begin
CalcApfel;
end;
procedure TFRM_Apfelmann.CalcApfel;
var
P: TPoint;
K: Integer;
X,Y,
Xa,Xe,
Ya,Ye,
R,
dX,dy: Extended;
function _Iter (Ax,Ay: Extended): Integer;
var
A2,B2,
A,B,M: Extended;
I: Integer;
begin
A := Ax;
A2 := A*A;
B := Ay;
B2 := B*B;
I := 0;
repeat
M := A2-B2+Ax;
B := 2*A*B+Ay;
A := M;
A2 := A*A;
B2 := B*B;
Inc (I);
until (A2+B2>R) or (I>K);
if I>=K then Result := 0
else Result := K;
end;
begin
Xe := strtofloat(EDT_xmax.text);
Xa := strtofloat(EDT_xmin.text);
Ye := strtofloat(EDT_ymax.text);
Ya := strtofloat(EDT_ymin.text);
K := strtoint(EDT_kmax.text);
R := strtoFloat(EDT_rmax.Text);
dX := (Xe-Xa)/600;
dY := (Ye-Ya)/400;
P.Y := 8;
Y := Ya;
while Y<Ye do
begin
P.X := 152;
X := Xa;
while X<Xe do
begin
FRM_Apfelmann.Canvas.Pixels[P.X,P.Y] := 16000000 div (1+_Iter (X,Y));
X := X+dX;
Inc (P.X);
end;
Y := Y+dY;
Inc (P.Y);
end;
end;
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
|
|
Zitat
|