Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: Kreis in Vier teile einteilen ?

  Alt 11. Jun 2007, 12:03
So jetzt schön kompliziert da ohne ViewportOrgEx.

Delphi-Quellcode:
procedure Kreis4Farben(cav: TCanvas; iLeft, iTop, DMesser: integer);
var
  Halb: integer;
begin
  Halb := DMesser div 2;
  with cav do
  begin
    Brush.Color := clSilver;
    Ellipse(iLeft, iTop, iLeft + DMesser, iTop + DMesser);

    Pen.Color := clRed;
    Arc(iLeft, iTop, iLeft + DMesser, iTop + DMesser, iLeft + DMesser, iTop + Halb, iLeft + Halb, iTop);

    Pen.Color := clYellow;
    Arc(iLeft, iTop, iLeft + DMesser, iTop + DMesser, iLeft + Halb, iTop, iLeft, iTop + Halb);

    Pen.Color := clGreen;
    Arc(iLeft, iTop, iLeft + DMesser, iTop + DMesser, iLeft, iTop + Halb,iLeft + Halb, iTop + DMesser);

    Pen.Color := clAqua;
    Arc(iLeft, iTop, iLeft + DMesser, iTop + DMesser, iLeft + Halb, iTop + DMesser, iLeft + DMesser, iTop + Halb);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Kreis4Farben(image1.Canvas,10, 30, 120);
   //Kreis4Farben(image1.Canvas,40, 80, 120);
end;
EDIT: Es geht auch ohne FloodFill().
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat