![]() |
Kugelkoordinaten berechnen, bräuchte hilfe...
Hi,
ich komm ned voran, mit der Berechnung der Koordinaten auf einer Kugel. :cry: ich hatte mir es ungefähr so vorgestellt:
Code:
Aber irgendwie funktioniert die Kreisberechnung für Horizontale und somit auch der Vertikalen nicht.
XPos = BerechneHorizontale(Radius, 360°)
YPos = BerechneVertikale(Radius, 45°) Oder ich bin auf dem völlig falschen Weg... Zeigen will ich euch meine Versuche nicht, da ihr mich sonst auslacht. :mrgreen: |
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
|
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
Zitat:
Kommt nur :shock: :gruebel: :coder2: ![]() ![]() ![]() |
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
Bogenmaßproblem?
|
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
Nein, denke ich mal.
So schaut's aus:
Delphi-Quellcode:
function SphericalCoordinates(r, vGrad, hGrad: single): TVector3D;
var st, ct, sp, cp: single; begin // Grad zu Rad st := sin(vGrad * Pi / 180); // Theta ct := cos(vGrad * Pi / 180); sp := sin(hGrad * Pi / 180); //Phi cp := cos(hGrad * Pi / 180); // Kreiskoordinaten berechnen // x = r * sinTheta * cosPhi // y = r * sinTheta * sinPhi // z = r * cosTheta Result.X := r * st * cp; Result.Y := r * st * sp; Result.Z := r * ct; end; |
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
Zeichne 'mal bitte 'ne Skizze und zeige sie
|
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
Hm, :gruebel:
es scheint zu funktionieren. Möglicher weise habe ich einen "Folgefehler" begangen der im eigentlichen nichts mit der Berechnung der Koordinaten auf der Kugel zu schaffen hat. Es kann sein das die Umsetzung in OpenGL einen Denkfehler hat... Per 2D funktioniert es.
Delphi-Quellcode:
procedure TForm1.FormPaint(Sender: TObject);
var x,y : integer; v: TVector3D; begin for y := 0 to 36 do for x := 0 to 36 do begin v := SphericalCoordinates(80, x*10, y*10); canvas.Pixels[100+round(v.x + (v.z/15)), 100+round(v.y - (v.z/15))] := rgb(BYTE(round(v.z)),0,0); end end; |
Re: Kugelkoordinaten berechnen, bräuchte hilfe...
Ich dachte, dü wärst TP-Fan. Solch Nervkram versuche ich erstmal mit
Turbo-Pascal. Delphi und andere Programme liefern immer noch zu viele Zusatzfehler, sh. die Math.dcu, die noch immer nicht frei von Fehlern ist. Liebe Grüße Wolfgang |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:01 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