Das benutzerdefinierte Markersymbol von Google Maps v3 behält seine Position auf der Karte nicht bei

8

Entwickeln mit Google Maps v3.

Aus irgendeinem Grund ändert mein benutzerdefiniertes Markersymbol seine Position beim Heranzoomen. Es sieht so aus, als hätte es eine Art "Padding" -Eigenschaft, die sich nicht zusammen mit Zoom ändert.

Dies bedeutet, dass die Position beim maximalen Zoom korrekt ist (18), aber wenn ich den Zoom-Wert ändere, "bewegt" er sich ein wenig nach oben, was bei kleineren Zoom-Werten Probleme verursacht, weil er scheinbar nicht aktiviert ist gleiche Position wie es ist.

Der Marker ist definiert als:

%Vor%

Das kann vielleicht helfen: Das Markierungssymbol hat eine quadratische Form, 100x100px, und sein Mittelpunkt befindet sich in der Mitte des Bildes, nicht auf der Unterseite wie "normale" Markierungen.

UPDATE: Muss ich etwas mit der Ankereigenschaft machen?

    
user198003 17.02.2012, 01:36
quelle

4 Antworten

5

Sie müssen den Anker des Markers setzen. Die Standardeinstellung ist Mitte unten.

Siehe Ссылка

    
puckhead 17.02.2012, 01:45
quelle
3

Anstatt nur einen Marker zu verwenden, verwenden Sie auch ein MarkerImage, das als Marker verwendet wird.

In diesem Beispiel verwende ich eine Markierung, die ein Kreis mit einem Punkt in der Mitte ist, also möchte ich immer zentriert.

Beispiel

%Vor%     
dwbrito 07.11.2013 18:04
quelle
1

Aufgrund Ihrer Beschreibung von "padding" klingt das nach einem Problem mit der Positionierung Ihres MarkerImages. Versuchen Sie, die Ankereigenschaft von MarkerImage zu optimieren. Standardmäßig befindet sich der Anker in der unteren Mitte des Bildes. Wenn Sie möchten, dass das Bild zentriert wird, müssen Sie den Anker um die Hälfte der Größe des Bildes nach unten verschieben, um es zu zentrieren.

Siehe Ссылка als Referenz.

    
ohaal 17.02.2012 01:47
quelle
0

Siehe die Ankereigenschaft im Symbol: anchor: new google.maps.Point (0, 0)

%Vor%     
huahax 10.02.2017 13:23
quelle