Как отключить данные POI карты с помощью googlemaps в gmaps4rails?

Я использую карты Google для веб-приложения, в котором мы вводим свои собственные данные о местоположении для маркеров, и заметил, что при более высоких настройках масштабирования данные карт Google просвечивают, буквально лишая смысла иметь пользовательские данные карты.

Я использую gmaps4rails и имею код gmaps JSON из редактора Google Maps API v3 Styled Maps JSON и не могу получить для этого правильную область обратного вызова.

Любые идеи, где я должен разместить это? Обратный вызов не позволяет этому работать. (и я сосать JS)

Спасибо!


person keade    schedule 06.03.2012    source источник
comment
Мне нужно больше деталей, чтобы понять вашу проблему.   -  person apneadiving    schedule 06.03.2012
comment
Попытка внедрить пользовательские параметры Google Maps API v3 Styled Maps JSON, чтобы сделать скин каждой карты одинаковым, создав карту «нестандартного цвета». Прямо сейчас вставка через обратный вызов и передача параметров не работает, и мне интересно, лучший ли это способ указать эти изменения- gmaps-samples-v3.googlecode.com/svn/trunk/styledmaps/wizard/ — использование этого JSON для скина карты   -  person keade    schedule 06.03.2012


Ответы (1)


Хорошо, я взял пример из здесь. Просто сделать:

<script type="text/javascript" charset="utf-8">
Gmaps.map.callback = function() {
var pinkParksStyles = [
  {
    featureType: "all",
    stylers: [
      { saturation: -80 }
    ]
  },
  {
    featureType: "poi.park",
    stylers: [
      { hue: "#ff0023" },
      { saturation: 40 }
    ]
   }
  ];

  Gmaps.map.map.setOptions({styles: pinkParksStyles});
}
</script>

Другое решение вместо использования обратного вызова:

<script type="text/javascript" charset="utf-8">
var pinkParksStyles = [
  {
    featureType: "all",
    stylers: [
      { saturation: -80 }
    ]
  },
  {
    featureType: "poi.park",
    stylers: [
      { hue: "#ff0023" },
      { saturation: 40 }
    ]
  }
];
</script>

<%= gmaps(:map_options => { :raw => "{styles: pinkParksStyles}" },
          #... whatever you need
    )
%>
person apneadiving    schedule 06.03.2012
comment
Да, я пропустил 'Gmaps.map.map.setOptions({styles: pinkParkStyles}); Спасибо, что напомнили о моем нубе! - person keade; 07.03.2012
comment
Я определенно ненавижу свой тупой синтаксис: Gmaps.map.map но я не знаю, как плавно отказаться от поддержки - person apneadiving; 07.03.2012
comment
Разве это не должно быть сделано вне обратного вызова? Теперь, когда я прочитал функциональность обратного вызова из вики, кажется, что он загружается после создания карты и элементов. Казалось бы, чтобы скрыть карту, код должен быть на стадии «создания»? - person keade; 07.03.2012
comment
Кроме того, с приведенной выше настройкой как есть, это вообще не скин. - person keade; 07.03.2012
comment
Обратный вызов — это способ работы с драгоценным камнем или, возможно, использование «сырой» опции, которую вы можете передать помощнику gmaps. Я заставил его работать с кодом выше, так в чем ваша ошибка? - person apneadiving; 07.03.2012
comment
Вы знаете, что это было? Я провел рефакторинг отдельного обратного вызова, а затем вставил его в свой application.erb, я объединил их, и мы стали золотыми. Спасибо, что заставили меня задуматься! Ваше здоровье - person keade; 07.03.2012
comment
Я забыл отредактировать вики с этой полезной опцией конфигурации, теперь она там правильно задокументирована. - person apneadiving; 07.03.2012