AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Kreis in Vier teile einteilen ?
Thema durchsuchen
Ansicht
Themen-Optionen

Kreis in Vier teile einteilen ?

Ein Thema von mimi · begonnen am 10. Jun 2007 · letzter Beitrag vom 1. Mai 2012
Antwort Antwort
Seite 3 von 3     123   
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#21

Re: Kreis in Vier teile einteilen ?

  Alt 11. Jun 2007, 20:08
eigentlich ja, und was ist mit der höhe ?
muss ich als erstes schreibe
DMesser:=right-left div 2 ?
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

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

Re: Kreis in Vier teile einteilen ?

  Alt 11. Jun 2007, 20:37
Zitat von mimi:
und was ist mit der höhe ?
Was hast du denn vor?
Ein Kreis hat nur einen Durchmesser oder meinst du eine Ellipse?
Zitat von mimi:
DMesser:=right-left div 2 ?
Wie der Durchmesser berechnet wird habe ich doch schon geschrieben oder funktioniert das so nicht?

DeddyH meinte du hättest den Durchmesser mit Hilfe des Radius berechnen können.Durchmesser = Radius * 2
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#23

Re: Kreis in Vier teile einteilen ?

  Alt 11. Jun 2007, 21:49
das Problem ist, wie kann ich das hier am besten einbauen ?

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

    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;
leider hatte ich mit Kreisen bisher wenig zu tun, darum fällt, mir das auch so schwer.

Mein Ziel ist es eine Procedure zu haben die genau wie FillRect auf gerufen werden kann.
mit einem TRect oder halt so wie ich es jetzt oben gemacht habe.

Letztendlich ist es egal ob es ein Kreis oder eine Ellipse ist,
Das sollen die Eckpunkte angeben.

Nochmals vielen Dank für eure gedult.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

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

Re: Kreis in Vier teile einteilen ?

  Alt 12. Jun 2007, 01:32
Delphi-Quellcode:
procedure Ellipse4Farben(cav: TCanvas; iLeft, iTop, iW, iH: integer);
var
  iHalbW, iHalbH : integer;
begin
  iHalbW := iW div 2;
  iHalbH := iH div 2;
  with cav do
  begin
    Brush.Color := clSilver;
    Ellipse(iLeft, iTop, iLeft + iW, iTop+ iH);

    Pen.Color := clRed;
    Arc(iLeft, iTop, iLeft + iW, iTop + iH, iLeft + iW, iTop + iHalbH, iLeft + iHalbW, iTop);

    Pen.Color := clYellow;
    Arc(iLeft, iTop, iLeft + iW, iTop + iH, iLeft + iHalbW, iTop, iLeft, iTop + iHalbH);

    Pen.Color := clGreen;
    Arc(iLeft, iTop, iLeft + iW, iTop + iH, iLeft, iTop + iHalbH, iLeft + iHalbW, iTop + iH);

    Pen.Color := clAqua;
    Arc(iLeft, iTop, iLeft + iW, iTop + iH, iLeft + iHalbW, iTop + iH, iLeft + iW, iTop + iHalbH);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Ellipse4Farben(image1.Canvas, 33, 50, 121, 81);
end;
Das Ganze jetzt mit einer Ellipse.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#25

Re: Kreis in Vier teile einteilen ?

  Alt 12. Jun 2007, 16:03
BESTEN DANK, genau was ich wollte !
im Anhang ist ein bild wofür ich es gebraucht habe.

Gibt es evlt. ein Tutorial darüber ?

Edit: Das währe doch was für die Tipp Sammlung oder ?
Miniaturansicht angehängter Grafiken
12.06.2007_110.png  
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#26

AW: Kreis in Vier teile einteilen ?

  Alt 1. Mai 2012, 15:45
Habe gerade diesen Hilfereichen Code gefunden... wäre das nicht was für die Code-Lib?
Schön einfach, zu verwenden.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#27

AW: Kreis in Vier teile einteilen ?

  Alt 1. Mai 2012, 22:47
Habe gerade diesen Hilfereichen Code gefunden...
gerade gefunden? 2007 hattest du den auch schon gefunden ... oder wie jetzt?
wäre das nicht was für die Code-Lib?
Schön einfach, zu verwenden.
Ehrlich gesagt, nö, nix für die Code-Lib
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz