全部服务产品
开发者频道
定价
登录
POI检索
下载开发文档

POI(Point of Interest),即“兴趣点”。在地理信息系统中,一个POI可以是一栋房子、一个景点、一个邮筒或者一个公交站等。

HarmonyOS地图SDK提供三种类型的POI检索:城市内检索、周边检索和区域检索(即矩形区域检索)。

城市内检索

关键字检索适用于在某个城市内搜索某个名称相关的POI,例如:查找“北京市”的“小吃”。

searchInCity() {
let search: PoiSearch = PoiSearch.newInstance();
let optionParams: PoiCitySearchOptionParams = {
city: this.addressInfo,
keyword: '美食'
}
let option = new PoiCitySearchOption(optionParams)
search.searchInCity(option)
.then((res: PoiResult) => {
// 使用数据
})
}
周边检索

周边检索是在一个圆形范围内的POI检索,适用于以某个位置为中心点,自定义搜索半径,搜索某个位置附近的POI。

searchInNearby() {
let search: PoiSearch = PoiSearch.newInstance();
let opParams: PoiNearbySearchOptionParams = {
keyword: "房地产$公司企业$政府机构$生活服务$酒店$教育培训$门址$美食$丽人$医疗",
location: new LatLng(this.markerLat,this.markerLng),
radius: 1000
}
let option = new PoiNearbySearchOption(opParams)
search.searchNearby(option)
.then((res: PoiResult) => {
// 使用数据
})
}
区域检索

POI区域检索,即“在由开发者指定的西南角和东北角组成的矩形区域内的POI检索”。

let search: PoiSearch = PoiSearch.newInstance();
let southWest = new LatLng(40.049557, 116.279295)
let northEast = new LatLng(40.056057, 116.308102)
let optionParams: PoiBoundSearchOptionParams = {
bound: new LatLngBounds(southWest, northEast),
keyword: '美食'
}
let option = new PoiBoundSearchOption(optionParams)
search.searchInBound(option)
.then((res: PoiResult) => {
// 使用数据
})
POI详情检索
searchPoiDetail() {
let search: PoiSearch = PoiSearch.newInstance();
search.searchPoiDetail({
uids: this.uid,
isExtendAdcode: false
}).then((res: PoiDetailSearchResult) => {
// 使用数据
})
}
室内检索
let search: PoiSearch = PoiSearch.newInstance();
search.searchPoiIndoor({bid: this.bid, wd: this.wd, floor: this.floor})
.then((res: PoiIndoorResult) => {
// 使用数据
})

上一篇

瓦片图层

下一篇

地理编码

本篇文章对您是否有帮助?