У меня проблема с этим замечательным гемом gmaps4rails.
Можно ли напечатать на карте ломаную линию, между точками которой нет местоположения, которого нет в списке маркеров?
Чтобы быть более понятным, я добавляю этот код, взятый из HTML-страницы, созданной Rails:
<script type="text/javascript" charset="utf-8">
function gmaps4rails_init() {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://google-maps-utility-library-v3.googlecode.com/svn/tags/infobox/1.1.5/src/infobox.js";
document.body.appendChild(script);
Gmaps4Rails.map_options.type = 'TERRAIN';
Gmaps4Rails.map_options.auto_adjust = true;
Gmaps4Rails.initialize();
Gmaps4Rails.markers = [
{"latitude": "41.97", "longitude": "12.67", "description": "DEPARTURE DESCRIPTION HERE", "title": "TITLE HERE"},
{"latitude": "45.58", "longitude": "12.57", "description": "ARRIVE DESCRIPTION HERE", "title": "TITLE HERE"}
];
Gmaps4Rails.create_markers();
Gmaps4Rails.polylines = [
[
{"latitude": "41.97", "longitude": "12.67"},
{"latitude": "42.78", "longitude": "12.6"},
{"latitude": "45.58", "longitude": "12.57"}
]
];
Gmaps4Rails.polylines_conf.strokeColor = '#444444';
Gmaps4Rails.create_polylines();
if(typeof gmaps4rails_callback == 'function') { gmaps4rails_callback(); }
}
window.onload = gmaps4rails_init;
</script>
На карте я хочу, чтобы только начальная точка (41,97, 12,67) и конечная точка (45,58, 12,57) отображались в виде маркеров.
Но я также хочу создать ломаную линию от начальной точки до конечной точки: эта ломаная линия должна пройти от другой промежуточной точки (42.78, 12.6).
Проблема в том, что отображаемая полилиния на карте неверна: линия идет от первой точки к третьей, не проходя через вторую.
Итак, мой вопрос: нужно ли включать в качестве маркеров все точки полилинии?
РЕДАКТИРОВАТЬ: с этой страницы https://github.com/apneadiving/Google-Maps-for-Rails/wiki/Display-Everything! кажется очевидным, что вы можете отобразить ломаную линию, даже если ее точки отсутствуют в списке маркеров.
Итак, почему моя полилиния не отображается правильно?