|
|
|
@ -30,7 +30,6 @@ export const DronMarker = props => {
|
|
|
|
|
let naver = props.naver; |
|
|
|
|
let map = props.map; |
|
|
|
|
let CustomOverlay; |
|
|
|
|
|
|
|
|
|
let infoWindow; |
|
|
|
|
const infowindowOpen = data => { |
|
|
|
|
const content = ` |
|
|
|
@ -78,12 +77,15 @@ export const DronMarker = props => {
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
arrMarkers.map(clickMarker => { |
|
|
|
|
if (objectId === clickMarker.controlId && isClickObject) {
|
|
|
|
|
clickMarker.setIcon({ |
|
|
|
|
url: clickMarker.id.indexOf('PALDRONE') > -1 ? DronDetailIcon : FlightDetailIcon, |
|
|
|
|
origin: new naver.maps.Point(0, 0), |
|
|
|
|
anchor: new naver.maps.Point(15, 15) |
|
|
|
|
});
|
|
|
|
|
if (objectId === clickMarker.controlId && isClickObject) { |
|
|
|
|
clickMarker.setIcon({ |
|
|
|
|
url: |
|
|
|
|
clickMarker.id.indexOf('PALDRONE') > -1 |
|
|
|
|
? DronDetailIcon |
|
|
|
|
: FlightDetailIcon, |
|
|
|
|
origin: new naver.maps.Point(0, 0), |
|
|
|
|
anchor: new naver.maps.Point(15, 15) |
|
|
|
|
}); |
|
|
|
|
} else { |
|
|
|
|
clickMarker.setIcon({ |
|
|
|
|
url: clickMarker.id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon, |
|
|
|
@ -106,18 +108,22 @@ export const DronMarker = props => {
|
|
|
|
|
//마커를 그린다.
|
|
|
|
|
const addMarkers = (position, id, controlId, gps) => { |
|
|
|
|
const iconOption = {}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const homePath = window.HOME_PATH || '.'; |
|
|
|
|
iconOption.url = id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon; |
|
|
|
|
iconOption.origin = new naver.maps.Point(0, 0); |
|
|
|
|
iconOption.anchor = new naver.maps.Point(15, 15);
|
|
|
|
|
iconOption.anchor = new naver.maps.Point(15, 15); |
|
|
|
|
|
|
|
|
|
const marker = new naver.maps.Marker({ |
|
|
|
|
position: position, |
|
|
|
|
title: id, |
|
|
|
|
id: id, |
|
|
|
|
controlId: controlId, |
|
|
|
|
icon: iconOption, |
|
|
|
|
icon: { |
|
|
|
|
content: `<img src="${iconOption.url}" alt="" style="transform: rotate(${gps.heading}deg)">`, |
|
|
|
|
origin: iconOption.origin, |
|
|
|
|
anchor: iconOption.anchor |
|
|
|
|
}, |
|
|
|
|
gps: gps |
|
|
|
|
}); |
|
|
|
|
marker.setMap(props.map); |
|
|
|
@ -146,15 +152,14 @@ export const DronMarker = props => {
|
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
setArrMarkers(m => [...m, marker]);
|
|
|
|
|
};
|
|
|
|
|
setArrMarkers(m => [...m, marker]); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
const handlerDronClick = (controlId, idntfNum) => {
|
|
|
|
|
const handlerDronClick = (controlId, idntfNum) => { |
|
|
|
|
// get detail, history, flight-plan
|
|
|
|
|
dispatch(objectClickAction(controlId)); |
|
|
|
|
dispatch(controlGpDtlAction.request(controlId)); |
|
|
|
|
dispatch(controlGpFlightPlanAction.request(idntfNum));
|
|
|
|
|
|
|
|
|
|
dispatch(controlGpFlightPlanAction.request(idntfNum)); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
//마커를 삭제 한다.
|
|
|
|
|