Browse Source

송전선 및 선로 표기 진행중

master
hhjk00 11 months ago
parent
commit
87997130e2
  1. BIN
      src/assets/images/transmission_tower_icon.png
  2. 598
      src/components/map/geojson/uamAirArea.json
  3. 15
      src/components/map/naver/feature/FeatureAirZone.js

BIN
src/assets/images/transmission_tower_icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

598
src/components/map/geojson/uamAirArea.json

@ -612,6 +612,604 @@
"description": "", "description": "",
"route": "TC" "route": "TC"
} }
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.6037885, 37.5799164],
[126.6030589, 37.5826372],
[126.6032735, 37.58563],
[126.6056339, 37.5873303],
[126.6117708, 37.5870923],
[126.6133586, 37.585732],
[126.6230146, 37.585766]
]
},
"properties": {
"name": "송전선로",
"description": "01",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6037885, 37.5799164]
},
"properties": {
"name": "송전탑",
"description": "01",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6230146, 37.585766]
},
"properties": {
"name": "송전탑",
"description": "02",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.6656841, 37.5574589],
[126.6679157, 37.562902],
[126.6689456, 37.5646029],
[126.6691602, 37.5682937],
[126.6732934, 37.5786285],
[126.6699245, 37.5875347],
[126.651707, 37.5929586],
[126.6470292, 37.5971325],
[126.6463211, 37.5999207],
[126.6459563, 37.6000397],
[126.6398838, 37.6042048],
[126.6278246, 37.612122],
[126.6216877, 37.6087223],
[126.6184261, 37.6141957],
[126.6132334, 37.6156914],
[126.6024616, 37.6231358],
[126.6010883, 37.6251752]
]
},
"properties": {
"name": "송전선로",
"description": "02",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6656841, 37.5574589]
},
"properties": {
"name": "송전탑",
"description": "03",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6699245, 37.5875347]
},
"properties": {
"name": "송전탑",
"description": "04",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6459563, 37.6000397]
},
"properties": {
"name": "송전탑",
"description": "05",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6216877, 37.6087223]
},
"properties": {
"name": "송전탑",
"description": "06",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6010883, 37.6251752]
},
"properties": {
"name": "송전탑",
"description": "07",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.6897596, 37.6121102],
[126.6908754, 37.6126542],
[126.6930211, 37.6088466],
[126.6954244, 37.6073507],
[126.697141, 37.6040868],
[126.6947377, 37.6031349],
[126.6952527, 37.6010948],
[126.694051, 37.5994288],
[126.6911328, 37.5981707],
[126.6886008, 37.5955695],
[126.6889012, 37.5928152],
[126.6907465, 37.5886665],
[126.6922057, 37.5852657],
[126.6901457, 37.5833953],
[126.6903603, 37.5810486],
[126.6872704, 37.5797222],
[126.6856805, 37.5762871],
[126.6867652, 37.5636071],
[126.6903228, 37.5598311],
[126.6968675, 37.5584703],
[126.700129, 37.5553743],
[126.7064376, 37.5550681],
[126.7134328, 37.5549661],
[126.7173421, 37.5545815],
[126.7222733, 37.5530546],
[126.7281527, 37.5530742],
[126.7356629, 37.5505904]
]
},
"properties": {
"name": "송전선로",
"description": "03",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6897596, 37.6121102]
},
"properties": {
"name": "송전탑",
"description": "08",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6907465, 37.5886665]
},
"properties": {
"name": "송전탑",
"description": "09",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7064376, 37.5550681]
},
"properties": {
"name": "송전탑",
"description": "10",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7356629, 37.5505904]
},
"properties": {
"name": "송전탑",
"description": "11",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.7064376, 37.5550681],
[126.7031052, 37.5514421],
[126.7009165, 37.5475633],
[126.7000797, 37.5450794],
[126.7008092, 37.540826],
[126.7054012, 37.5372869],
[126.6945007, 37.5289321],
[126.6865828, 37.5274856],
[126.6850164, 37.527877],
[126.6829135, 37.5284216],
[126.6783001, 37.5276898],
[126.6728713, 37.5292044],
[126.6604903, 37.5276218],
[126.644397, 37.523027],
[126.6325524, 37.519419],
[126.626673, 37.5164917],
[126.6248276, 37.5135302],
[126.6189911, 37.5119643],
[126.6152146, 37.5112494],
[126.6111805, 37.5122026],
[126.6131546, 37.4975974],
[126.6264155, 37.4976655],
[126.6339686, 37.4929326],
[126.6384318, 37.4845558]
]
},
"properties": {
"name": "송전선로",
"description": "04",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7054012, 37.5372869]
},
"properties": {
"name": "송전탑",
"description": "12",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6850164, 37.527877]
},
"properties": {
"name": "송전탑",
"description": "13",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.644397, 37.523027]
},
"properties": {
"name": "송전탑",
"description": "14",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6111805, 37.5122026]
},
"properties": {
"name": "송전탑",
"description": "15",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7356629, 37.5505904]
},
"properties": {
"name": "송전탑",
"description": "16",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6131546, 37.4975974]
},
"properties": {
"name": "송전탑",
"description": "17",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6384318, 37.4845558]
},
"properties": {
"name": "송전탑",
"description": "18",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.6850164, 37.527877],
[126.6874636, 37.5261447],
[126.687807, 37.5241195],
[126.6850711, 37.5187672],
[126.6840411, 37.5152271],
[126.6846634, 37.5097294],
[126.6914011, 37.497422],
[126.6947271, 37.4926977],
[126.6969158, 37.4905525],
[126.6933323, 37.4885519],
[126.7041041, 37.4865769],
[126.7039324, 37.4843464],
[126.7074515, 37.4814347],
[126.7097689, 37.4817582],
[126.7149831, 37.4783526],
[126.7213775, 37.4726308],
[126.7280723, 37.4706213],
[126.7300249, 37.4706213],
[126.7377685, 37.4685478],
[126.7432831, 37.4635066],
[126.7445276, 37.4622121],
[126.7533253, 37.4605089],
[126.7930649, 37.4563188],
[126.7958544, 37.4572726],
[126.8000816, 37.455416],
[126.8174194, 37.446081],
[126.8224405, 37.4384145]
]
},
"properties": {
"name": "송전선로",
"description": "05",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.6933323, 37.4885519]
},
"properties": {
"name": "송전탑",
"description": "19",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7213775, 37.4726308]
},
"properties": {
"name": "송전탑",
"description": "20",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7533253, 37.4605089]
},
"properties": {
"name": "송전탑",
"description": "21",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7958544, 37.4572726]
},
"properties": {
"name": "송전탑",
"description": "22",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.8224405, 37.4384145]
},
"properties": {
"name": "송전탑",
"description": "23",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.8224405, 37.4384145],
[126.822279, 37.4409741],
[126.8232813, 37.4441509],
[126.8260064, 37.4466551],
[126.8387093, 37.4519701],
[126.8372349, 37.4628634],
[126.835411, 37.4774925],
[126.8356041, 37.482022],
[126.8364991, 37.484601],
[126.8343963, 37.4862696],
[126.8233241, 37.4898451]
]
},
"properties": {
"name": "송전선로",
"description": "06",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.8387093, 37.4519701]
},
"properties": {
"name": "송전탑",
"description": "24",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.8233241, 37.4898451]
},
"properties": {
"name": "송전탑",
"description": "25",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.8372349, 37.4628634],
[126.8439244, 37.4620384],
[126.8469928, 37.4613827],
[126.847143, 37.4605566],
[126.8498091, 37.4603735],
[126.8560909, 37.4597433],
[126.8587302, 37.4588917],
[126.8629037, 37.4563452],
[126.8632685, 37.4558002],
[126.8695234, 37.4481687],
[126.8750058, 37.4459115],
[126.8803488, 37.4433561],
[126.8848763, 37.445213]
]
},
"properties": {
"name": "송전선로",
"description": "07",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.847143, 37.4605566]
},
"properties": {
"name": "송전탑",
"description": "26",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.8848763, 37.445213]
},
"properties": {
"name": "송전탑",
"description": "27",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[126.7514947, 37.5207621],
[126.7558291, 37.5264462],
[126.7584041, 37.5276034],
[126.7617085, 37.5309727],
[126.7640689, 37.5310408],
[126.7717936, 37.5339675],
[126.797972, 37.5357031],
[126.8061688, 37.5350225]
]
},
"properties": {
"name": "송전선로",
"description": "08",
"tower": "line"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7514947, 37.5207621]
},
"properties": {
"name": "송전탑",
"description": "28",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.7617085, 37.5309727]
},
"properties": {
"name": "송전탑",
"description": "29",
"tower": "point"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [126.8061688, 37.5350225]
},
"properties": {
"name": "송전탑",
"description": "30",
"tower": "point"
}
} }
] ]
} }

15
src/components/map/naver/feature/FeatureAirZone.js

@ -2,6 +2,7 @@ import { useEffect, useState } from 'react';
import { useDispatch, useSelector } from 'react-redux'; import { useDispatch, useSelector } from 'react-redux';
import '../../../../assets/css/custom.css'; import '../../../../assets/css/custom.css';
import * as Actions from '../../../../modules/basis/flight/actions/basisFlightAction'; import * as Actions from '../../../../modules/basis/flight/actions/basisFlightAction';
import towerImg from '../../../../assets/images/transmission_tower_icon.png';
export const FeatureAirZone = props => { export const FeatureAirZone = props => {
const dispatch = useDispatch(); const dispatch = useDispatch();
@ -40,6 +41,7 @@ export const FeatureAirZone = props => {
} }
}, [uamCoordinates]); }, [uamCoordinates]);
// uam 노선 buffer 그리기
useEffect(() => { useEffect(() => {
let bufferPaths = []; let bufferPaths = [];
@ -143,6 +145,8 @@ export const FeatureAirZone = props => {
}); });
} }
} }
} else if (item.properties.tower) {
arrGeoJson.push(item);
} }
}); });
@ -161,6 +165,10 @@ export const FeatureAirZone = props => {
'<div style="width: 12px; height: 12px; background-color: white; border: 1px solid black; border-radius: 50%;"></div>', '<div style="width: 12px; height: 12px; background-color: white; border: 1px solid black; border-radius: 50%;"></div>',
anchor: new naver.maps.Point(7, 6) anchor: new naver.maps.Point(7, 6)
}; };
var towerIcon = {
content: `<img src=${towerImg} style="width: 26px; height: 26px" />`,
anchor: new naver.maps.Point(15, 15)
};
//0001 비행금지구역 #FF3648 //0001 비행금지구역 #FF3648
//0002 비행제한구역 #FFA1AA //0002 비행제한구역 #FFA1AA
@ -172,6 +180,7 @@ export const FeatureAirZone = props => {
const type = feature.getProperty('type'); const type = feature.getProperty('type');
const name = feature.getProperty('name'); const name = feature.getProperty('name');
const route = feature.getProperty('route'); const route = feature.getProperty('route');
const tower = feature.getProperty('tower');
if (type === '0001') { if (type === '0001') {
color = '#FF3648'; color = '#FF3648';
@ -189,14 +198,16 @@ export const FeatureAirZone = props => {
color = '#020715'; color = '#020715';
} else if (route) { } else if (route) {
color = '#FF1493'; color = '#FF1493';
} else if (tower) {
color = '#960018';
} }
return { return {
fillColor: name === '김포공항' ? '#ffffff' : color, fillColor: name === '김포공항' ? '#ffffff' : color,
opercity: name === '김포공항' ? 0 : 1, opercity: name === '김포공항' ? 0 : 1,
strokeColor: color, strokeColor: color,
strokeWeight: name === '김포공항' ? 1 : route ? 3 : 0.7, strokeWeight: name === '김포공항' ? 1 : route ? 3 : tower ? 2 : 0.7,
icon: route ? wayPointIcon : null, icon: route ? wayPointIcon : tower ? towerIcon : null,
strokeStyle: route ? 'shortdash' : '' strokeStyle: route ? 'shortdash' : ''
}; };
}); });

Loading…
Cancel
Save