Como posso sobrepor diagramas SVG no Google Maps?
Gostaria de adicionar uma imagem de sobreposição em um mapa do Google. A imagem é um arquivo SVG que eu criei (Python com SVGFig).
Estou usando o seguinte código:
<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>
Surpreendentemente, funciona com o Safari 4, mas não funciona com o Firefox (com o Safari 3, o fundo não é transparente).
Alguém tem uma ideia de como eu poderia sobrepor um SVG?
PS1: Eu li alguns trabalhos comoisto ou o código-fonte de swa.ethz.ch/googlemaps, mas parece que eles precisam usar o código JavaScript para analisar o SVG e adicionar um por um todos os elementos (mas eu não entendi toda a fonte ...).
PS2: O SVG é composto por diferentes caminhos e círculos preenchidos, com transparência. Se não houver solução para sobrepor meu SVG, posso usar duas soluções alternativas:
rasterize o SVGconverter os caminhos e círculos em GPolygonsMas eu realmente não gosto da primeira solução por causa da má qualidade do bitmap e do tempo para gerá-lo com o antialiasing.
E para a segunda solução, os arcos, elipses e círculos terão que ser decompostos em pequenas polilinhas. Muitos deles serão necessários para um bom resultado. Mas eu tenho cerca de 3000 arcos e círculos para desenhar, então ...