Windows Mobile引路蜂地图开发示例:本地查询

jerry 地图开发 2015年11月26日 收藏

本地查询可以查询指定区域内诸如宾馆,邮局等用户感兴趣的地方。其使用方法和地址查询非常类似。
下面示例查询32.0616667, 118.7777778为中心点一定区域内宾馆的信息。

在MainForm上添加mnuLocalSearch菜单项

  1. public void Done(string query, MapPoint[] result)
  2. {
  3.  if (result != null)
  4.  {
  5.   _rasterMap.PanTo(result[0].Point);
  6.   for (int i = 0; i < result.Length; i++)
  7.   {
  8.    Console.WriteLine(result[i].ObjectNote);
  9.   }
  10.  
  11.  }
  12. }
  13.  
  14. ....
  15. private void mnuLocalSearch_Click(object sender, EventArgs e)
  16. {
  17.  String name = "宾馆";
  18.  GeoLatLng screenCenter = _rasterMap.GetScreenCenter();
  19.  _rasterMap.GetLocations(name, 0, screenCenter,
  20.    _rasterMap.GetScreenBounds(screenCenter));
  21. }

本地查询方法
public void getLocations(String address,int start,GeoLatLng center,GeoBounds bound, IGeocodingListener listener);
指定中心点和查询区域。本地查询可以多次返回结果,start为查询结果起始顺序,每次返回结果在SearchOptions 中定义,缺省每次返回4个。
上述结果返回内容为,具体结果可能不同。
“晶丽酒店025-83310818 025-83310818212223 025-86636636 ”
“城市名人酒店025-83123333 025-83123888 ”
“南京玄武饭店 025-83358888 ”
“Sofitel Galaxy Nanjing – 南京索菲特银河大酒店025-83718888 “