AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mathematisches Problem mit GPS

Ein Thema von Peter666 · begonnen am 8. Dez 2013 · letzter Beitrag vom 11. Dez 2013
Antwort Antwort
Peter666

Registriert seit: 11. Aug 2007
357 Beiträge
 
#1

Mathematisches Problem mit GPS

  Alt 8. Dez 2013, 10:17
Hallo,

ich habe gerade ein mathematisches Problem. Genauer gesagt möchte ich mit folgenden Informationen: Latitude, Longitude des Betrachters + Azimut und Elevation eine Art Augmented Reality erstellen. Genauer gesagt wollte ich anhand der GPS Daten die mir mein Telefon liefert die Position des Sternenhimmels auf die Kamera zeichnen. Ich hab das ganze vor Jahren mal in 2D auf den Monitor gerendert, aber ehrlich gesagt wenn man die mathematischen Hintergründe seit Jahrzehnten nicht mehr gebraucht hat, fällt einem das ganz schön schwer.

Delphi-Quellcode:
procedure findPosition(const Latitude, Longitude, Azimuth, Elevation: single; out x, y: single);
var lat2, lon2: single;
  distance: single;
begin
  distance := CalulateDistance(Elevation);
  lat2 := arcsin(sin(Latitude) * cos(distance) + cos(Latitude) * sin(distance) * cos(azimuth));
  if cos(Latitude) = 0 then
    lon2 := Longitude
  else
    lon2 := Longitude-(arcsin(sin(azimuth) * sin(distance) / cos(Latitude)));

  x := XFromLat(lat2);
  y := YFromLong(lon2);
end;
Aus meinen alten Aufzeichnungen habe ich im Ansatz obigen Code zusammengestellt, aber wie gesagt ich komme damit nicht wirklich weiter
  Mit Zitat antworten Zitat
arnof

Registriert seit: 25. Apr 2013
1.250 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: Mathematisches Problem mit GPS

  Alt 8. Dez 2013, 10:34
Hallo,

ich habe gerade ein mathematisches Problem. Genauer gesagt möchte ich mit folgenden Informationen: Latitude, Longitude des Betrachters + Azimut und Elevation eine Art Augmented Reality erstellen. Genauer gesagt wollte ich anhand der GPS Daten die mir mein Telefon liefert die Position des Sternenhimmels auf die Kamera zeichnen. Ich hab das ganze vor Jahren mal in 2D auf den Monitor gerendert, aber ehrlich gesagt wenn man die mathematischen Hintergründe seit Jahrzehnten nicht mehr gebraucht hat, fällt einem das ganz schön schwer.

Delphi-Quellcode:
procedure findPosition(const Latitude, Longitude, Azimuth, Elevation: single; out x, y: single);
var lat2, lon2: single;
  distance: single;
begin
  distance := CalulateDistance(Elevation);
  lat2 := arcsin(sin(Latitude) * cos(distance) + cos(Latitude) * sin(distance) * cos(azimuth));
  if cos(Latitude) = 0 then
    lon2 := Longitude
  else
    lon2 := Longitude-(arcsin(sin(azimuth) * sin(distance) / cos(Latitude)));

  x := XFromLat(lat2);
  y := YFromLong(lon2);
end;
Aus meinen alten Aufzeichnungen habe ich im Ansatz obigen Code zusammengestellt, aber wie gesagt ich komme damit nicht wirklich weiter
mm, wie sieht die Formel auf dem Papier aus ?


was verbirgt sich denn hinter folgenden variablen: Azimuth, Elevation:

Genauso wie hier distance := CalulateDistance(Elevation);
  Mit Zitat antworten Zitat
Peter666

Registriert seit: 11. Aug 2007
357 Beiträge
 
#3

AW: Mathematisches Problem mit GPS

  Alt 11. Dez 2013, 19:14
Azimut ist die Himmelsrichtung (180° ist der Süden), Elevation der Betrachtungswinkel zu dem Objekt und Distanz ist die Entfernung. Da es sich eh um Punkte handelt, kann man letzteres im Prinzip auch vernachlässigen. Wie gesagt ich habe den aktuellen Azimut und die Elevation und möchte nun aus dem Vektor im Verhältnis zu meiner Kameraposition den 3D Bildpunkt rendern.

Delphi-Quellcode:
procedure rae2xyz(Range, Azimuth, Elevation: Single; out x, y, z: single);
begin
//http://en.wikipedia.org/wiki/Spherical_coordinate_system#Cartesian_coordinates
  x := Range * sin(Elevation) * cos(Azimuth);
  y := Range * sin(Elevation) * sin(Azimuth);
  z := Range * cos(Elevation);
end;
Ich hab testweise x' = x/z und y' = y/z genommen, mit einem Faktor versehen und auf die Bildmitte gezeichnet. Im Prinzip habe ich vom Betrachter die Richtung in die er guckt und den Winkel in der das Telefon gehalten wird. Ich weiß das wäre Mathe Sekundarstufe 2, wenns bei mir nicht schon so lange zurück läge. Ist schon traurig wie viel man vergisst.
  Mit Zitat antworten Zitat
MasterChief56

Registriert seit: 11. Dez 2013
1 Beiträge
 
#4

AW: Mathematisches Problem mit GPS

  Alt 11. Dez 2013, 20:48
Hilft vielleicht das weiter?
Drehmatrixen im euklidischem Raum
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#5

AW: Mathematisches Problem mit GPS

  Alt 11. Dez 2013, 22:40
Das ist im Grunde nicht schwer (Abiturniveau) aber viel (langweilige und fehleranfällige) Rechnerei. Und natürlich wird es immer krasser, je genauer du es willst

Du kannst dir mal ein paar Seiten anschauen, zum Beispiel das hier: http://www.astronomie.info/forum/vie...hp?f=13&t=2236 oder mal suchen nach "elevation azimut rektaszension deklination umrechnen"
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:46 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