Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Ein Stück vom Kreis erstellen (https://www.delphipraxis.net/177229-ein-stueck-vom-kreis-erstellen.html)

Peter666 25. Okt 2013 18:40

Ein Stück vom Kreis erstellen
 
Hi,

ich habe hier ein Problem bei der Portierung eines Javacodes:
new Arc2D.Float(x, y, w, h, -45 - dir, ANGLE, Arc2D.PIE)

Im Prinzip wollte ich etwas adäquates machen das mir ein Array of TPoint liefert mit das ein Kegel mit obigen Werten halbwegs genau zurückliefert.

Hat jemand dazu eventuell eine Idee? Irgendwie sträuben sich mir die Nackenhaare dabei :(

Peter

Medium 26. Okt 2013 03:51

AW: Ein Stück vom Kreis erstellen
 
Möchtest du nun ein Kreissegment, oder einen Kegel? :gruebel: Bei ersterem wäre da vermutlich das aller einfachste den guten alten Sinus und Cosinus zu benutzen, die einem so die Punkte in beliebigen Winkelabständen liefern können.

Peter666 30. Okt 2013 18:32

AW: Ein Stück vom Kreis erstellen
 
Sorry die Frage hatte sich am nächsten morgen quasi von selbst gelöst, nach einem Arbeitstag hat man mitunter nicht mehr den Kopf frei für so quasi banales Zeug.

Delphi-Quellcode:
procedure Arc2D(const Center: TPointF; const rad, Start, endp: Single;
  var Poly: TPolygon);
var
  angle: Single;
  step: Single;
  i: integer;
begin
  angle := Start;
  step := 0.01;
  Setlength(Poly, trunc((endp - Start) / step) + 2);
  Poly[0] := Center;
  Poly[high(Poly)] := Center;

  for i := 1 to high(Poly) - 1 do
  begin
    Poly[i] := PointF(Center.X + rad * sin(angle), Center.Y + rad * cos(angle));
    angle := angle + step;
  end;
end;

Martin01 3. Apr 2015 13:42

AW: Ein Stück vom Kreis erstellen
 
Ich habe ein Problem beim Zeichnen auf einen FMX-Canvas. Das sieht alles total pixelig und verschwommen aus. Ich zeichne aber mit den gleichen Befehlen, die Firemonkey intern dafür verwendet. Ich habe sogar die Objekteigenschaften im Debugger verglichen. Bis auf die Farben ist alles identisch. Was fehlt da?

mkinzler 3. Apr 2015 13:45

AW: Ein Stück vom Kreis erstellen
 
Schau mal in Zeile 42.

Mit etwas Glück ist dort der Fehler. Effektiver wäre es aber uns zu Zeigen wie du was machst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:13 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