var viewPos = [53.05445, 8.89671]; var map = L.map('map').setView(viewPos, 21); var equipmentNumber = Number(document.getElementById("equipmentNumber").value); var setStartPos = false; var setEndPos = false; var startPos; var endPos; var blueIcon = new L.Icon({ iconUrl: 'img/marker-blue.png', shadowUrl: 'img/marker-shadow.png', iconSize: [25, 41], iconAnchor: [12, 41], popupAnchor: [1, -34], shadowSize: [41, 41] }); var yellowIcon = new L.Icon({ iconUrl: 'img/marker-yellow.png', shadowUrl: 'img/marker-shadow.png', iconSize: [25, 41], iconAnchor: [12, 41], popupAnchor: [1, -34], shadowSize: [41, 41] }); var greenIcon = new L.Icon({ iconUrl: 'img/marker-green.png', shadowUrl: 'img/marker-shadow.png', iconSize: [25, 41], iconAnchor: [12, 41], popupAnchor: [1, -34], shadowSize: [41, 41] }); var runIcon = new L.Icon({ iconUrl: 'img/marker-run.png', shadowUrl: 'img/marker-shadow.png', iconSize: [25, 41], iconAnchor: [12, 41], popupAnchor: [1, 50], shadowSize: [0, 0] }); var startIcon = new L.Icon({ iconUrl: 'img/marker-start.png', iconSize: [12, 20], iconAnchor: [12, 41], popupAnchor: [1, -34], shadowSize: [0, 0] }); var endIcon = new L.Icon({ iconUrl: 'img/marker-ziel.png', iconSize: [12, 20], iconAnchor: [12, 41], popupAnchor: [1, -34], shadowSize: [0, 0] }); var roomPos=[]; // Floor 1 roomPos[41] = [53.0544134499695, 8.89657970645935, 1.0]; // 101 roomPos[48] = [53.0544415814367, 8.89655747715146, 1.0]; roomPos[53] = [53.0544708770499, 8.89659823903211, 1.0]; roomPos[58] = [53.0544588111309, 8.89664222434108, 1.0]; roomPos[61] = [53.0544382476614, 8.89666158434962, 1.0]; roomPos[66] = [53.0544172818801, 8.89663047532393, 1.0]; roomPos[70] = [53.0544359183058, 8.89660827779814, 1.0]; // Floor 2 roomPos[80] = [53.0544415814367, 8.89655747715146, 4.0]; roomPos[85] = [53.0544708770499, 8.89659823903211, 4.0]; roomPos[90] = [53.0544588111309, 8.89664222434108, 4.0]; roomPos[93] = [53.0544382476614, 8.89666158434962, 4.0]; roomPos[98] = [53.0544172818801, 8.89663047532393, 4.0]; roomPos[102] = [53.0544359183058, 8.89660827779814, 4.0]; roomPos[74] = [53.0544134499695, 8.89657970645935, 4.0]; roomPos[106] = [53.0544359183058, 8.89660827779814, 5.0]; var roomsFloor1=[41, 48, 53, 58, 61, 66, 70]; var roomsFloor2=[74, 80, 85, 90, 93, 98, 102]; var roomsFloor3=[106]; var markerStart; var markerEnd; var markerBldg=[]; var imageUrl = 'img/RDE2.jpg', imageBounds = [[53.0528064472226, 8.89412999153137], [53.056520842139, 8.90030980110168]]; L.imageOverlay(imageUrl, imageBounds).addTo(map); var imgUrl = 'img/BT56EtageUntengedreht.png', imgBounds = [[53.0543723254747, 8.89649673130739], [53.0545051794611, 8.89671656638611]]; L.imageOverlay(imgUrl, imgBounds).addTo(map); for (var i = 0; i < roomsFloor1.length; ++i) { var ID = roomsFloor1[i]; markerBldg[ID] = new L.marker(roomPos[ID],{icon: blueIcon}).on('click', L.bind(onMarkerClick, null, ID)) .addTo(map).bindPopup("send Room "+ID).openPopup(); } for (var i = 0; i < roomsFloor2.length; ++i) { var ID = roomsFloor2[i]; markerBldg[ID] = new L.marker(roomPos[ID],{icon: greenIcon}).on('click', L.bind(onMarkerClick, null, ID)) .bindPopup("send Room "+ID).openPopup(); } for (var i = 0; i < roomsFloor3.length; ++i) { var ID = roomsFloor3[i]; markerBldg[ID] = new L.marker(roomPos[ID],{icon: yellowIcon}).on('click', L.bind(onMarkerClick, null, ID)) .bindPopup("send Room "+ID).openPopup(); } function onMarkerClick(e) { var moutObjectId = 7; var moutAreaId = 2; var moutRoomId = e; var lat = roomPos[moutRoomId][0]; var lon = roomPos[moutRoomId][1]; var z = roomPos[moutRoomId][2]; sendRoom(moutObjectId, moutAreaId, moutRoomId, lat, lon, z); } var popup = L.popup(); var markerParticipant=new L.marker(viewPos,{icon: runIcon}).on('click', onMapClick); markerParticipant.addTo(map).bindPopup("#"+equipmentNumber).openPopup(); var lat; var lon; function onMapClick(e) { if (setStartPos){ if (!markerStart){ markerStart = new L.marker(e.latlng,{icon: startIcon}).on('click', L.bind(onMarkerClick, null, ID)) .addTo(map).bindPopup("Start move").openPopup(); } else { markerStart.setLatLng( e.latlng); } startPos=e.latlng; setStartPos=false; return; } if (setEndPos){ if (!markerEnd){ markerEnd = new L.marker(e.latlng,{icon: endIcon}).on('click', L.bind(onMarkerClick, null, ID)) .addTo(map).bindPopup("End move").openPopup(); } else { markerEnd.setLatLng( e.latlng); } endPos=e.latlng; setEndPos=false; return; } var moutObjectId = -1; var moutAreaId = -1; var moutRoomId = -1; lat =e.latlng.lat; lon = e.latlng.lng; var z = 0; sendRoom(moutObjectId, moutAreaId, moutRoomId, lat, lon, z); markerParticipant.setLatLng( [lat, lon]); var latlng = e.latlng; latlng.lat= latlng.lat+0.00002; latlng[1]+=1; popup .setLatLng(latlng) .setContent("" + e.latlng.toString()) .openOn(map); } map.on('click', onMapClick); function changeFloor() { var val1=$( "#changeFloor" ).val(); console.log("changeFloor="+val1); if (val1=="floor1"){ console.log ("floor1"); for (var i = 0; i < roomsFloor2.length; ++i) { map.removeLayer(markerBldg[roomsFloor2[i]]); } for (var i = 0; i < roomsFloor3.length; ++i) { map.removeLayer(markerBldg[roomsFloor3[i]]); } for (var i = 0; i < roomsFloor1.length; ++i) { markerBldg[roomsFloor1[i]].addTo(map).bindPopup("send Room "+roomsFloor1[i]).openPopup(); } }else if(val1=="floor2"){ for (var i = 0; i < roomsFloor1.length; ++i) { map.removeLayer(markerBldg[roomsFloor1[i]]); } for (var i = 0; i < roomsFloor3.length; ++i) { map.removeLayer(markerBldg[roomsFloor3[i]]); } for (var i = 0; i < roomsFloor2.length; ++i) { markerBldg[roomsFloor2[i]].addTo(map).bindPopup("send Room "+roomsFloor2[i]).openPopup(); } } else if(val1=="floor3"){ for (var i = 0; i < roomsFloor1.length; ++i) { map.removeLayer(markerBldg[roomsFloor1[i]]); } for (var i = 0; i < roomsFloor2.length; ++i) { map.removeLayer(markerBldg[roomsFloor2[i]]); } for (var i = 0; i < roomsFloor3.length; ++i) { markerBldg[roomsFloor3[i]].addTo(map).bindPopup("send Room "+roomsFloor3[i]).openPopup(); } } }