Ich versuche, eine Karte basierend auf einem Bild, das 16384x16384 px ist, zu erstellen, aber ich möchte auch Marker an bestimmten Orten mit Pixel-Koordinaten dieses gegebenen Bildes hinzufügen.Wie Pixelkoordinaten in Broschüre projizieren?
Ich habe eine Fliesenschicht, ein Kartenelement und eingestellten maximale Grenzen, so dass ich nicht das Bildes bewege heraus kann, mit diesem Code:
var map = L.map('map', {
maxZoom: 6,
minZoom: 2,
crs: L.CRS.Simple
}).setView([0, 0], 2);
var southWest = map.unproject([0,16384], map.getMaxZoom());
var northEast = map.unproject([16384,0], map.getMaxZoom());
map.setMaxBounds(new L.LatLngBounds(southWest, northEast));
L.tileLayer('tiles/{z}/{x}/{y}.png', {
tms: true
}).addTo(map);
Die Punkte i hinzufügen möchte die Karte in einer externen Datei als GeoJSON gespeichert sind, und sie sehen aus wie dieses http://www.de-egge.de/maps/terranigma/terraPoints.js
ich lade sie diesen Code-snippet mit:
var terraPoints = new L.geoJson(points, {
onEachFeature: function (feature, layer) {
layer.bindPopup(
"<b>Ort: </b>" + feature.properties["points[, 1]"]
);
}
});
map.addLayer(terraPoints);
Aber natürlich, sie nicht s wie hoch, weil die Referenzsysteme nicht übereinstimmen. Die Punkte verwenden Pixelkoordinaten, aber meine Karte verwendet geografische Koordinaten.
Gibt es eine Möglichkeit, die Punkte beim Laden zu "unprojizieren"?
Jede Hilfe wird sehr geschätzt und danke im Voraus!
Es funktioniert, danke. Ich musste nur die 'geojsonMarkerOptions' angeben – DeEgge