k24:k24.8:k24.8.2:start
Inhaltsverzeichnis
24.8.2 Geo
Die Klasse Geo (gb.map) stellt Werkzeuge zum Bearbeiten von Karten-Projektionen und zur Formatierung von geografischen Daten bereit.
24.8.2.1 Methoden
Die Klasse Geo verfügt über diese Methoden:
| Methode | Rückgabetyp | Beschreibung |
|---|---|---|
| DecToSex(Value As Float, Typ As Integer) | String | Die Funktion formatiert den Wert in einen sexagesimalen Wert. Für den Typ gilt: Latitude = 1 und Longitude = 2. |
| SexToDec(Value as String) As Float | Float | Die Funktion berechnet einen Breiten- oder Längenwert aus einem geeignet formatierten sexagesimalen (String-)Wert. |
| MapPointToPixel(hMapPoint as MapPoint, Zoom As Integer) | Point | Die Funktion konvertiert die Koordinaten eines geographischen Punktes (Breite/Länge) in einen Bildpunkt zu einer bestimmten Zoom-Stufe. |
| MapPointToTile(hMapPoint as MapPoint, Zoom As Integer) | Point | Die Funktion konvertiert die Koordinaten eines geographischen Punktes (Breite/Länge) in Karten-Koordinaten (xTile/yTile) zu einer bestimmten Zoomstufe. |
| PixelToMapPoint(hPoint As Point, Zoom As Integer) | MapPoint | Die Funktion wandelt die Koordinaten eines Punktes in Pixel-Koordinaten bei einem bestimmten Zoom-Faktor in die geografischen Koordinaten Breite und Länge. |
| PixelToTile(hPoint As Point) | Point | Die Funktion konvertiert Pixel-Koordinaten in Karten-Koordinaten. |
| TileBounds ( X As Integer, y As Integer, Zoom As Integer ) | MapBounds | Gibt einen MapBounds-Objekt zu einer bestimmten Kachel (xTile / yTile) mit gegebenem Zoom-Faktor zurück. |
| TileToMapPoint ( X As Integer, y As Integer, Zoom As Integer ) | MapPoint | Gibt den linken oberen MapPoint zu einer bestimmten Kachel (xTile / yTile) mit gegebenem Zoom-Faktor zurück. |
Tabelle 24.8.2.1.1 : Methoden der Klasse Geo
24.8.3 Map
Die Klasse Map enthält die Routinen, um die Karten zu zeichnen. Nach der Initialisierung haben Sie die Möglichkeit den Kartenausschnitt zu ändern sowie den Zoom-Faktor zu verändern. Hier ein Beispiel dafür, wie Sie eine Karte initialisieren und anzeigen:
Public Sub ShowMap() Dim iZoom As Integer Dim fLatitude, fLongitude As Float Dim sCacheName, sTileName, sTilePattern As String Dim cArguments As New Collection ' Initialisierung iZoom = 13 sTileName = "OpenStreetMap" sTilePattern = "85.30.190.241/{z}/{x}/{y}.png" cArguments = Null sCacheName = Null fLatitude = 52.7905 ' °Breite Osterburg fLongitude = 11.7531 ' °Länge Osterburg MapView1.Map.AddTile(sTileName, sTilePattern, cArguments, sCacheName) MapView1.Map[sTileName].Copyright = " © OpenStreetMap" MapView1.Map[sTileName].Visible = True ' optional; Standard-Einstellung ist TRUE MapView1.Map.AddShape("P1") MapView1.Map!P1.AddPoint("Osterburg", MapPoint(fLatitude, fLongitude)) MapView1.Map.Center = MapPoint(fLatitude, fLongitude) ' MapView1.Map.Center = MapView1.Map!P1!Osterburg.Points ' Alternative Zentrierung auf die Marke P1 MapView1.Map.Zoom = iZoom MapView1.AllowEffect = True End ' ShowMap()
Mit diesen beiden Zeilen aus dem o.a. Quelltext-Ausschnitt fügen Sie eine markante Markierung in die angezeigte Karte ein:
MapView1.Map.AddShape("P1")
MapView1.Map!P1.AddPoint("Osterburg", MapPoint(fLatitude, fLongitude))
Download
k24/k24.8/k24.8.2/start.txt · Zuletzt geändert: von 127.0.0.1

