map: place labels without overlaps
This commit is contained in:
parent
879c1e6f25
commit
db3d8fa795
2 changed files with 186 additions and 48 deletions
18
lib/map.js
18
lib/map.js
|
|
@ -228,7 +228,7 @@ define(["map/clientlayer", "map/labelslayer",
|
|||
clientLayer.addTo(map)
|
||||
clientLayer.setZIndex(5)
|
||||
|
||||
var labelsLayer = new LabelsLayer({minZoom: 15})
|
||||
var labelsLayer = new LabelsLayer()
|
||||
labelsLayer.addTo(map)
|
||||
labelsLayer.setZIndex(6)
|
||||
|
||||
|
|
@ -368,22 +368,14 @@ define(["map/clientlayer", "map/labelslayer",
|
|||
groupLost = L.featureGroup(markersLost).addTo(map)
|
||||
|
||||
var rtreeOnlineAll = rbush(9)
|
||||
var rtreeOnline = rbush(9)
|
||||
var rtreeOffline = rbush(9)
|
||||
var rtreeNew = rbush(9)
|
||||
var rtreeLost = rbush(9)
|
||||
|
||||
rtreeOnlineAll.load(data.nodes.all.filter(online).filter(has_location).map(mapRTree))
|
||||
rtreeOnline.load(nodesOnline.filter(has_location).map(mapRTree))
|
||||
rtreeOffline.load(nodesOffline.filter(has_location).map(mapRTree))
|
||||
rtreeNew.load(data.nodes.new.filter(has_location).map(mapRTree))
|
||||
rtreeLost.load(data.nodes.lost.filter(has_location).map(mapRTree))
|
||||
|
||||
clientLayer.setData(rtreeOnlineAll)
|
||||
labelsLayer.setData({online: rtreeOnline,
|
||||
offline: rtreeOffline,
|
||||
new: rtreeNew,
|
||||
lost: rtreeLost
|
||||
labelsLayer.setData({online: nodesOnline.filter(has_location),
|
||||
offline: nodesOffline.filter(has_location),
|
||||
new: data.nodes.new.filter(has_location),
|
||||
lost: data.nodes.lost.filter(has_location)
|
||||
})
|
||||
|
||||
updateView(true)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue