Distanzberechnung zweier Orte über Längen und Breitengrade

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Zitat von AmicaNoctis Beitrag anzeigen
    Du hast eine Funktion, welche die Distanz zwischen zwei Punkten berechnet. Also sollte sie mit 2 Punkten aufgerufen werden, oder - der Einfachheit halber - mit vier Komponenten (lat1, lon1, lat2, lon2). Die bekommst du aus der Datenbank, wenn du ein Select auf die beiden IDs machst ([FONT=Courier New]where ... in (...)[/FONT]). Ich sehe da keine besondere Schwierigkeit, vielleicht ist es daher besser, dass du nochmal ganz genau formulierst, wo es denn jetzt hapert, wie, warum und wann.
    Also das beginnt schon beim "Select" ich weiß nicht ob da schon die lat und lon Spalten einbinden muss und wie ich dann genau lat und lon für den einen flughafen und den anderen Flughafen definiere. flughafen_id kann ich ja nicht so einfach benutzen weil ja beide Ids der Flughäfen in der selben Spalte sind.

    Ich kanns nicht genauer erklären.

    Kommentar


    • #17
      Peacie hat dir ja schon einen Ansatz geliefert.

      Kommentar


      • #18
        Zitat von Peacie Beitrag anzeigen
        Ansatz für EIN sql query:

        Code:
        select *, 
        DEGREES(ACOS(SIN(RADIANS(DBLATFELD))
        *SIN(RADIANS(".$LAT_Flugplatz1."))
        +COS(RADIANS(DBLATFELD))
        *COS(RADIANS(".$LAT_Flugplatz1."))
        *COS(RADIANS(DBLONFELD - ".$LON_Flugplatz1."))) * 60 * 1.85201)
        AS Entfernung from DATENBANK 
        where flugplatzid = flugplatz2id
        so in die Richtung ....
        Das habe ich mir eben schon 10 min angeschaut aber erstmal wie deklariere ich lat_Flugplat1 und wie bekomme ich den zweiten Flughafen rein mit lat und lon

        Kommentar


        • #19
          Zitat von Peacie Beitrag anzeigen
          Ansatz für EIN sql query
          ... und eine weitere um an lat,lon von Flugpatz 1 zu kommen.

          @Malchor: Google mal nach SELF JOIN.

          Kommentar


          • #20
            Zitat von Malchor Beitrag anzeigen
            flughafen_id kann ich ja nicht so einfach benutzen weil ja beide Ids der Flughäfen in der selben Spalte sind.
            Da eine Tabelle aber 2-dimensional ist, hat sie auch Zeilen und da stehen die verschiedenen IDs drin, also kannst du ganz leicht darauf zugreifen.

            Davon abgesehen brauchst du ja die IDs nicht nochmal, die hast du ja schon, um das Select überhaupt zu machen (siehe "Bierkasten"). Die Geokoordinaten sind es, die ich an deiner Stelle selecten würde, dann bekommst du 2 Datensätze (einen pro Flughafen) und dort hast du dann die jeweiligen Längen- und Breitengrade als Spalten drin.
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #21
              Zitat von onemorenerd Beitrag anzeigen
              @Malchor: Google mal nach SELF JOIN.
              @onemorenerd: Ich versteh grad nicht, was der Self Join damit zu tun hat. Die Koordinaten-Tabelle ist nicht selbstrefenzierend.

              @Malchor: Es würde helfen, wenn du mal die Tabellendefinitionen postest ([FONT="Courier New"]show create table ...;[/FONT]), dann kann man die hier bereits gelieferten (aber abstrakten) Ansätze konkretisieren.
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Kommentar


              • #22
                Habe diese show abfrage bei phpmy admin gemacht. Ich habe aber diese komische Ausgabe bekommen: Table Create Table Flughafen CREATE TABLE

                `Flughafen` (
                `flughafenid` varchar...
                Zuletzt geändert von Malchor; 14.10.2009, 00:50.

                Kommentar


                • #23
                  Zitat von Malchor Beitrag anzeigen
                  Ich habe aber diese komische Ausgabe bekommen
                  Genau die meine ich auch, nicht das, was du gerade eben kopiert hast. Wenn du so nett bist und die dann noch formatiert postest (Umbruch nach "(" und ","), bin ich völlig zufrieden. Und das ganze dann bitte noch für die anderen Tabellen, die evtl. benötigt werden.

                  Dann noch eine Frage: Geht es zufällig gerade darum, dass du zu jeder Route in der Flugplan-Tabelle die Distanz zwischen Start- und Zielflughafen ermitteln willst? Das war mir noch nicht so ganz klar geworden, wofür du das jetzt genau brauchst.

                  Da es in diesem Thread von Anfang an ziemlich durcheinander ging und du das Vorhaben aus meiner Sicht noch nicht ausreichend geschildert hast, wäre es gut, das nochmal kurz zusammenzufassen. (Darauf wurdest du übrigens bereits mehrfach hingewiesen.)

                  Gruß,

                  Amica
                  [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                  Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                  Super, danke!
                  [/COLOR]

                  Kommentar


                  • #24
                    genau das möchte ich. Zu jeder Route möchte ich die Distanz errechnen danke.



                    Ich habe es wirklich mehrfach versucht genau das zu sagen was du nun richtig interpretiert hast
                    Zuletzt geändert von Malchor; 14.10.2009, 01:11.

                    Kommentar


                    • #25
                      Setzt du bitte mal den Haken bei "vollständige Textfelder anzeigen"? Dass das ja nicht die komplette Ausgabe sein kann, hätte dir auch auffallen können. Dann bitte nur den Inhalt des Textfeldes kopieren und nicht die ganze Tabelle.

                      Achso: und am besten benutzt du den "Ändern"-Button und überschreibst das eben gepostete.
                      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                      Super, danke!
                      [/COLOR]

                      Kommentar


                      • #26
                        Warum hast du jetzt deinen gesamten Desktop als Bild gepostet, statt einfach das bisschen Text zu kopieren? Bitte ändern.

                        Warum benutzt du MyISAM und nicht InnoDB?

                        Für die Fremdschlüssel solltest du erstmal einen Index setzen (und im Idealfall einen foreign key constraint, nachdem du auf InnoDB umgestellt hast).
                        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                        Super, danke!
                        [/COLOR]

                        Kommentar


                        • #27
                          Ich kenne nicht mal den Unterschied zwischen MyISAM und InnoDB

                          Kommentar


                          • #28
                            Zitat von Malchor Beitrag anzeigen
                            Ich kenne nicht mal den Unterschied zwischen MyISAM und InnoDB
                            An deiner Stelle hätte ich mir diesen Kommentar verkniffen und schnell mal nachgesehen, was der Unterschied ist. Deine Eigeninitiative ist mehr als dürftig, genau wie die Problembeschreibung. Deine Behauptung, du hättest mehrfach versucht, es zu erklären, kann ich (nach erneuter kompletter Lektüre dieses Threads) leider nur als Unsinn bezeichnen. Statt des geforderten Textes postest du riesige Bilder mit kaum noch lesbar winzigem Text drin. Tut mir leid, aber ich hab grad keine Geduld mehr und ich habe mich die letzten Posts über schon sehr zusammengerissen.

                            Vielleicht morgen wieder, falls du mal ein paar Hinweise beherzigst, die andere und ich dir bereits gegeben haben.
                            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                            Super, danke!
                            [/COLOR]

                            Kommentar


                            • #29
                              Also versucht habe ich es schon, aber es scheint mir nicht gelungen. Eigeninitiative habe ich normalerweise schon aber ich stehe total auf dem Schlauch! Aber ich dachte auch ein Foto ist übersichtlicher!

                              Kommentar


                              • #30
                                Zitat von onemorenerd Beitrag anzeigen
                                ... und eine weitere um an lat,lon von Flugpatz 1 zu kommen.
                                Jau, dachte, der TE kommt so auf die Lösung.

                                @Malchor: Was ich nicht nachvollziehen kann ist, du wirst ja irgendwas mit diesen Daten anfangen. Anhand des Flugplanes z.B. die passenden Flughäfen auf einer Seite Ausgeben.
                                Dort solltest Du doch alle Daten die Du brauchst, zur Verfügung haben.
                                Der Rest ist doch nur rechnerei....

                                Kommentar

                                Lädt...
                                X