Archiv verlassen und diese Seite im Standarddesign anzeigen : Polygone
Ich möchte die Umrisse der Länder der Erde in ein Canvas zeichnen. Die Koordinaten hab ich, auch schon umgerechnet auf die Canvas-Koordinaten.
Das Problem ist, daß alle Länder aus zusammen 238.254 Punkten bestehen. Und die Canvas->Polygon-Funktion von BCB ist schon bei 50 Punkten viel zu langsam. Ein Land hat im Durchschnitt 1.000 Eckpunkte.
Kennt jemand wesentlich schnellere Verfahren? Da das Bild nicht auf dem Bildschirm angezeigt werden soll, sondern später zu einem GIF konvertiert wird und dann über´s Internet verschickt wird (es ist eine Webserver-Anwendung), scheidet sowas wie DirectX meines Wissens aus. (Es sei denn, damit kann man auch nicht auf den Bildschirm malen.)
Alle Anregungen sind willkommen! Danke!
Hat sich schon erledigt :)). Der Flaschenhals war nicht die Canvas-Funktion, sondern der Datenbankzugriff. Die Daten kommen jetzt direkt aus einer lokalen Datei, und die Erde wird in einer Sekunde gezeichnet :).
Diogenes
30.01.2002, 18:51
@nj0y
Entschuldige bitte die Indiskretion, aber wie machst Du die Polygone (als solche?)
Ich bin mir nicht sicher, ob ich Deine Frage verstanden habe. Wenn Du meinst, wie ich sie zeichne: Mit der Funktion Canvas->Polygon von BCB. Die wiederum ruft auch nur die WINAPI-Funktion Polygon auf.
Diogenes
30.01.2002, 19:52
Nein. Ich würde gerne wissen, wie Du zu den Polygonen kommst.
Die Firma ESRI (http://www.esri-germany.de) verkauft Software und Karten. Wir (die Firma, wo ich arbeite) haben uns eine Testlizenz zukommen lassen. Die Software ist für uns als unbrauchbar eingestuft worden, aber Karten sind gern gesehen :). Sie liegen im ESRI-Shapefile-Format vor, das auch gut dokumentiert ist, daher war das kein Problem.
Diogenes
01.02.2002, 14:22
Danke, werd´s ansehen
Hi
@nj0y
kannst du mir mal das Ergebnis zeigen??
Interessiert mich!!
http://nj0y.de/pics/erde.png
Der Massstab ist noch gelogen, war erstmal nebensächlich.
Diogenes
08.02.2002, 13:51
@nj0y
Bitte, wo ist das ESRI-Shapefile-Format dokumentiert? Ich finde nichts! ;(
Hier: http://arconline.esri.com/arconline/whitepapers.cfm?PID=17
Diogenes
09.02.2002, 11:50
Merci!
Jetzt werd´ ich mir wiklich ansehen1 :D
Diogenes
11.02.2002, 18:10
@nj0y: So. jetzt habe ich ein paar Blicke darauf geworfen. Einige Fragen bleiben aber:
Wozu ist der dBASE-Teil da?
Beziehen sich die Koordinaten auf die fertig projizierte Karte oder auf die Kugel?
Danke für´s Antworten!
Original von Diogenes
Wozu ist der dBASE-Teil da?
Da stehen Zusatzinformationen drin wie z. B. der Ländername. Ist für das reine Zeichnen aber nicht erforderlich.
Original von Diogenes
Beziehen sich die Koordinaten auf die fertig projizierte Karte oder auf die Kugel?
Das Shapefile-Format an sich macht keine Aussage über die Koordinaten. Wie Du siehst, sind im Shapefile-Format vierdimensionale Koordinaten vorgesehen.
In der Regel werden aber nur X und Y benutzt, welche den geläufigen Längen- und Breitengraden entsprechen. Auf eine Kugel projizieren mußt Du das dann selber, wenn Du das willst. In meinem Beispielbild von oben habe ich das ganze auf ein Rechteck projiziert, weshalb auch die Antarktis so groß ist :D.
Für die vernünftige Projizierung gibt es aber einige hundert Algorithmen, die je nach Zweck und Ausschnitt der Karte eingesetzt werden. Es gibt winkeltreue Projektionen (wie meine oben), flächentreue Projektionen (die sind z. B. in Weltaltanten gebräuchlich) und noch andere. Und von jeder Projektion gibt es wieder mehrere verschiedene Arten.
Wenn Du Dich mal mit Gauss-Krüger-Koordinaten beschäftigt hast, wirst Du alleine dafür unzählige Verfahren finden, die auch alle ein unterschiedliches Ergebnis liefern. Genauer gesagt, das Verfahren ist überall gleich, aber die verwendeten Parameter sind unterschiedlich. Siehe z. B. http://home.t-online.de/home/Bernd.Scherer/koord.htm, da kannst Du unten vier verschiedene Ellipsoiden einstellen.
Die Kartendaten, die ich bisher bekommen habe, sind alle im Bessel-Ellipsoid (von dem es übrigens zwei Varianten gibt, um nochmal auf die Vielfältigkeit hinzuweisen).
Das ganze ist ein sehr komplexes Thema... aber Du wolltest bestimmt nur wissen, daß die Koordinaten in der Regel in Längen- und Breitengraden in der Datei sind :D.
Diogenes
11.02.2002, 19:13
Das heißt also, daß das Shapefile-Format den Globus selbst darstellt, oder etwa nicht?
Die Frage hab ich glaub ich nicht ganz verstanden :).
Also für Deutschland wären z. B. folgende Werte im Shapefile:
X = 7.5
Y = 52
Z = 0
M = 0
Wenn das nicht das war, was Du wissen wolltest, frag nochmal präziser ;).
Diogenes
11.02.2002, 19:23
Heißt das 7.5 Grad Ost und 52 Grad Nord?
Diogenes
13.02.2002, 18:31
Danke.
Jetzt wird die Sache interessant.
... abgesehen davon, daß Deutschland als zweidimensionales Objekt sich nicht auf einem Punkt befinden kann. :)
Original von Diogenes
... abgesehen davon, daß Deutschland als zweidimensionales Objekt sich nicht auf einem Punkt befinden kann. :)
... irgendwas ist ja auch immer... ;)
Bra!NSHiT
19.04.2003, 01:34
Gehe ich richtig davon das es sich hier um das ArcMap Programm handelt von ESRI ?
Ich habe dazu eine Dokumentation geschrieben. (ArcEdit und ArcMap)
Wer die haben will, soll sich melden.
Tschau
Diogenes
21.04.2003, 21:11
Hier!
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.