Как я могу наложить SVG-диаграммы на Google Maps?
Я хотел бы добавить наложение изображения на карту Google. Изображение - это сгенерированный мной файл SVG (Python с SVGFig).
Я использую следующий код:
<code>if (GBrowserIsCompatible()) { var map = new GMap2(document.getElementById("map_canvas")); map.setCenter(new GLatLng(48.8, 2.4), 12); // ground overlay var boundaries = new GLatLngBounds(new GLatLng(48.283188032632829, 1.9675270369830129), new GLatLng(49.187215000000002, 2.7771877478303999)); var oldmap = new GGroundOverlay("test.svg", boundaries); map.addControl(new GSmallMapControl()); map.addControl(new GMapTypeControl()); map.addOverlay(oldmap); } </code>
Удивительно, но он работает с Safari 4, но не работает с Firefox (в Safari 3 фон не прозрачный).
У кого-нибудь есть идеи, как я могу наложить SVG?
PS1: я читал некоторые работы, такие какэт или исходный код swa.ethz.ch/googlemaps, но, похоже, им приходится использовать код JavaScript для анализа SVG и добавления по одному всех элементов (но я не понял весь источник ...).
PS2: SVG состоит из различных заполненных контуров и окружностей с прозрачностью. Если нет решения для наложения SVG, я могу использовать 2 альтернативных решения:
увеличить SVG конвертировать пути и круги в GPolygonsНо мне не очень нравится первое решение из-за низкого качества растрового изображения и времени, необходимого для его создания с сглаживанием.
А для 2-го решения дуги, эллипсы и окружности нужно будет разложить на маленькие полилинии. Многие из них будут необходимы для хорошего результата. Но мне нужно нарисовать около 3000 дуг и кругов, так что ...