Google maps Google Maps V3 Javascript获得与KML和标记一起使用的边界
我正在制作一张地图,其中KML负载和标记加载在同一画布上,我希望边界无论标记有多大,即使KML在画布上。我将其与php结合使用,因此代码中有一些php,但除了输入变量信息之外,没有什么特别之处Google maps Google Maps V3 Javascript获得与KML和标记一起使用的边界,google-maps,google-maps-markers,kml,bounds,Google Maps,Google Maps Markers,Kml,Bounds,我正在制作一张地图,其中KML负载和标记加载在同一画布上,我希望边界无论标记有多大,即使KML在画布上。我将其与php结合使用,因此代码中有一些php,但除了输入变量信息之外,没有什么特别之处 <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script> <script type="text/javascript">
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
jQuery(document).ready(function($) {
if ($('#map_canvas').length != 0) {
var myLatlng = new google.maps.LatLng(45.266438, -93.233225);
var myOptions = {
zoom: 4,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var bounds = new google.maps.LatLngBounds();
var kmlLayer = new google.maps.KmlLayer('<?php bloginfo('template_url'); ?>/includes/delivery-maps/mansettisdel.kml', { map: map });
var jsongeo = <?php echo(json_encode($geo_json)); ?>;
$.each(jsongeo, function(index, value) {
var latlng = new google.maps.LatLng(value.lat,value.lng);
var marker = new google.maps.Marker({
position: latlng,
map: map,
title:"Hello World!"
});
bounds.extend(latlng);
map.fitBounds(bounds);
});
}
});
</script>
jQuery(文档).ready(函数($){
如果($('#映射画布')。长度!=0){
var mylatng=newgoogle.maps.LatLng(45.266438,-93.233225);
变量myOptions={
缩放:4,
中心:myLatlng,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
var map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
var bounds=new google.maps.LatLngBounds();
var kmlLayer=new google.maps.kmlLayer('/includes/delivery-maps/mansettisdel.kml',{map:map});
var jsongeo=;
$.each(jsongeo,函数(索引,值){
var latlng=新的google.maps.latlng(value.lat,value.lng);
var marker=new google.maps.marker({
位置:latlng,
地图:地图,
标题:“你好,世界!”
});
边界扩展(latlng);
映射边界(bounds);
});
}
});
这里是我正在通过lat和longitude循环的json的var_转储
字符串(617)“[{”类型“:”交付“,”lat“:”45.341969“,”液化天然气“:”-93.277657“,”日期“:”2011-07-11“},{”类型“,”交付“,”lat“:”45.005360“,”液化天然气“:”-93.323738“,”日期“:”2011-07-12“,”交付“,”lat“,”日期“,”2011-07-07-12“,”交付“,”,”lat“,”45.131786“,”液化天然气“,”93.216576“,”交付“,”日期“,”交付“,”44.804131,“液化天然气”:“-93.166885”,“日期”:“2011-07-13”},{“类型”:“交付”,“lat”:“45.119965”,“液化天然气”:“-93.287727”,“日期”:“2011-07-13”},{“类型”:“交付”,“lat”:“42.358433”,“液化天然气”:“-71.059776”,“日期”:“2011-07-13”},{“类型”:“交付”,“lat”:“34.195915”,“液化天然气”:“84.507317”,“日期”:“2011-07-13”
现在,我没有问题的标记通过,但只是边界。我不知道是否还有其他的事情需要我去处理lat,long,但我读了很多这方面的文章,却找不到任何东西
下面是显示的内容。这是我想展示的。
即使KML在地图上,我希望标记是边界。谷歌地图是否会将其设置为KML,或者我是否错误地设置了边界?我注意到它进入边界视图,然后右键进入KML视图。尝试将选项preserveViewport:true添加到KML选项中,使其显示:
var kmlLayer = new google.maps.KmlLayer('<?php bloginfo('template_url'); ?>/includes/delivery-maps/mansettisdel.kml', {
map: map,
preserveViewport: true
});
var kmlLayer=new google.maps.kmlLayer('/includes/delivery-maps/mansettisdel.kml',{
地图:地图,
保存视口:true
});
这将阻止它将其放大到KML边界
尝试将选项preserveViewport:true添加到KML选项中,使其内容如下:
var kmlLayer = new google.maps.KmlLayer('<?php bloginfo('template_url'); ?>/includes/delivery-maps/mansettisdel.kml', {
map: map,
preserveViewport: true
});
var kmlLayer=new google.maps.kmlLayer('/includes/delivery-maps/mansettisdel.kml',{
地图:地图,
保存视口:true
});
这将阻止它将其放大到KML边界