Skip to content

Commit 6b7bd71

Browse files
committed
big performance improvement
1 parent 9dfe49c commit 6b7bd71

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

index.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,8 @@ <h3>Report Recovery</h3>
363363
<script type="text/javascript" language="javascript" src="js/leaflet.js"></script>
364364
<script type="text/javascript" language="javascript" src="js/Leaflet.fullscreen.min.js"></script>
365365
<script type="text/javascript" language="javascript" src="js/L.Terminator.js"></script>
366+
<script type="text/javascript" language="javascript" src="js/rbush.js"></script>
367+
<script type="text/javascript" language="javascript" src="js/leaflet-markers-canvas.min.js"></script>
366368
<script src="https://xc5dqkj2cgb1.statuspage.io/embed/script.js"></script>
367369
<script type="text/javascript" language="javascript" src="js/mobile.js"></script>
368370
<!--

js/tracker.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ var recovery_names = [];
2121
var recoveries = [];
2222

2323
var launches = null;
24+
var receiverCanvas = null;
2425

2526
var got_positions = false;
2627
var zoomed_in = false;
@@ -413,6 +414,9 @@ function load() {
413414
// update current position if we geolocation is available
414415
if(currentPosition) updateCurrentPosition(currentPosition.lat, currentPosition.lon);
415416

417+
//Receiver canvas
418+
receiverCanvas = new L.MarkersCanvas();
419+
receiverCanvas.addTo(map);
416420

417421
// initalize nite overlay
418422
nite = new L.terminator();
@@ -2874,11 +2878,13 @@ function updateReceiverMarker(receiver) {
28742878
icon: receiverIcon,
28752879
title: receiver.name,
28762880
zIndexOffset: Z_STATION,
2877-
}).addTo(map);
2881+
});
28782882

28792883
receiver.infobox = new L.popup({ autoClose: false, closeOnClick: false }).setContent(receiver.description);
28802884

28812885
receiver.marker.bindPopup(receiver.infobox);
2886+
2887+
receiverCanvas.addMarker(receiver.marker);
28822888
} else {
28832889
receiver.marker.setLatLng(latlng);
28842890
}
@@ -2929,10 +2935,8 @@ function updateReceivers(r) {
29292935
i++;
29302936
}
29312937
else {
2932-
// close box, remove event handle, and remove marker
2933-
//e.infobox.close();
2934-
//e.infobox_handle.remove();
2935-
map.removeLayer(e.marker);
2938+
map.removeLayer(e.infobox);
2939+
receiverCanvas.removeMarker(e.marker);
29362940

29372941
// remove from arrays
29382942
receivers.splice(i,1);

0 commit comments

Comments
 (0)