Browse Source

Merge branch 'master' of http://gitea.palntour.com/pav/pav-home

pull/2/head
sanguu 2 years ago
parent
commit
e97b7bf636
  1. 14
      src/assets/images/airplan_org.svg
  2. 14
      src/assets/images/airplan_pp.svg
  3. 8
      src/assets/images/drone_bk.svg
  4. 43
      src/assets/images/new_drone_icon_org.svg
  5. 43
      src/assets/images/new_drone_icon_pp.svg
  6. 85
      src/components/map/naver/dron/DronMarker.js

14
src/assets/images/airplan_org.svg

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="레이어_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="30px" height="30px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve" style="fill: #ff9f43;">
<path id="_x31_" d="M5.679,23.505l-4.944-1.974c-0.296-0.117-0.373-0.484-0.146-0.7l0.454-0.43c0.431-0.41,1.018-0.639,1.628-0.637
l4.522,0.016c0.358,0.001,0.697-0.155,0.917-0.422l1.517-1.834c1.083-1.31,2.247-2.556,3.487-3.732l0.946-0.898
C11.347,10.912,3.868,8.571,1.449,7.845c-0.332-0.1-0.419-0.507-0.154-0.722l0.513-0.417c0.791-0.642,1.829-0.94,2.861-0.821
c5.067,0.588,10.305,0.961,15.602,1.115l2.44-2.313c1.851-1.674,5.167-4.301,6.584-3.096c0.017,0.014,0.032,0.029,0.049,0.044
c1.61,1.528-2.764,5.766-3.268,6.244l-2.438,2.314c0.162,5.026,0.556,9.997,1.175,14.804c0.127,0.979-0.188,1.965-0.864,2.715
L23.509,28.2c-0.226,0.252-0.656,0.17-0.762-0.146c-0.764-2.295-3.232-9.392-5.32-11.968l-0.946,0.898
c-1.24,1.177-2.553,2.282-3.933,3.309l-1.933,1.438c-0.282,0.21-0.446,0.531-0.444,0.871l0.015,4.292
c0.003,0.578-0.239,1.135-0.67,1.545l-0.454,0.429c-0.227,0.217-0.613,0.145-0.738-0.136l-2.078-4.692L5.679,23.505z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

14
src/assets/images/airplan_pp.svg

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="레이어_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="30px" height="30px" viewBox="0 0 30 30" enable-background="new 0 0 30 30" xml:space="preserve" style="fill: #7367f0;">
<path id="_x31_" d="M5.679,23.505l-4.944-1.974c-0.296-0.117-0.373-0.484-0.146-0.7l0.454-0.43c0.431-0.41,1.018-0.639,1.628-0.637
l4.522,0.016c0.358,0.001,0.697-0.155,0.917-0.422l1.517-1.834c1.083-1.31,2.247-2.556,3.487-3.732l0.946-0.898
C11.347,10.912,3.868,8.571,1.449,7.845c-0.332-0.1-0.419-0.507-0.154-0.722l0.513-0.417c0.791-0.642,1.829-0.94,2.861-0.821
c5.067,0.588,10.305,0.961,15.602,1.115l2.44-2.313c1.851-1.674,5.167-4.301,6.584-3.096c0.017,0.014,0.032,0.029,0.049,0.044
c1.61,1.528-2.764,5.766-3.268,6.244l-2.438,2.314c0.162,5.026,0.556,9.997,1.175,14.804c0.127,0.979-0.188,1.965-0.864,2.715
L23.509,28.2c-0.226,0.252-0.656,0.17-0.762-0.146c-0.764-2.295-3.232-9.392-5.32-11.968l-0.946,0.898
c-1.24,1.177-2.553,2.282-3.933,3.309l-1.933,1.438c-0.282,0.21-0.446,0.531-0.444,0.871l0.015,4.292
c0.003,0.578-0.239,1.135-0.67,1.545l-0.454,0.429c-0.227,0.217-0.613,0.145-0.738-0.136l-2.078-4.692L5.679,23.505z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

8
src/assets/images/drone_bk.svg

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="레이어_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="50px" height="30px" viewBox="0 0 50 30" enable-background="new 0 0 50 30" xml:space="preserve">
<image overflow="visible" width="55" height="55" xlink:href="drone_black.png" transform="matrix(0.9197 0 0 0.9407 -0.585 -11.5356)">
</image>
</svg>

After

Width:  |  Height:  |  Size: 618 B

43
src/assets/images/new_drone_icon_org.svg

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="레이어_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="50px" height="30px" viewBox="0 0 30 15" enable-background="new 0 0 30 15" xml:space="preserve" style="fill: #ff9f43;">
<g>
<g>
<path d="M14.938,7.417c-0.443,0-0.825,0.133-1.143,0.396c-0.314,0.262-0.476,0.578-0.476,0.946c0,0.371,0.16,0.688,0.476,0.951
c0.315,0.261,0.697,0.394,1.143,0.394s0.829-0.133,1.145-0.396c0.315-0.262,0.475-0.58,0.475-0.951
c0-0.368-0.156-0.686-0.475-0.946C15.765,7.55,15.383,7.417,14.938,7.417z M16.244,4.276h0.077
c0.587,0.012,1.099,0.09,1.533,0.233c0.442,0.148,0.81,0.369,1.097,0.658h5.151V3.931c-0.631-0.011-1.213-0.033-1.748-0.07
c-0.379-0.027-0.733-0.063-1.063-0.104c-0.943-0.114-1.418-0.256-1.418-0.418s0.474-0.3,1.418-0.415
c0.797-0.096,1.733-0.15,2.813-0.166V2.698c-0.002-0.068,0.01-0.131,0.037-0.191c0.028-0.082,0.088-0.158,0.166-0.227
c0.137-0.113,0.305-0.17,0.498-0.168c0.194,0,0.364,0.055,0.506,0.168c0.133,0.113,0.203,0.246,0.211,0.4c0,0.006,0,0.012,0,0.018
v0.059c0.365,0.008,0.715,0.021,1.049,0.041c0.568,0.027,1.089,0.068,1.562,0.125c0.027,0.004,0.053,0.008,0.08,0.016
c0.893,0.111,1.342,0.246,1.344,0.402c-0.002,0.158-0.451,0.293-1.344,0.406c-0.027,0.004-0.053,0.008-0.08,0.012
c-0.748,0.094-1.617,0.148-2.609,0.168v1.244h0.619c0.195,0,0.363,0.061,0.502,0.174c0.139,0.115,0.209,0.254,0.209,0.414
c0,0.115-0.035,0.221-0.105,0.313c-0.121,0.133-0.297,0.227-0.524,0.28c-1.943,0.388-3.89,0.773-5.83,1.16l2.228,3.875
c0.014,0.021,0.024,0.037,0.037,0.06c0.532,1.245,0.161,2.243-1.115,2.993c-0.16,0.097-0.338,0.132-0.529,0.104
c-0.189-0.026-0.342-0.108-0.453-0.246c-0.115-0.133-0.156-0.278-0.125-0.438c0.031-0.159,0.129-0.284,0.289-0.379
c0.686-0.409,0.885-0.953,0.596-1.631l-2.34-4.057l-0.609,0.125V9.94c0,0.145-0.043,0.276-0.129,0.401v0.002
c-0.088,0.125-0.207,0.226-0.356,0.294l-2.458,1.174v0.004c-0.157,0.07-0.319,0.107-0.49,0.107
c-0.173-0.002-0.335-0.039-0.484-0.111L12,10.634l-0.006-0.004c-0.147-0.07-0.266-0.17-0.351-0.295
c-0.086-0.125-0.13-0.258-0.129-0.398v-2.02l-0.612-0.123l-2.34,4.055c-0.292,0.678-0.094,1.221,0.594,1.631
c0.16,0.095,0.256,0.22,0.29,0.379c0.031,0.158-0.012,0.306-0.127,0.438c-0.111,0.136-0.263,0.218-0.453,0.248
c-0.192,0.024-0.368-0.01-0.529-0.104c-1.276-0.75-1.648-1.748-1.114-2.994c0.011-0.021,0.022-0.039,0.036-0.059l2.228-3.875
C7.542,7.125,5.6,6.739,3.655,6.353C3.425,6.297,3.25,6.204,3.129,6.071C3.061,5.979,3.024,5.876,3.024,5.758
c0-0.159,0.069-0.299,0.209-0.414C3.373,5.231,3.541,5.17,3.736,5.17h0.619V3.926c-0.993-0.02-1.863-0.073-2.609-0.168
c-0.027-0.002-0.054-0.006-0.08-0.01C0.772,3.633,0.325,3.5,0.321,3.34c0.003-0.153,0.451-0.291,1.345-0.401
c0.026-0.006,0.053-0.01,0.08-0.015c0.472-0.057,0.992-0.098,1.562-0.125c0.333-0.021,0.683-0.032,1.048-0.043V2.698
c0-0.006,0-0.012,0-0.018c0.007-0.154,0.077-0.289,0.21-0.4c0.14-0.113,0.309-0.17,0.506-0.168c0.195,0,0.362,0.055,0.499,0.168
c0.076,0.068,0.131,0.143,0.164,0.227C5.761,2.567,5.773,2.63,5.772,2.698v0.059c1.077,0.016,2.014,0.07,2.813,0.166
c0.944,0.117,1.417,0.256,1.418,0.418c-0.001,0.162-0.474,0.301-1.418,0.416C8.253,3.798,7.898,3.833,7.521,3.86
c-0.535,0.037-1.117,0.062-1.748,0.07v1.238h5.151c0.286-0.289,0.651-0.51,1.096-0.658c0.436-0.145,0.945-0.223,1.535-0.234h0.074
c0.067-0.002,0.138-0.002,0.207,0h2.203C16.108,4.274,16.177,4.274,16.244,4.276z"/>
</g>
<g>
<path d="M14.934,8.089c0.225,0,0.415,0.066,0.57,0.199c0.158,0.131,0.236,0.287,0.236,0.473c0,0.187-0.078,0.344-0.236,0.477
c-0.155,0.131-0.346,0.195-0.57,0.195c-0.223,0-0.411-0.063-0.568-0.195c-0.158-0.133-0.238-0.29-0.238-0.477
c0-0.186,0.08-0.342,0.238-0.473C14.521,8.155,14.711,8.089,14.934,8.089z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

43
src/assets/images/new_drone_icon_pp.svg

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="레이어_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="50px" height="30px" viewBox="0 0 30 15" enable-background="new 0 0 30 15" xml:space="preserve" style="fill: #7367f0;">
<g>
<g>
<path d="M14.938,7.417c-0.443,0-0.825,0.133-1.143,0.396c-0.314,0.262-0.476,0.578-0.476,0.946c0,0.371,0.16,0.688,0.476,0.951
c0.315,0.261,0.697,0.394,1.143,0.394s0.829-0.133,1.145-0.396c0.315-0.262,0.475-0.58,0.475-0.951
c0-0.368-0.156-0.686-0.475-0.946C15.765,7.55,15.383,7.417,14.938,7.417z M16.244,4.276h0.077
c0.587,0.012,1.099,0.09,1.533,0.233c0.442,0.148,0.81,0.369,1.097,0.658h5.151V3.931c-0.631-0.011-1.213-0.033-1.748-0.07
c-0.379-0.027-0.733-0.063-1.063-0.104c-0.943-0.114-1.418-0.256-1.418-0.418s0.474-0.3,1.418-0.415
c0.797-0.096,1.733-0.15,2.813-0.166V2.698c-0.002-0.068,0.01-0.131,0.037-0.191c0.028-0.082,0.088-0.158,0.166-0.227
c0.137-0.113,0.305-0.17,0.498-0.168c0.194,0,0.364,0.055,0.506,0.168c0.133,0.113,0.203,0.246,0.211,0.4c0,0.006,0,0.012,0,0.018
v0.059c0.365,0.008,0.715,0.021,1.049,0.041c0.568,0.027,1.089,0.068,1.562,0.125c0.027,0.004,0.053,0.008,0.08,0.016
c0.893,0.111,1.342,0.246,1.344,0.402c-0.002,0.158-0.451,0.293-1.344,0.406c-0.027,0.004-0.053,0.008-0.08,0.012
c-0.748,0.094-1.617,0.148-2.609,0.168v1.244h0.619c0.195,0,0.363,0.061,0.502,0.174c0.139,0.115,0.209,0.254,0.209,0.414
c0,0.115-0.035,0.221-0.105,0.313c-0.121,0.133-0.297,0.227-0.524,0.28c-1.943,0.388-3.89,0.773-5.83,1.16l2.228,3.875
c0.014,0.021,0.024,0.037,0.037,0.06c0.532,1.245,0.161,2.243-1.115,2.993c-0.16,0.097-0.338,0.132-0.529,0.104
c-0.189-0.026-0.342-0.108-0.453-0.246c-0.115-0.133-0.156-0.278-0.125-0.438c0.031-0.159,0.129-0.284,0.289-0.379
c0.686-0.409,0.885-0.953,0.596-1.631l-2.34-4.057l-0.609,0.125V9.94c0,0.145-0.043,0.276-0.129,0.401v0.002
c-0.088,0.125-0.207,0.226-0.356,0.294l-2.458,1.174v0.004c-0.157,0.07-0.319,0.107-0.49,0.107
c-0.173-0.002-0.335-0.039-0.484-0.111L12,10.634l-0.006-0.004c-0.147-0.07-0.266-0.17-0.351-0.295
c-0.086-0.125-0.13-0.258-0.129-0.398v-2.02l-0.612-0.123l-2.34,4.055c-0.292,0.678-0.094,1.221,0.594,1.631
c0.16,0.095,0.256,0.22,0.29,0.379c0.031,0.158-0.012,0.306-0.127,0.438c-0.111,0.136-0.263,0.218-0.453,0.248
c-0.192,0.024-0.368-0.01-0.529-0.104c-1.276-0.75-1.648-1.748-1.114-2.994c0.011-0.021,0.022-0.039,0.036-0.059l2.228-3.875
C7.542,7.125,5.6,6.739,3.655,6.353C3.425,6.297,3.25,6.204,3.129,6.071C3.061,5.979,3.024,5.876,3.024,5.758
c0-0.159,0.069-0.299,0.209-0.414C3.373,5.231,3.541,5.17,3.736,5.17h0.619V3.926c-0.993-0.02-1.863-0.073-2.609-0.168
c-0.027-0.002-0.054-0.006-0.08-0.01C0.772,3.633,0.325,3.5,0.321,3.34c0.003-0.153,0.451-0.291,1.345-0.401
c0.026-0.006,0.053-0.01,0.08-0.015c0.472-0.057,0.992-0.098,1.562-0.125c0.333-0.021,0.683-0.032,1.048-0.043V2.698
c0-0.006,0-0.012,0-0.018c0.007-0.154,0.077-0.289,0.21-0.4c0.14-0.113,0.309-0.17,0.506-0.168c0.195,0,0.362,0.055,0.499,0.168
c0.076,0.068,0.131,0.143,0.164,0.227C5.761,2.567,5.773,2.63,5.772,2.698v0.059c1.077,0.016,2.014,0.07,2.813,0.166
c0.944,0.117,1.417,0.256,1.418,0.418c-0.001,0.162-0.474,0.301-1.418,0.416C8.253,3.798,7.898,3.833,7.521,3.86
c-0.535,0.037-1.117,0.062-1.748,0.07v1.238h5.151c0.286-0.289,0.651-0.51,1.096-0.658c0.436-0.145,0.945-0.223,1.535-0.234h0.074
c0.067-0.002,0.138-0.002,0.207,0h2.203C16.108,4.274,16.177,4.274,16.244,4.276z"/>
</g>
<g>
<path d="M14.934,8.089c0.225,0,0.415,0.066,0.57,0.199c0.158,0.131,0.236,0.287,0.236,0.473c0,0.187-0.078,0.344-0.236,0.477
c-0.155,0.131-0.346,0.195-0.57,0.195c-0.223,0-0.411-0.063-0.568-0.195c-0.158-0.133-0.238-0.29-0.238-0.477
c0-0.186,0.08-0.342,0.238-0.473C14.521,8.155,14.711,8.089,14.934,8.089z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

85
src/components/map/naver/dron/DronMarker.js

@ -2,8 +2,11 @@ import $ from 'jquery';
import { useEffect, useState } from 'react';
import { useDispatch, useSelector } from 'react-redux';
import '../../../../assets/css/custom.css';
import DronIconPulple from '../../../../assets/images/drone-marker-icon-pulple.png';
import DronIcon from '../../../../assets/images/drone-marker-icon.png';
import FlightIcon from '../../../../assets/images/airplan_org.svg';
import FlightDetailIcon from '../../../../assets/images/airplan_pp.svg';
import DronIcon from '../../../../assets/images/new_drone_icon_org.svg';
import DronDetailIcon from '../../../../assets/images/new_drone_icon_pp.svg';
import { IoMdAirplane } from 'react-icons/io';
import {
controlGpDtlAction,
controlGpFlightPlanAction
@ -12,8 +15,6 @@ import {
objectClickAction,
objectUnClickAction
} from '../../../../modules/control/map/actions/controlMapActions';
import { toast } from 'react-toastify';
import DronToast from './DronToast';
export const DronMarker = props => {
const dispatch = useDispatch();
@ -77,16 +78,15 @@ export const DronMarker = props => {
useEffect(() => {
arrMarkers.map(clickMarker => {
if (objectId === clickMarker.controlId && isClickObject) {
// clickMarker.setIcon(DronIconPulple);
clickMarker.setIcon({
url: DronIconPulple,
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: DronIcon,
url: clickMarker.id.indexOf('PALDRONE') > -1 ? DronIcon : FlightIcon,
origin: new naver.maps.Point(0, 0),
anchor: new naver.maps.Point(15, 15)
});
@ -105,33 +105,29 @@ 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);
const marker = new naver.maps.Marker({
position: position,
title: id,
id: id,
controlId: controlId,
icon: {
// content: [
// '<div>dddd</div>',
// ].join(''),
url: DronIcon,
// size: new naver.maps.Size(50, 50),
origin: new naver.maps.Point(0, 0),
anchor: new naver.maps.Point(15, 15)
},
icon: iconOption,
gps: gps
});
marker.setMap(props.map);
// drone 정보 창
/** drone 상세보기 */
naver.maps.Event.addListener(marker, 'click', function (e) {
handlerDronClick(marker.controlId, marker.id);
});
naver.maps.Event.addListener(marker, 'mouseover', function (e) {
// // handlerDronMouseOver(marker);
const data = {};
data.id = marker.id;
data.speed = marker.gps?.speed;
@ -150,27 +146,15 @@ export const DronMarker = props => {
}
});
setArrMarkers(m => [...m, marker]);
// markerInfo(marker, position, id);
};
const handlerDronMouseOver = marker => {};
const handlerDronClick = (controlId, idntfNum) => {
// const idntfNum = marker.id;
// const contorlId = marker.controlId;
setArrMarkers(m => [...m, marker]);
};
// 클릭한 식별번호 정보를 가진 그룹 추출
// const group = controlGroupAuthInfo.find(group => group.idntfNum === idntfNum);
//히스토리 불러오기
const handlerDronClick = (controlId, idntfNum) => {
// get detail, history, flight-plan
dispatch(objectClickAction(controlId));
dispatch(controlGpDtlAction.request(controlId));
dispatch(controlGpFlightPlanAction.request(idntfNum));
// dispatch(controlGpLogAction.request({ id: controlId }));
// dispatch(controlGpLogAction.request(controlId));
// dispatch(controlGpHisAction.request({ id: objectId }));
dispatch(controlGpFlightPlanAction.request(idntfNum));
};
//마커를 삭제 한다.
@ -208,21 +192,6 @@ export const DronMarker = props => {
dispatch(objectUnClickAction());
}
});
// arrInfos.map(info => {
// const isExists = arrMarkers.find(
// marker => marker.id === info._id
// );
// if (!isExists) {
// removeInfos(info);
// const arrData = arrInfos.filter(
// item => item.id != info._id
// );
// removeArrInfos(arrData);
// // dispatch(objectUnClickAction());
// }
// });
}
};

Loading…
Cancel
Save