当前位置:网站首页>Baidu map - surrounding search
Baidu map - surrounding search
2022-07-03 02:31:00 【Python's path to immortality】
brief introduction
Today we'll learn a more interesting Map api
LocalSearch
. Through it, we can search the surrounding addresses on the map , You can also search the address within the specified range .
LocalSearch
- Belong to
Map api
The service class , Mainly used for location retrieval 、 Perimeter search and scope search . - The parameter type can be a map instance 、 A string of coordinate points or city names .
- When the parameter is a map instance , The retrieval position is determined by the current map center point , And the labels of the search results will be automatically loaded on the map , It also supports adjusting the view level of the map ; When the parameter is coordinate , The retrieval location is determined by the location of the point ; When the parameter is city name , The search will be conducted in the city .
- Detailed documentation
Keyword search
search()
Initiate a search based on the search term , When you pass in an array, you can perform multi keyword retrieval .
var local = new BMapGL.LocalSearch(map, {
renderOptions: {
map: map }
})
local.search(' The hospital ')
- You're right
Map api
Powerful function, just a few lines of code to complete the retrieval .
Get retrieval data
- In addition to displaying labels on the map , We also need to get the retrieved data for other operations .
LocalSearch()
Second argument to constructorLocalSearchOptions
, It is used to obtain the retrieved data .
renderOptions
Automatic generationDOM
The text list block shows .onSearchComplete
Callback function after retrieval . Get the retrieved data here .
...
// Secret renderOptions Elements used
<div id="r-result"></div>
...
var myKeys = [' The hotel ', ' The hospital ']
var local = new BMapGL.LocalSearch(map, {
renderOptions: {
map: map, panel: 'r-result' },
onSearchComplete: function (res) {
console.log(' ~ file: Map perimeter retrieval .html ~ line 33 ~ res', res)
}
})
local.search(myKeys)
Search by region
- When the search scope is too large, there may be no results or slow response , At this time, the control range is needed .
searchInBounds()
Initiate a scope search based on the scope and search term , Passing in an array can perform multi keyword retrieval .BMapGL.Bounds()
Create a rectangular area of geographic coordinates .
var local = new BMapGL.LocalSearch(map, {
renderOptions: {
map: map }
})
var pStart = new BMapGL.Point(121.480509, 31.23592)
var pEnd = new BMapGL.Point(126.480509, 36.23592)
// Set your own scope
var bs = new BMapGL.Bounds(pStart, pEnd)
local.searchInBounds(' The hospital ', bs)
- In addition to the inner rectangle, of course, there are also circular search methods .
searchNearby()
According to the center point 、 Radius and search term initiate peripheral search . Passing in an array can perform multi keyword retrieval .- Note that the unit of radius here is rice
var local = new BMapGL.LocalSearch(map, {
renderOptions: {
map: map, autoViewport: false }
})
local.searchNearby(' The hospital ', new BMapGL.Point(121.480509, 31.23592), 1000)
Retrieve data control
- The retrieved data is not all returned at once , Is returned by paging . In this way, we can control how much data is displayed in a range , To ensure the user experience .
setPageCapacity()
Set how many pieces of data are displayed on a page .gotoPage()
Jump to the specified page .
// Total number of pages
var pageAll = 0
var myKeys = [' The hotel ', ' The hospital ']
var local = new BMapGL.LocalSearch(map, {
renderOptions: {
map: map, panel: 'r-result' },
onSearchComplete: function (res) {
console.log(' ~ file: Map perimeter retrieval .html ~ line 35 ~ res', res)
pageAll = res[0].getNumPages()
}
})
local.setPageCapacity(20)
local.search(myKeys)
var i = 0 // the number of pages
function onBut() {
if (i === pageAll) {
i = 0
} else {
i++
}
local.gotoPage(i)
}
边栏推荐
猜你喜欢
udp接收队列以及多次初始化的测试
SPI机制
Use go language to realize try{}catch{}finally
Detailed introduction to the deployment and usage of the Nacos registry
通达OA 首页门户工作台
[Hcia]No.15 Vlan间通信
Distributed transaction solution
Summary of interview project technology stack
Random shuffle note
Tongda OA homepage portal workbench
随机推荐
微服务组件Sentinel (Hystrix)详细分析
[fluent] listview list (map method description of list set | vertical list | horizontal list | code example)
GBase 8c系统表-pg_authid
GBase 8c系统表-pg_amproc
GBase 8c系统表-pg_auth_members
GBase 8c系统表-pg_collation
GBase 8c系统表-pg_am
[translation] modern application load balancing with centralized control plane
GBase 8c系统表pg_cast
Gbase 8C system table PG_ cast
Codeforces Round #418 (Div. 2) D. An overnight dance in discotheque
awk从入门到入土(2)认识awk内置变量和变量的使用
COM和CN
Cfdiv2 fixed point guessing- (interval answer two points)
Error invalid bound statement (not found): com ruoyi. stock. mapper. StockDetailMapper. XXXX solution
【翻译】后台项目加入了CNCF孵化器
Gbase 8C system table PG_ attribute
Awk from introduction to earth (0) overview of awk
Gbase 8C system table PG_ amproc
Gbase 8C system table PG_ collation