在百度地图上查询一个住宅小区, 界面会显示一个小区的边界阴影。大小区、新小区有;一些老小区也没有。这些边界坐标有时我们也想拿到,用于在做各种地图相关的计算和展示。
通过百度提供的JS接口LocalSearch的Search方法搜索小区名称,返回LocalResult中包含POI的uid.
http://map.baidu.com/?reqflag=pcmap&from=webmap&qt=ext&uid=680fb703ea53819c8ab988a9&ext_ver=new&l=18
返回值中包含住宅小区的边界: {“content”:{“geo”:”4|12935110.3722,4844973.6228;12935311.2043,4845232.10011|1-12935110.3722,4845027.18418,12935110.5757,4845232.10011,12935295.028,4845223.84613,12935283.3104,4845082.19657,12935311.2043,4845076.61802,12935300.1501,4844973.6228,12935270.6855,4844985.61037,12935170.3042,4845022.58463,12935110.3722,4845027.18418;”,”uid”:”680fb703ea53819c8ab988a9”},”current_city”:…..}
返回结果中小区边界坐标点是米制坐标,转换为百度地图的度表示法才方便使用。
使用BMAP_NORMAL_MAP API需要下载引入百度的CityList.js文件。下载路径:http://api.map.baidu.com/library/CityList/1.4/docs/symbols/BMapLib.CityList.html
