AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Windows GDI ArcTo: Tutorial
Thema durchsuchen
Ansicht
Themen-Optionen

Windows GDI ArcTo: Tutorial

Ein Thema von worker · begonnen am 17. Feb 2009 · letzter Beitrag vom 5. Feb 2013
 
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.749 Beiträge
 
Delphi 2007 Professional
 
#10

AW: Re: Windows GDI ArcTo: Tutorial

  Alt 5. Feb 2013, 08:48
Ok, soweit klar. Was aber noch nicht klar ist, sind die Punkte X3,Y3 und X4,Y4.

Sind das die Schnittpunkte mit der Ellipse oder mit dem die Ellipse umspannenden Rechteck.
Es sind irgendwelche Punkte, die in der "richtigen" Richtung liegen. Es müssen nicht die Schnittpunkte mit Ellipse oder umschreibendem Rechteck sein - siehe die n...Arc-Koordinaten im oben verlinkten Bildchen.

Wenn das die Schnittpunkte mit dem Ellipsenbogen sind, wo finde ich dann passende Ellipsengleichungen? Ich habe seit Turbopascal nichts mehr mit solchen Grafikfunktionen gemacht, weiß aber, das Turbo Pascal statt der Punkte X3,Y3 und X4,Y4 Anfangs und Endwinkel verlangt. Ich muss also Umdenken und statt Anfangs und Endwinkel ausdiesen beiden Winkeln die hier geforderten Punkte berechnen.
Irgendwie so (ungetestet):
Delphi-Quellcode:
function CalcPoint(const AMittelPunkt: TPoint; ARadius, AWinkel: Extended): TPoint;
var
  Sin, Cos: Extended;
begin
  SinCos(AWinkel, Sin, Cos);
  Result.X := AMittelPunkt.X + Round(ARadius * Cos);
  Result.Y := AMittelPunkt.Y + Round(ARadius * Sin);
end;
Den Radius kannst du dir theoretisch nach Gusto aussuchen - in der Praxis gibt's natürlich Rundungseffekte. Drum würde ich ihn nicht zu klein wählen, z.B. die Breite oder Höhe des Rechtecks.
Uli Gerhardt
  Mit Zitat antworten Zitat
 


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 08:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz