搜索和缩放Fusion表格映射到特定点

时间:2013-04-29 13:20:30

标签: search google-maps-api-3 zoom google-fusion-tables layer

我有一个带搜索框的示例融合表地图图层。我想使用该框搜索融合表中的特定位置并缩放到该点。 serach框中的自动完成工作正常,但缩放到特定点是不起作用。有没有其他方法来解决它?我的融合表link is here

1 个答案:

答案 0 :(得分:0)

您需要了解FusionTable中数据的格式。您正在使用geoxml3来解析它,就像它是KML一样,但它是一个双列位置(纬度/经度)。对于该格式,查询这两列,并使用结果居中和缩放地图(您不需要geoxml3)。

            if(searchString == "") {
                var query="SELECT 'Lat','Long' FROM " + tableid;
            }
            else {
                var query="SELECT 'Lat','Long' FROM " + tableid + " WHERE 'Station Name' = '" + searchString + "'";
            }
            zoom2query(query);

        function zoomTo(response) {
            if (!response) {
                alert('no response');
                return;
            }
            if (response.isError()) {
                alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage());
                return;
            } 
            var lat = response.getDataTable().getValue(0,0);
            var lng = response.getDataTable().getValue(0,1);
            var zoom_level = 15;
            var location = new google.maps.LatLng(lat,lng);
            map.setCenter(location);
            map.setZoom(zoom_level);
        }

working example

相关问题