[openGl]Darstellung von X-Y Koordinaten
-
Hallo,
ich habe in 2 Double-Arrays jeweils ca. 6000 Koordinaten (ein Array x-, ein Array y-Koordinaten) eines Strassenverlaufs. Nun würde ich diesen gerne mit OpenGl visualisieren.
Mein Problem ist allerdings, dass ich absolut nicht weiß, wie ich das machen kann.
Wenn ich zum Beispiel nen Polygonzug erstellen will sehen die Koodinaten ja eher folgendermassen aus : {.5f,0.0f,0.0f}.
Meine Daten sind aber Meterangaben. Also hat ein Punkt zum Beispiel die Koordinaten :
(5.8064001395563747e-001 -3.0492680536625949e-001) (x,y)
Wie kann ich sowas darstellen, bzw. funktioniert das überhaupt ?Gruss der Icebear
-
hast du also nur punkte ohne jegliche topologie?
rapso->greets();
-
Hallo,
ja es sind nur x-y-Punkte. Im Moment beschreiben sie auch nur eine geschlossene Strecke, aber die Methoden um daraus linken und rechten Strassenrand zu berechnen habe ich schon.
Im Moment würde es mir ja erstmal reichen, diese Linie zu zeichnen.
Gruss Lars
-
Zur Darstellung müssen die Zahlen auf den jeweils nächsten float gerundet werden. Macht aber IMHO nix, da ehh alles durch die Bildschirmauflösung begrenzt ist.
Bye, TGGC (Dem beste BdT)
-
Danke für die Antwort,
aber stelle ich sie dar ? Mit nem Polygonzug, oder mit etwas anderem ?
Und ist es möglich die Koordinaten direkt aus den Arrays zu verwenden ?Gruss Lars
-
Was bitte ist ein Polygonzug?
Meinst Du ein "Strip" aus Polygonen?
Du mußt die Real-Koords einfach mit 'nem konstanten Faktor runterrechnen...
-
Hallo,
ja ich meine einen Strip aus Linien. Hier habe ich ein Beispiel aus dem Nehe-Tutorial gefunden, nur sehe ich im Moment keine Möglichkeit per Schleife die Koordinaten unterzubringen :
glBegin(GL_LINE_STRIP); glVertex2d( 0,128); glVertex2d(639,128); glVertex2d(639, 1); glVertex2d( 0, 1); glVertex2d( 0,417); glEnd();
Vielleicht könnt Ihr mir da ja helfen...
Es dankt der Lars
-
glBegin( GL_LINE_STRIP ); for( int i = 0; i < Size; i++ ) glVertex2D( XList[ i ], YList[ i ] ); glEnd();
-
Ein "Strip aus Linien" (LINESTRIP) != "Strip aus Polygonen" bzw. "Polygonzug"
-
@ Ahvolon[F-Bytes] : Danke, hätte nicht gedacht, dass das so geht, funktioniert aber Prima *freu*
@ Sgt. Nukem : Stimmt, da hast Du natürlich recht. Hab da etwas durcheinander geworfen.
So, die Strecke ist gezeichnet... Jetzt nur noch die Seitenlinien dazuplotten und schon habe ich eine Strasse. Das wirklich interessante wird aber glaube ich das Problem sein, über die Strasse, die ja nur aus 3 Linetrips besteht eine Textur zu legen... Aber das wird ja auch irgendwie möglich sein.
Gruss Lars
-
Icebear schrieb:
Das wirklich interessante wird aber glaube ich das Problem sein, über die Strasse, die ja nur aus 3 Linetrips besteht eine Textur zu legen...
LOL - ab jetzt wird's lustig... :p
-
Hi,
warum ? Ist das schwer, oder unmöglich ?
-
Icebear schrieb:
Hi,
warum ? Ist das schwer, oder unmöglich ?
nö, ist kein problem. du hast dann halt 3 dünne strichlein die "unterwegs" ein wenig die farbe ändern.
was du willst setzt voraus die punkte links und rechts von der linie zu plazieren und als triangle_strip in der entsprechenden reihenfolge abzulaufen. kurz: die "linie" in der mitte kannst du wegwerfen, weil du sowieso punkte am rand und nicht mittendrin brauchst.
-
Hallo,
ja das habe ich mir auch überlegt. Bzw. die linken und rechten Punkte nicht als Linien sondern als Dreiecke anzeigen zu lassen. Also z.b. die ersten beiden linken Punkte mit dem ersten Rechten, dann den 2. und 3. rechten Punkt mit dem 2. Linken und so weiter...
Gruss Lars, der leider keine Zeit hat am Wochenende um das auszuprobieren...
-
Icebear schrieb:
nicht gedacht
Das übliche Problem.
Bitte lesen. Danke.
Bye, TGGC (Reden wie die Großen)
-
Icebear schrieb:
Hi,
warum ? Ist das schwer, oder unmöglich ?
Nein, ist es nicht.
Es ist nur Quatsch, erst auf LINESTRIPS aufzubauen, wenn Du den Kram eh texturieren willst...
Dafür brauchst Du halt die Polygone (im Normalfall Dreiecke)...
Womit mir wieder am Anfang wären.