本帖最后由 yuandongze 于 2010-10-15 16:51:41 编辑

解决方案 »

  1.   

    你应该把窗体坐标转换为地图坐标后,再比较。Google earth肯定有这个转换接口
      

  2.   

    1L,3L的方法我想一想。有没有人知道API呢 0.04L
    数据库中直接是通过卫星获取的地图坐标
    我觉得也应该有相应API可是没找到 - -
      

  3.   

    都是网络搜索结果.试试
    public List<Address> getFromLocation或者
    //从地址Geopoint取得Address
                public String getAddressbyGeoPoint(GeoPoint gp)
                {
                  String strReturn = "";
                  try
                  {
                    /* 创建GeoPoint不等于null */
                    if (gp != null)
                    {
                      /* 创建Geocoder对象,用于获得指定地点的地址 */
                      Geocoder gc = new Geocoder(Map_index.this, Locale.getDefault());
                      
                      /* 取出地理坐标经纬度*/
                      double geoLatitude = (int)gp.getLatitudeE6()/1E6;
                      double geoLongitude = (int)gp.getLongitudeE6()/1E6;
                      
                      /* 自经纬度取得地址(可能有多行)*/
                      List<Address> lstAddress = gc.getFromLocation(geoLatitude, geoLongitude, 1);
                      StringBuilder sb = new StringBuilder();
                      
                      /* 判断地址是否为多行 */
                      if (lstAddress.size() > 0)
                      {
                        Address adsLocation = lstAddress.get(0);                    for (int i = 0; i < adsLocation.getMaxAddressLineIndex(); i++)
                        {
                          sb.append(adsLocation.getAddressLine(i)).append("\n");
                        }
                        sb.append(adsLocation.getLocality()).append("\n");
                        sb.append(adsLocation.getPostalCode()).append("\n");
                        sb.append(adsLocation.getCountryName());
                      }
                      
                      /* 将取得到的地址组合后放到stringbuilder对象中输出用 */
                      strReturn = sb.toString();
                    }
                  }
                  catch(Exception e)
                  {
                    e.printStackTrace();
                  }
                  return strReturn;
                }
      

  4.   

    看错.好像不是google map的代码.
      

  5.   

    http://topic.csdn.net/u/20091216/10/b73f33ba-831d-4ff5-b727-83d586615b78.html?seed=191105229&r=63902908
      

  6.   

    这个看似很深啊,楼主得到答案以后分享一下吧已解决
    http://topic.csdn.net/u/20101020/11/20c15f99-3fd1-480f-9108-4bee2aad3874.html
      

  7.   

    插入java    var geocoder = null;
        function addAddressToMap(response) {
          if (!response || response.Status.code != 200) {
            alert("对不起,不能解析这个地址");
          } else {
            
            var add="";
            for(var i=0;i<response.Place.length;i++)
            {
                add+=response.Place[i].address+" | ";
            }
            alert("您查找的位置是 : " + add);
          }
        }
        function showLocation(address) {    if (GBrowserIsCompatible()) {
             geocoder = new GClientGeocoder();
             geocoder.getLocations(address, addAddressToMap);
          }
        }showLocation('29.82039127614494,116.4162826538086');
      

  8.   

        <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAZNVcM3B5rUU5SJeXURUaBxTBfUk9TZrBRaIteybtnU2KziHEpRTn4b5CncoKZUG6YvDa1nKeST_Y5A"
          type="text/javascript"></script>