gwt-maps - динамически изменять смещение маркера - PullRequest
2 голосов
/ 09 января 2011

На моем сайте http://www.foodtrucksmap.com/, размеры маркера определяются количеством открытых грузовиков с едой в этом городе. Проблема в том, что когда маркер для Лос-Анджелеса становится слишком большим, похоже, что точка маркера находится либо в океане, либо в Мексике. Эту проблему можно решить, просто сместив ЦЕНТР маркера вдоль оси Y на половину высоты маркера. Я не могу понять, как написать этот код !!

Другой (плохой) вариант - удвоить высоту изображения и оставить кнопку наполовину прозрачной. проблема с этим методом в том, что прозрачная часть изображения будет кликабельной!

Пожалуйста, помогите мне найти решение, спасибо!

Ответы [ 2 ]

0 голосов
/ 08 декабря 2011

Проверьте это пример использования JavaScript API.

1004 * В принципе вы можете определить точки привязки координат вашего пользовательского значка, чтобы действовать в качестве центра маркеров.Вместо того, чтобы использовать середину, используйте нижний конец / край иконки вашего грузовика.Посмотрите на свойство "iconAnchor":
// Create a base icon for all of our markers that specifies the
// shadow, icon dimensions, etc.
var baseIcon = new GIcon(G_DEFAULT_ICON);
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(9, 34); // THIS IS WHAT YOU CARE ABOUT
baseIcon.infoWindowAnchor = new GPoint(9, 2);

В вашем случае вы бы установили значение привязки на что-то вроде:

// Assuming the tip is exactly in the middle at the bottom of the icon
.iconAnchor = new GPoint(iconWidth/2, 0);

Я не использовал упомянутые вами gwt-карты- но поскольку они всегда будут просто оборачивать API JavaScript, вы сможете найти эквивалентное свойство для установки.Можете ли вы дать ссылку на используемую вами реализацию gwt-maps?

0 голосов
/ 08 декабря 2011

создание-таможенно-Google-карт-наложений-с-GWT-виджетов

пользовательский класс наложения

Поскольку вы используете маркеры, ссылки могут не помочь. В моем приложении я перестал использовать маркеры и начал использовать наложения клиентов.

...