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

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

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

在MainForm上添加mnuLocalSearch菜单项

public void Done(string query, MapPoint[] result)
{
 if (result != null)
 {
  _rasterMap.PanTo(result[0].Point);
  for (int i = 0; i < result.Length; i++)
  {
   Console.WriteLine(result[i].ObjectNote);
  }

 }
}

....
private void mnuLocalSearch_Click(object sender, EventArgs e)
{
 String name = "宾馆";
 GeoLatLng screenCenter = _rasterMap.GetScreenCenter();
 _rasterMap.GetLocations(name, 0, screenCenter,
   _rasterMap.GetScreenBounds(screenCenter));
}

本地查询方法
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 “