Thema: Delphi Rectangle und Ellipse

Einzelnen Beitrag anzeigen

omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Rectangle und Ellipse

  Alt 8. Jun 2008, 23:10
Hier mal ein rekursiver Vorschlag...
Delphi-Quellcode:
procedure zeichnen(Canvas:TCanvas; x, y, width, tiefe:integer);
var R:TRect;
begin
  if tiefe > 0 then begin
    R:=Rect(x-width div 2, y-width div 2, x+width div 2, y+width div 2);
    Canvas.Brush.Color:=clRed;
    Canvas.Rectangle(R);
    Canvas.Brush.Color:=clYellow;
    Canvas.Ellipse(R);
    zeichnen(Canvas, x, y, round(2*sqrt(2)*(width div 4)), tiefe-1);
  end;
end;
Aufruf...
Delphi-Quellcode:
procedure TForm.ButtonClick(Sender: TObject);
var x, y:integer;
begin
  x:=Image.Width div 2;
  y:=Image.Height div 2;
  if Image.Width < Image.Height then
    zeichnen(Image.Canvas, x, y, Image.Width, 10)
  else
    zeichnen(Image.Canvas, x, y, Image.Height, 10);
end;
Gruss
Thorsten
  Mit Zitat antworten Zitat