From 039340c59c3e01140fc86e4272b9d74db4e3e59d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?junh=5Feee=28=EC=9D=B4=EC=A4=80=ED=9D=AC=29?= Date: Fri, 15 Jul 2022 15:16:39 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B9=84=ED=96=89=EA=B5=AC=EC=97=AD=20draw=20?= =?UTF-8?q?=EA=B8=B0=EB=8A=A5=20=EC=98=AE=EA=B8=B0=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/css/custom.css | 1 + .../basis/flight/plan/FlightPlanAreaMap.js | 86 ++- .../basis/flight/plan/FlightPlanAreaModal.js | 2 +- .../map/naver/draw/FlightPlanDraw.js | 652 ++++++++++++++++++ .../map/naver/draw/FlightPlanDrawTest.js | 476 +++++++++++++ .../flight/plan/FlightPlanAreaContainer.js | 7 +- .../flight/plan/FlightPlanDetailContainer.js | 16 +- 7 files changed, 1212 insertions(+), 28 deletions(-) create mode 100644 src/components/map/naver/draw/FlightPlanDraw.js create mode 100644 src/components/map/naver/draw/FlightPlanDrawTest.js diff --git a/src/assets/css/custom.css b/src/assets/css/custom.css index 0f44874..70639f7 100644 --- a/src/assets/css/custom.css +++ b/src/assets/css/custom.css @@ -250,6 +250,7 @@ h1.logo span{display:block;color:#f4f4f4;font-weight:bold;letter-spacing:2px;fon .left-menu-nav .test .btn-use{margin-left:20px; width: 35px; height: 35px; display: block; border: 0px solid transparent; box-sizing: content-box !important; background-color: #009cad;} .measure-control{position:absolute; z-index:100;} +.area-button{position:relative; z-index:100; margin-top:10px; margin-left:10px;} .control-btn{margin-left: 7px; border-bottom: solid 1px #283046; margin-bottom:5px;} .buffer-input{text-align: center; border-radius: 100px; border: 1px solid #283046; width: 70px; margin-left: 5px;} diff --git a/src/components/basis/flight/plan/FlightPlanAreaMap.js b/src/components/basis/flight/plan/FlightPlanAreaMap.js index 926493d..e512252 100644 --- a/src/components/basis/flight/plan/FlightPlanAreaMap.js +++ b/src/components/basis/flight/plan/FlightPlanAreaMap.js @@ -4,28 +4,46 @@ import { CardBody, Button } from 'reactstrap'; +import { useDispatch, useSelector } from 'react-redux'; import { FeatureAirZone } from '../../../map/naver/feature/FeatureAirZone'; -import { JQueryDraw } from '../../../mapDraw/naver/draw/JQueryDraw'; +import { FlightPlanDraw } from '../../../map/naver/draw/FlightPlanDraw'; +import { FlightPlanDrawTest } from '../../../map/naver/draw/FlightPlanDrawTest'; +import { drawTypeChangeAction } from '../../../../modules/control/map/actions/controlMapActions'; const FlightPlanAreaMap = (props) => { + const dispatch = useDispatch(); const naver = window.naver; const airArea = props.airArea; + const mapControl = useSelector(state => state.controlMapReducer); + const [map, setMap] = useState(); const [isMapLoad, setIsMapLoad] = useState(false); + const [test, setTest] = useState(); useEffect(() => { - NaverMapInit(); + NaverMapInit(); }, []); useEffect(() => { - setIsMapLoad(true); + setIsMapLoad(true); }, [airArea]); + useEffect(() => { + testt(); + }, [mapControl]) + + const testt = () => { + setTest(mapControl.drawType) + // console.log(test, 'test'); + } + const NaverMapInit = () => { const mapOptions = { - center: new naver.maps.LatLng(36.56793936069445, 127.85101412107547), - zoom: 10, + // center: new naver.maps.LatLng(36.56793936069445, 127.85101412107547), + center: new naver.maps.LatLng(37.520357, 126.610166), + // zoom: 10, + zoom:17, zoomControl: true, mapTypeId: naver.maps.MapTypeId.NORMAL, zoomControlOptions: { @@ -38,6 +56,9 @@ const FlightPlanAreaMap = (props) => { setMap(new naver.maps.Map('map', mapOptions)); }; + const handlerDrawType = val => { + dispatch(drawTypeChangeAction(val)); + }; return ( @@ -50,8 +71,27 @@ const FlightPlanAreaMap = (props) => { -
- +
+
+ + + {/* + 확인 + + + 초기화 + */} +
@@ -60,17 +100,27 @@ const FlightPlanAreaMap = (props) => { ) : null}
- - Line - - - Circle - + handlerDrawType('LINE')} + > + WayPoint + + handlerDrawType('CIRCLE')} + > + Circle + + handlerDrawType('POLYGON')} + > + Polygon +
diff --git a/src/components/basis/flight/plan/FlightPlanAreaModal.js b/src/components/basis/flight/plan/FlightPlanAreaModal.js index 3bcee8f..49ce4e4 100644 --- a/src/components/basis/flight/plan/FlightPlanAreaModal.js +++ b/src/components/basis/flight/plan/FlightPlanAreaModal.js @@ -28,7 +28,7 @@ export const FlightPlanAreaModal = props => { setModal={props.setModal} onSubmit={onSubmit} setOnSubmit={setOnSubmit} - /> + /> {/*