Javascript GeoXml3-自定义地图分幅

Javascript GeoXml3-自定义地图分幅,javascript,google-maps-api-3,geoxml3,Javascript,Google Maps Api 3,Geoxml3,解决方案 看起来我有一些来自谷歌KML层的遗留代码 隐藏了我的自定义磁贴,而不是GeoXML3 原始问题 我想知道是否可以使用顶部带有GeoXml KML层的自定义图像平铺 当前,渲染图层时,贴图上的所有其他内容都将消失 除非在创建图层时将“preserveViewport”设置为true,否则Google KMLLayer也会发生同样的情况 有人知道GeoXML3是否有类似的选项吗?或者实现该功能有多困难 这是我的地图初始化代码: var centerCoords = new google.m

解决方案

看起来我有一些来自谷歌KML层的遗留代码 隐藏了我的自定义磁贴,而不是GeoXML3

原始问题
我想知道是否可以使用顶部带有GeoXml KML层的自定义图像平铺

当前,渲染图层时,贴图上的所有其他内容都将消失

除非在创建图层时将“preserveViewport”设置为true,否则Google KMLLayer也会发生同样的情况

有人知道GeoXML3是否有类似的选项吗?或者实现该功能有多困难

这是我的地图初始化代码:

var centerCoords = new google.maps.LatLng(66.722541, -140.625000);
var mapOptions = {
    center: centerCoords,
    zoom: 4,
    streetViewControl: false,
    mapTypeControlOptions: {
        mapTypeIds: ['Atlas', 'Satellite', 'Road']
    }
};

map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
map.mapTypes.set('Atlas', mapAtlas);
map.mapTypes.set('Satellite', mapSatellite);
map.mapTypes.set('Road', mapRoad);
map.setMapTypeId('Atlas');
现在,如果我使用此工具进行渲染,效果会很好,KML将出现在我的自定义平铺上:

var kmlLayer = new google.maps.KmlLayer({
        url: 'http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml',
        preserveViewport: true
    });
kmlLayer.setMap(window.map);
重要的部分是“preserveViewport”-如果没有它,除了KML层之外的所有内容都将被隐藏(我的自定义标记和平铺)

使用GeoXml3解析器也会发生同样的情况(所有内容都被隐藏):

var myParser = new geoXML3.parser({map: window.map});
myParser.parse('cta.xml');

KML文件是相同的。我认为这是因为没有这样的“预渲染视口”选项?

geoxml3阻止它在数据上缩放和居中地图的选项是:

zoom    boolean true    
如果true,解析KML文档完成后,解析器将自动将地图移动到地理数据的最佳匹配位置

(如上所述,默认为true,设置为false以防止该行为)


你的代码看起来像什么?Geoxml3只是将KML转换为本机GoogleMapsJavaScriptAPIv3对象,所以如果自定义地图有奇怪的坐标,它可能会这样做。但很难说没有看到一个例子。为回应欢呼。。。。它现在似乎工作得很好。我认为可能有旧的谷歌KML代码的残余在那里(没有预渲染视口选项集)。最后一个问题,是否可以将KML用于街道名称?并在多段线上显示街道名称。我不这么认为,但我希望得到专家的确认!更新似乎你已经回答了这个问题:这个问题一团糟。请删除要忽略的部分。我们可以使用历史记录查看帖子的早期版本。