|
|
|
@ -25,7 +25,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
constructor: Measure, |
|
|
|
|
|
|
|
|
|
setMap: function(map) { |
|
|
|
|
console.log('setMap') |
|
|
|
|
// console.log('setMap')
|
|
|
|
|
if (this.map) { |
|
|
|
|
this._unbindMap(this.map); |
|
|
|
|
} |
|
|
|
@ -38,7 +38,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
startMode: function(mode) { |
|
|
|
|
console.log('startMode') |
|
|
|
|
// console.log('startMode')
|
|
|
|
|
if (!mode) return; |
|
|
|
|
|
|
|
|
|
if (mode === 'line') { |
|
|
|
@ -53,7 +53,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_startDistance: function() { |
|
|
|
|
console.log('startDistance') |
|
|
|
|
// console.log('startDistance')
|
|
|
|
|
var map = this.map; |
|
|
|
|
this._distanceListeners = [ |
|
|
|
|
naver.maps.Event.addListener(map, 'click', this._onClickDistance.bind(this)) |
|
|
|
@ -61,7 +61,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_startArea: function() { |
|
|
|
|
console.log('startArea') |
|
|
|
|
//console.log('startArea')
|
|
|
|
|
var map = this.map; |
|
|
|
|
|
|
|
|
|
this._areaListeners = [ |
|
|
|
@ -73,7 +73,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_startCircle: function() { |
|
|
|
|
console.log('startCircle') |
|
|
|
|
//console.log('startCircle')
|
|
|
|
|
var map = this.map; |
|
|
|
|
this._circleListeners = [ |
|
|
|
|
naver.maps.Event.addListener(map, 'click', this._onClickCircle.bind(this)), |
|
|
|
@ -82,7 +82,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_startRectangle: function() { |
|
|
|
|
console.log('startRectangle') |
|
|
|
|
//console.log('startRectangle')
|
|
|
|
|
var map = this.map; |
|
|
|
|
this._rectangleListeners = [ |
|
|
|
|
naver.maps.Event.addListener(map, 'click', this._onClickRectangle.bind(this)), |
|
|
|
@ -91,7 +91,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_finishDistance: function() { |
|
|
|
|
console.log('finishDistance') |
|
|
|
|
//console.log('finishDistance')
|
|
|
|
|
|
|
|
|
|
naver.maps.Event.removeListener(this._distanceListeners); |
|
|
|
|
delete this._distanceListeners; |
|
|
|
@ -120,7 +120,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
obj = JSON.stringify(obj); |
|
|
|
|
polypathJSON.push(JSON.parse(obj));
|
|
|
|
|
} |
|
|
|
|
console.log(polypathJSON, 'json polyline path') |
|
|
|
|
// console.log(polypathJSON, 'json polyline path')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//버퍼 생성에 필요한 coordinates 배열 변환
|
|
|
|
@ -128,7 +128,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
for(let i = 0; i < this._polyline.getPath().length; i++) { |
|
|
|
|
lineStringPaths.push([this._polyline.getPath()._array[i].x, this._polyline.getPath()._array[i].y]); |
|
|
|
|
} |
|
|
|
|
console.log(lineStringPaths, 'polyline path') |
|
|
|
|
// console.log(lineStringPaths, 'polyline path')
|
|
|
|
|
|
|
|
|
|
//버퍼 생성을 위한 line 객체
|
|
|
|
|
const originalGeojson = { |
|
|
|
@ -144,14 +144,14 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
}; |
|
|
|
|
console.log(originalGeojson) |
|
|
|
|
// console.log(originalGeojson)
|
|
|
|
|
|
|
|
|
|
//버퍼 객체
|
|
|
|
|
const bufferObj = buffer(originalGeojson, 50, {units:'meters'}); |
|
|
|
|
|
|
|
|
|
//버퍼 라인 생성
|
|
|
|
|
let bufferPath = bufferObj.features[0].geometry.coordinates[0]; |
|
|
|
|
console.log(bufferPath, 'buffer path') |
|
|
|
|
// console.log(bufferPath, 'buffer path')
|
|
|
|
|
|
|
|
|
|
this.bufferPolyline = new naver.maps.Polyline({ |
|
|
|
|
strokeColor: '#ff0000', |
|
|
|
@ -174,7 +174,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_finishArea: function() { |
|
|
|
|
console.log('finishArea') |
|
|
|
|
// console.log('finishArea')
|
|
|
|
|
naver.maps.Event.removeListener(this._areaListeners); |
|
|
|
|
delete this._areaListeners; |
|
|
|
|
|
|
|
|
@ -193,7 +193,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_finishCircle: function() { |
|
|
|
|
console.log('finishCircle') |
|
|
|
|
// console.log('finishCircle')
|
|
|
|
|
|
|
|
|
|
naver.maps.Event.removeListener(this._circleListeners); |
|
|
|
|
delete this._circleListeners; |
|
|
|
@ -219,7 +219,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_finishRectangle: function() { |
|
|
|
|
console.log('finishRectangle') |
|
|
|
|
// console.log('finishRectangle')
|
|
|
|
|
|
|
|
|
|
naver.maps.Event.removeListener(this._rectangleListeners); |
|
|
|
|
delete this._rectangleListeners; |
|
|
|
@ -237,7 +237,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
finishMode: function(mode) { |
|
|
|
|
console.log('finishMode') |
|
|
|
|
// console.log('finishMode')
|
|
|
|
|
if (!mode) return; |
|
|
|
|
|
|
|
|
|
if (mode === 'line') { |
|
|
|
@ -297,7 +297,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onClickDistance: function(e) { |
|
|
|
|
console.log('onClickDistance') |
|
|
|
|
// console.log('onClickDistance')
|
|
|
|
|
var map = this.map, |
|
|
|
|
coord = e.coord; |
|
|
|
|
|
|
|
|
@ -342,7 +342,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onMouseMoveDistance: function(e) { |
|
|
|
|
console.log('onMouseMoveDistance') |
|
|
|
|
// console.log('onMouseMoveDistance')
|
|
|
|
|
var map = this.map, |
|
|
|
|
proj = this.map.getProjection(), |
|
|
|
|
coord = proj.fromPageXYToCoord(new naver.maps.Point(e.pageX, e.pageY)), |
|
|
|
@ -358,7 +358,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onClickArea: function(e) { |
|
|
|
|
console.log('onClickArea') |
|
|
|
|
// console.log('onClickArea')
|
|
|
|
|
var map = this.map, |
|
|
|
|
coord = e.coord; |
|
|
|
|
|
|
|
|
@ -376,7 +376,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onMouseMoveArea: function(e) { |
|
|
|
|
console.log('onMouseMoveArea') |
|
|
|
|
// console.log('onMouseMoveArea')
|
|
|
|
|
if (!this._polygon) return; |
|
|
|
|
|
|
|
|
|
var map = this.map, |
|
|
|
@ -392,7 +392,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onClickCircle: function(e) { |
|
|
|
|
console.log('onClickCircle') |
|
|
|
|
// console.log('onClickCircle')
|
|
|
|
|
var map = this.map, |
|
|
|
|
coord = e.coord; |
|
|
|
|
|
|
|
|
@ -449,7 +449,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onMouseMoveCircle: function(e) { |
|
|
|
|
console.log('onMouseMoveCircle') |
|
|
|
|
// console.log('onMouseMoveCircle')
|
|
|
|
|
if(!this._circle) return; |
|
|
|
|
|
|
|
|
|
var map = this.map, |
|
|
|
@ -467,7 +467,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onClickRectangle: function(e) { |
|
|
|
|
console.log('onClickRectangle') |
|
|
|
|
// console.log('onClickRectangle')
|
|
|
|
|
var map = this.map, |
|
|
|
|
coord = e.coord; |
|
|
|
|
|
|
|
|
@ -510,7 +510,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_onMouseMoveRectangle: function(e) { |
|
|
|
|
console.log('onMouseMoveRectangle') |
|
|
|
|
// console.log('onMouseMoveRectangle')
|
|
|
|
|
if(!this._rectangle) return; |
|
|
|
|
|
|
|
|
|
var map = this.map, |
|
|
|
@ -524,16 +524,16 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_bindMap: function(map) { |
|
|
|
|
console.log('bindMap') |
|
|
|
|
// console.log('bindMap')
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_unbindMap: function() { |
|
|
|
|
console.log('unbindMap') |
|
|
|
|
// console.log('unbindMap')
|
|
|
|
|
this.unbindAll(); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_bindDOMEvents: function() { |
|
|
|
|
console.log('bindDOMEvents') |
|
|
|
|
// console.log('bindDOMEvents')
|
|
|
|
|
this.$btnLine.on('click.measure', this._onClickButton.bind(this, 'line')); |
|
|
|
|
this.$btnPolygon.on('click.measure', this._onClickButton.bind(this, 'polygon')); |
|
|
|
|
this.$btnCircle.on('click.measure', this._onClickButton.bind(this, 'circle')); |
|
|
|
@ -543,7 +543,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
|
|
|
|
|
_onClickButton: function(newMode, e) { |
|
|
|
|
//newMode는 방금 클릭한 값(line, polygon, circle...)
|
|
|
|
|
console.log('onClickButton') |
|
|
|
|
// console.log('onClickButton')
|
|
|
|
|
e.preventDefault(); |
|
|
|
|
|
|
|
|
|
var btn = $(e.target), |
|
|
|
@ -552,10 +552,10 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
//this._mode는 클릭하기 전 값(첫 클릭이면 null)
|
|
|
|
|
|
|
|
|
|
if (btn.hasClass('control-on')) { |
|
|
|
|
console.log('remove') |
|
|
|
|
// console.log('remove')
|
|
|
|
|
btn.removeClass('control-on'); |
|
|
|
|
} else { |
|
|
|
|
console.log('add') |
|
|
|
|
// console.log('add')
|
|
|
|
|
btn.addClass('control-on'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -572,7 +572,7 @@ export const FlightPlanDraw = props => {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_clearMode: function(mode) { |
|
|
|
|
console.log('clearMode') |
|
|
|
|
// console.log('clearMode')
|
|
|
|
|
if (!mode) return; |
|
|
|
|
|
|
|
|
|
if (mode === 'line') { |
|
|
|
|