From 1297a9eeab313a55507a1925488376d3f612b48a Mon Sep 17 00:00:00 2001
From: Sylvain Gay <sgay@clipper.ens.fr>
Date: Mon, 12 Sep 2022 09:40:47 +0200
Subject: [PATCH] added invisiblity support

---
 invi.png | Bin 0 -> 6215 bytes
 map.html |  38 ++++++++++++++++++++++++--------------
 2 files changed, 24 insertions(+), 14 deletions(-)
 create mode 100644 invi.png

diff --git a/invi.png b/invi.png
new file mode 100644
index 0000000000000000000000000000000000000000..ee966424efa1861ee52f5b23db8084269e3f0488
GIT binary patch
literal 6215
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

literal 0
HcmV?d00001

diff --git a/map.html b/map.html
index b2dd1df..1f57b8a 100644
--- a/map.html
+++ b/map.html
@@ -59,7 +59,16 @@
 	        })
         ];
 		var self_icons = icons;
-		var self_invisible_icon = icons[1];
+        var self_invisible = 
+            L.icon({
+		        iconUrl: 'invi.png',
+		        iconSize: [10, 10],
+		        iconAnchor: [5, 5],
+		        popupAnchor: [5, 5],
+		        //shadowUrl: 'my-icon-shadow.png',
+		        //shadowSize: [68, 95],
+		        //shadowAnchor: [22, 94]
+	        });
 
 		//////////////////////////////////////////////////////////////////////////////
 		// INIT MAP
@@ -95,18 +104,19 @@
 			if(data.id in colors && colors[data.id] == -1 && data.id in markers)
 				markers[data.id].addTo(map);
 			colors[data.id] = data.color;
-			if(data.color == -1){
-				if(data.id in markers){
-					if(data.id == id)
-						markers[data.id].setIcon(self_invisible_icon);
-					else
-						markers[data.id].remove();
-				}
-			} else if(data.id in markers){
-				if(data.id == id)
-					markers[data.id].setIcon(self_icons[data.color]);
+			if(data.id in markers){
+                if(data.id == id)
+                    if(data.color == -1)
+                        markers[data.id].setIcon(self_invisible);
+                    else
+					    markers[data.id].setIcon(self_icons[data.color]);
 				else
-					markers[data.id].setIcon(icons[data.color]);
+                    if(data.color == -1)
+                        markers[data.id].setOpacity(0);
+                    else{
+                        markers[data.id].setOpacity(1);
+					    markers[data.id].setIcon(icons[data.color]);
+                    }
 			}
 		});
 
@@ -121,8 +131,8 @@
 				else
 					icon = icons[colors[data.id]];
 				markers[data.id] = L.marker(data.position, {"icon": icon}).addTo(map);
-				if(colors[data.id] == -1)
-					markers[data.id].remove();
+				if(data.id == id)
+					markers[data.id].setZIndexOffset(10000);
 				if(data.id in names)
 					markers[data.id].bindPopup(names[data.id]);
             } else{