AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Ellipsenalgo aus Formelsammlung kreieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ellipsenalgo aus Formelsammlung kreieren

Ein Thema von delphifan2004 · begonnen am 8. Jul 2025 · letzter Beitrag vom 9. Jul 2025
 
delphifan2004

Registriert seit: 26. Nov 2004
Ort: Dresden
281 Beiträge
 
Delphi 10.3 Rio
 
#1

Ellipsenalgo aus Formelsammlung kreieren

  Alt 8. Jul 2025, 10:31
Hallo

Ich habe ausgehend von der Ellipsengleichung: (Quelle: Hans Jochen Bartsch "Taschenbuch Mathematische Formeln für Ingenieure und Naturwissenschaftler"

sqr(x)/sqr(a) + sqr(y)/sqr(b) = 1

nach y aufgelöst:

y = +/- (b/a)*sqrt(sqr(a)-sqr(x))


folgendes Programm erstellt:

Delphi-Quellcode:
procedure DrawEllipse(xm,ym,xR,yR,stangle,endangle: Extended);
var
  angle: extended;
  a,b,x: extended;
  yp,yn: Extended;
  px,py: int64;
begin
  angle := 0.0;
  angle := stangle;
  x := xm; y := ym; //Mittelpinkt der Ellipse
  a := xR; b := yR; //a und b --- x- und y Readien der Ellipse
  while angle < endangle do //hier aber Winkel als Laufvariable benutzt
  begin
    a := x / cos(angle); b := y / sin(angle); //x = a * cos(angle); y = b * sin(angle)
    yp := b/a * sqrt(sqr(a)-sqr(x)); //der Punkt der Ellipse an der Position X
    py := Round(yp); //auf Integer gerundet und wegen Int64 als Rückgabewert
    DrawPixel(x,Longword(yp)) //auf Longword gecastet
    yn := -b/a * sqrt(sqr(a)-sqr(x)); //gleicher Ablauf
    py := round(yp); //für die negative Halbachse
  end;
end;
Da wird aber x ncht verändert, was naxh meinem Verständnis aber der Fall sein sollte wenn ich weigstens eine halbe Ellipse zeichnen will.
Ich verwende den Winkel als Laufvariable, habe aber ein "Brett vorm Kopp" wegen Laufvariale x die ja mit dem Winkel verändert werden muss.

wie kann ich möglichst effektiv die Gleicung so umstellen dass ich trotz Winkel als Laufvarible den Parameter X ebenfalls weiter zähle. Irgendwie habe ich im Moment einen Knoten im Kopf.
  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 02:03 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