www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Lineare Algebra / Vektorrechnung" - GeoKoordinaten rechter winkel
GeoKoordinaten rechter winkel < Lin. Algebra/Vektor < Oberstufe < Schule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Lineare Algebra / Vektorrechnung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

GeoKoordinaten rechter winkel: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 22:22 Mo 18.11.2013
Autor: corema

Guten Abend,

ich schreibe derzeit an einem Script, das die Entfernung von einer Strecke zu einem Punkt berechnen soll. Bei der Strecke handelt es sich um eine Route, zb. von Hamburg nach München.
Dazu nehme ich eine Teilstrecke als eine Gerade in Vektorform, erstelle mit Hilfe des Skalarproduktes eine weitere Gerade, die durch meinen Punkt geht.
Mit dem Schnittpunkt beider Geraden errechne ich mit Pythagoras den Abstand.

Nun treten folgende Probleme auf:
1. Lasse ich mir beide Strecken auf der Karte anzeigen, sind diese alles andere als im rechten Winkel zueinander.
2. Der berechnete geringste Abstand ist auf der Karte optisch oftmals weiter weg, als ein optisch näherer Punkt.

Der Lösung bin ich bislang nicht auf die schliche gekommen. Kann es damit zu tun haben, dass die Erde eine Kugel ist und die Geo-Koordinaten positionen auf dieser Kugel markieren, die Geraden also "krum" sind?

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

Vielen Dank schon mal
Gruß


EDIT:
Die Koordinaten liegen mir in Dezimalgrad vor (lat, lng). Ich erhalte sie von GoogleMaps und lasse mir die Daten dort auch ausgeben.

Das Vorgehen ist wie folgt:
Ich habe eine Polyline von A nach B. Zu dieser möchte ich den geringsten Abstand zu dem Punkt C bestimmen. Dazu berechne ich zu jedem Punkt der Polyline den Abstand zu C mit Pytagoras.

Ist die geringste Entfernung ermittelt, bilde ich eine Gerade aus dem ermittelten Punkt P und dem vorherigen Punkt Q der Polyline:
Die Gerade besteht aus dem Sützvektor zu P und dem Richtungsvektor von P zu Q.

Zu dieser Graden bestimme ich eine weitere, die im Rechten Winkel zu dieser Verläuft:
Ich multipliziere ich den Vektor PQ mit einem noch unbekannten Vekor N und setzt dieses Produkt gleich Null. Für einen Wert von N suche ich mir eine Zahl aus und löse dann die Gleichung auf.
Als Stützvekor neheme ich den Vektor zu C.

Die beiden Geraden setzte ich gleich und bereche daraus den Schnittpunkt S.

Wenn ich mir nun die Geraden auf der Karte anzeigen lasse, stehen sie eigendlich nie im rechten Winkel zueinander.

Laut Kartenansicht ist der errechnete nähste Punkt P öftmals weiter weg, als der Punkt Z der nach Kartenansicht näher dran wäre. Berechne ich nun den Abstand von Z zu C, wir angegeben, dass dieser weitere weg ist, obohl er optisch näher dran ist.
Welche Angabe allerdings roichtig ist, weiß ich nicht.

        
Bezug
GeoKoordinaten rechter winkel: Antwort
Status: (Antwort) fertig Status 
Datum: 23:18 Mo 18.11.2013
Autor: leduart

Hallo
keine Karte ist winkeltreu oder längentreu auf größere Entfernungen. Also kannst du auf denen keine Winkel oder Streckenlängen messen. du musst schon auf der Kugel rechnen.
Da Straßen aber ja nicht auf Großkreisen laufen, weiß ich nicht, was genau du willst.
Gruss leduart

Bezug
                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 05:39 Di 19.11.2013
Autor: corema

Ich möchte wissen, ob das skalarbrodukt verwendet werden kann, um auf einer kugel einen vektorn im rechten Winkel zu erstellen.

Bezug
                        
Bezug
GeoKoordinaten rechter winkel: Beschreibe bitte dein Vorgehen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 06:22 Di 19.11.2013
Autor: weightgainer

Ich verstehe dein Anliegen so:
1. Du hast eine Karte (z.B. in einem Atlas/Ausdruck aus Maps o. ä.). Oder nimmst du einen Globus?

2. Du verbindest zwei Punkte auf der Karte mit einer Linie und beschreibst diese Linie vektoriell als eine Gerade. (Hier solltest du auf jeden Fall noch ergänzen, WIE du das eigentlich machst - insbesondere falls du auf einem Globus hantierst.)

3. Du markierst einen Punkt und berechnest den Abstand zu der Linie.

4. Ergebnis (?): Der Abstand ist falsch berechnet? Oder ist es nur ein optisches Problem?

Eigentlich kann es ja nicht der einfache Fall (Atlas, Kartenausdruck) sein, weil dort alles bekannt ist (und es sogar schulfertige Verfahren zur Abstandsberechnung Punkt - Gerade gibt). Wenn du also noch etwas genauer schreibst, was du machst, können hier sicher einige sehr gute Tipps und Hinweise geben.

lg weightgainer

Bezug
                                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:21 Di 19.11.2013
Autor: corema

Ich habe die Ergänzungen in den Eingangsachverhalt einmal mit aufgenommen

Bezug
        
Bezug
GeoKoordinaten rechter winkel: Antwort
Status: (Antwort) fertig Status 
Datum: 09:52 Di 19.11.2013
Autor: Event_Horizon

Hallo!

Solange du nicht von Kanada nach Feuerland willst, sondern in Deutschland bleibst, brauchst du dir um die Kugelform der Erde keine Sorgen machen. Die Ausdehnung Deutschlands ist so winzig gegenüber der Erdoberfläche, daß das nur einen sehr geringen Einfluss hat.

Zur Technik vermute ich mal, daß du deine Route im GPX- oder ähnlichen Format hast, also die Koordinaten jeden einzelnen Punktes kennst.

Ich rate mal:

Hast du beachtet, daß du deine Liniensegmente als Grade auffasst, sie tatsächlich aber nur eine Strecke sind? Betrachte die Strecke (Luftlinie) München - Frankfurt, sowie den Abstand zu Düsseldorf

Frankfurt liegt geschätzte 260km von Düsseldorf entfernt, aber die Grade München - Frankfurt geht vermutlich sogar noch durchs Stadtgebiet von Düsseldorf durch, der Abstand zu einer bestimmten Adresse beträgt nur einige wenige km.

Die Lösung: Das Skalarprodukt kann dir die Länge der Projektion des Entfernungsvektors (Beobachtungspunkt <-> Stützvektor der Strecke) auf die Grade liefern. ist das Ergebnis negativ oder größer als die Strecke, dann liegt der Beobachtungspunkt weit vor oder hinter der Strecke. Berechne dann den Abstand des Start- und Zielpunktes zum Beobachtungspunkt. Erst, wenn das Ergebnis zwischen 0 und der Länge der Strecke liegt, liegt der beobachtungspunkt an irgendeiner Stelle der Strecke senkrecht dazu, und dann kannst du den Abstand Grade - Punkt benutzen.


Das ist nu etwas knapp formuliert, aber schaun wir erstmal, ob das dein Problem ist. Ansonsten kann ich auch noch etwas genauer beschreiben, was ich meine.

Bezug
                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 13:56 Di 19.11.2013
Autor: corema

Die Koordinaten liegen mir in Dezimalgrad vor (lat, lng). Ich erhalte sie von GoogleMaps und lasse mir die Daten dort auch ausgeben.

Das Vorgehen ist wie folgt:
Ich habe eine Polyline von A nach B. Zu dieser möchte ich den geringsten Abstand zu dem Punkt C bestimmen. Dazu berechne ich zu jedem Punkt der Polyline den Abstand zu C mit Pytagoras.

Ist die geringste Entfernung ermittelt, bilde ich eine Gerade aus dem ermittelten Punkt P und dem vorherigen Punkt Q der Polyline:
Die Gerade besteht aus dem Sützvektor zu P und dem Richtungsvektor von P zu Q.

Zu dieser Graden bestimme ich eine weitere, die im Rechten Winkel zu dieser Verläuft:
Ich multipliziere ich den Vektor PQ mit einem noch unbekannten Vekor N und setzt dieses Produkt gleich Null. Für einen Wert von N suche ich mir eine Zahl aus und löse dann die Gleichung auf.
Als Stützvekor neheme ich den Vektor zu C.

Die beiden Geraden setzte ich gleich und bereche daraus den Schnittpunkt S.

Wenn ich mir nun die Geraden auf der Karte anzeigen lasse, stehen sie eigendlich nie im rechten Winkel zueinander.

Laut Kartenansicht ist der errechnete nähste Punkt P öftmals weiter weg, als der Punkt Z der nach Kartenansicht näher dran wäre. Berechne ich nun den Abstand von Z zu C, wir angegeben, dass dieser weitere weg ist, obohl er optisch näher dran ist.
Welche Angabe allerdings roichtig ist, weiß ich nicht.

Bezug
                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:24 Di 19.11.2013
Autor: leduart

Hallo
wie berechnest du denn aus (lat,long) euklidische Koordinaten? dir ist schon klar, dass wenn du im Norden 1° long weiter gehst, das weniger ist als im Süden? und 1° long ungleich 1° lat.
Gruss leduart

Bezug
                                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:33 Di 19.11.2013
Autor: corema

"Euklidisch" sagt mir überhaupt nichts.

aber mir ist bekannt, dass auf Grund der Kugeleigenschaft Breitengrade nach oben Kürzer werden und zur mitte hin länger.
Und selbstverständlich sind Breitengrade keine Längegrade.

Ich verstehe nur nicht in wie weit das mit meinem Problem zusammenhängt.

Bezug
                                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:42 Di 19.11.2013
Autor: leduart

Hallo
am besten ist, du rechnest ein Beispiel vor, wie du die Gerade und die Senkrechte erstellst.
Gruss leduart

Bezug
                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 18:28 Di 19.11.2013
Autor: Event_Horizon

Hallo!

wenn ich das richtig sehe, machst du wirklich den Fehler, denich oben beschrieben habe. Hier mal ein Bild:

Auf der Strecke München - Frankfurt - Rom ist Frankfurt sicher der Punkt, der am nächsten an Köln liegt.

Du machst dir eine Grade durch Frankfurt und München, und berechnest eine senkrechte Grade dazu, durch Köln.

Danach suchst du den Schnittpunkt der beiden Graden (schwarz im Bild), und nimmst das grüne Stück bei Köln als Entfernung an. Daß das viel zu kurz ist, siehst du sicher ein.
Du mußt untersuchen, ob der Schnittpunkt noch auf der Strecke München-Frankfurt (rot)  liegt. Wenn nein, dann nimmst du Frankfurt, und berechnest mittels Pythagoras diese Strecke.

Betrachte dagegen den Abstand zu Nürnberg! Hier liegt der Schnittpunkt auf der roten Strecke, und deshalb ist das grüne hier tatsächlich der Abstand!

[Dateianhang nicht öffentlich]


Zu dem, was Leduart zur Kugeloberfläche sagt:

Sie hat natürlich recht, 1° Länge (ost-west) ist in Norddeutschland etwa 15% kleiner als in Süddeutschland. Den Effekt kannst du aber vernachlässigen.
Und: 1° osw-west ist nur etwa 62° so groß wie 1 Grad Nord-Süd

Wie rechnest du denn die Gradzahlen in Kilometern um?

Dateianhänge:
Anhang Nr. 1 (Typ: png) [nicht öffentlich]
Bezug
                                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:32 Di 19.11.2013
Autor: corema

Das ist es leider nicht.
Hier ein Beispiel auf lokaler Ebende:
Rot ist die Route und Grün sind die berechneten Geraden
[Dateianhang nicht öffentlich]
http://s7.directupload.net/images/131119/yr2424hg.png
Wie man sieht, stehen die beiden grünen Strecken nicht orthogonal zueinander, was sie allerdings sollten.
(Quelle: GoogleMaps)

Hier kann man erkennen, dass der berechnete Kürzeste Punk ausßerhalb des Umkreises liegen, während andere sogar innerhalb sind.
[Dateianhang nicht öffentlich]
http://s1.directupload.net/images/131119/obdn9avp.png
(Quelle: GoogleMaps)

Angehängt habe ich die Formeln nach den ich die Geraden berchnen. g1 ist dabei die Gerade auf der Route, während G2 die Gerade ist, die orthogonal zu g1 steht.
[a]Datei-Anhang



Derzeit Rechne ich die LatLng strecke einfach nur um, indem ich sie vom Bogenmaß ins Gradmaß konvertiere. Dies ist aber in sofern nicht wichtig, da die Größenverhältnisse ja nicht geändert werden.

EDIT:
Ich habe die links nun anderwaltig hochgeladen.
gem. http://www.google.com/permissions/geoguidelines.html#maps-web sollte hier eine genehmigung zur veröffentlichung vorligen.
Sollte dies gegen die Forenregeln verstoßen, bitte ich dies zu entschuldigen. Ich komme mit dem Forum noch nicht so gut zurecht.... Ich weiß nicht, ob die Bilder wieder entsperrt werden, nach Änderung der Angaben zu dem Uhrheber, oder nicht.

Dateianhänge:
Anhang Nr. 1 (Typ: png) [nicht öffentlich]
Anhang Nr. 2 (Typ: png) [nicht öffentlich]
Anhang Nr. 3 (Typ: pdf) [nicht öffentlich]
Bezug
                                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:43 Di 19.11.2013
Autor: Diophant

Hallo corema,

deine Dateianhänge wurden teilweise gesperrt. Beachte bitte, dass du von einem Screenshot nicht der Urheber bist und lade am besten nur eigen Werke hier hoch. Mache desweiteren in jedem Fall wahrheitsgemäße Angaben zur Urheberschaft.

Gruß, Diophant

Bezug
                                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:53 Di 19.11.2013
Autor: corema

falscher Eintrag. habe mich verklickt
Dateianhänge:
Anhang Nr. 1 (Typ: png) [nicht öffentlich]
Anhang Nr. 2 (Typ: png) [nicht öffentlich]
Bezug
                                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 22:20 Di 19.11.2013
Autor: Event_Horizon

Hallo!

OK, so mit den Links geht das halbwegs.

Du bist in Hamburg, das bei etwa 53°N.

0,1° in N-S-Ausrichtung entspricht etwa 11,1km.

0,1° in O-W-Ausrichtung sind dagegen nur 6,68km


Das bedeutet, dein Koordinatensystem hat in x und y nicht die gleiche Skalierung.

Öffne das Bild mit dem schiefen Winkel mal in einem Bildbearbeitungsprogramm, und mach es breiter - und zwar um den Faktor 11,1/6,8=1,63.
Damit wird die Skalierung angeglichen, und damit sollte sich der gewünschte rechte Winkel einstellen.
Damit korrigierst du aber nicht deine Rechnung, sondern du siehst nur, was du da gerechnet hast.


Um nun richtige Ergebnisse zu erhalten, solltest du die Koordinaten in Strecken umrechnen.

Bezug
                                                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 05:48 Mi 20.11.2013
Autor: corema

wunderbar, so wird aus dem schiefen winkel tatsächlich ein rechter :)

auf unterschiedliche skallierung wäre ich nie gekommen.
damit wäre auch das Problem mit dem Umkreis gelöst, da aus diesem eine Elipse wird und die Punkte die durch diese gehen sind dadurch tatsächlich weiter weg.

Vielen Dank!

Bezug
                                                        
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 09:29 Mi 20.11.2013
Autor: Event_Horizon

Ja gut, aber wie gesagt, mit dieser Verzerrung hast du nur dafür gesorgt, daß 1° O-W genauso viele Pixel lang ist,  wie 1° N-S. Dadurch werden die rechten Winkel, die du in diesem Koordinatensystem berechnet hast, auch als solche erkennbar.

Allerdings löst das dein eigentliches Problem nicht. Denn du willst ja, daß 1km in O-W genauso viele Pixel lang ist, wie 1km in N-S. Und das ist das, was deine Landkarte vor der Streckung anzeigt - die Winkel sind also tatsächlich schief, und deine berechneten Strecken sind weiterhin falsch.

Eine reale N-S-Koodinate in km bekommst du durch

[mm] $x=\frac{lon}{180°}*\pi*r_E*\cos(lat)$ [/mm]

[mm] $y=\frac{lat}{180°}*\pi*r_E$ [/mm]

[mm] r_E [/mm] ist der Erdradius von 6370km.

Das sind die Abstände vom Äquator und vom Nullmeridian, und zwar schon auf der Kugeloberfläche. Und wie gesagt, so lange die Strecken und Entfernungen nicht zu groß werden, kannst du damit wie bisher weiter rechnen.


Bezug
                                                                
Bezug
GeoKoordinaten rechter winkel: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:09 Mi 20.11.2013
Autor: corema

Jetzt hab ich verstanden wieso weshalb warum :)
Vielen Dank!

Da werde ich mal sehen, wie ich das mit dem Vektor umsetzen kann.


Für die Distanzmessung habe ich nun diese beiden Rechenwege verwendet:
1. Konvertierung von LatLng-Koordinate in einen Punkt mit XYZ
2. Distansberechnung über die gekrümmte Strecke (Kreisbogen)

Zu empfehlen ist die 2. Variante finde ich, da diese vom PC schneller berechnet wird und sie zudem genauer sein soll.

Ich habe die Formeln, die du mir gegeben hast verwendet, aber kommt es kommt aus irgend einem Grund nichts vernünftiges raus. Ich habe die Formel auf die LatLng Koordinaten angewendet und einen Vektor zwischen zwei Punkten erstellt. Doch die die Länge des Vektors ist beinahe null

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Lineare Algebra / Vektorrechnung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de