도형을 좀 더 쉽게 그릴 수 있는 Toolbox를 생성하고 지도에 표시합니다.
var mapContainer = document.getElementById('map'), // 지도를 표시할 div mapOption = { center: new kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표 level: 3 // 지도의 확대 레벨 }; // 지도를 표시할 div와 지도 옵션으로 지도를 생성합니다 var map = new kakao.maps.Map(mapContainer, mapOption); // 도형 스타일을 변수로 설정합니다 var strokeColor = '#39f', fillColor = '#cce6ff', fillOpacity = 0.5, hintStrokeStyle = 'dash'; var options = { // Drawing Manager를 생성할 때 사용할 옵션입니다 map: map, // Drawing Manager로 그리기 요소를 그릴 map 객체입니다 drawingMode: [ kakao.maps.Drawing.OverlayType.MARKER, kakao.maps.Drawing.OverlayType.ARROW, kakao.maps.Drawing.OverlayType.POLYLINE, kakao.maps.Drawing.OverlayType.RECTANGLE, kakao.maps.Drawing.OverlayType.CIRCLE, kakao.maps.Drawing.OverlayType.ELLIPSE, kakao.maps.Drawing.OverlayType.POLYGON ], // 사용자에게 제공할 그리기 가이드 툴팁입니다 // 사용자에게 도형을 그릴때, 드래그할때, 수정할때 가이드 툴팁을 표시하도록 설정합니다 guideTooltip: ['draw', 'drag', 'edit'], markerOptions: { draggable: true, removable: true }, arrowOptions: { draggable: true, removable: true, strokeColor: strokeColor, hintStrokeStyle: hintStrokeStyle }, polylineOptions: { draggable: true, removable: true, strokeColor: strokeColor, hintStrokeStyle: hintStrokeStyle }, rectangleOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity }, circleOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity }, ellipseOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity }, polygonOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity } }; // 위에 작성한 옵션으로 Drawing Manager를 생성합니다 var manager = new kakao.maps.Drawing.DrawingManager(options); // Toolbox를 생성합니다. // Toolbox 생성 시 위에서 생성한 DrawingManager 객체를 설정합니다. // DrawingManager 객체를 꼭 설정해야만 그리기 모드와 매니저의 상태를 툴박스에 설정할 수 있습니다. var toolbox = new kakao.maps.Drawing.Toolbox({drawingManager: manager}); // 지도 위에 Toolbox를 표시합니다 // kakao.maps.ControlPosition은 컨트롤이 표시될 위치를 정의하는데 TOP은 위 가운데를 의미합니다. map.addControl(toolbox.getElement(), kakao.maps.ControlPosition.TOP);
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Toolbox 사용하기</title> </head> <body> <div id="map" style="width:100%;height:350px;"></div> <script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=발급받은 APP KEY를 사용하세요&libraries=drawing"></script> <script> var mapContainer = document.getElementById('map'), // 지도를 표시할 div mapOption = { center: new kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표 level: 3 // 지도의 확대 레벨 }; // 지도를 표시할 div와 지도 옵션으로 지도를 생성합니다 var map = new kakao.maps.Map(mapContainer, mapOption); // 도형 스타일을 변수로 설정합니다 var strokeColor = '#39f', fillColor = '#cce6ff', fillOpacity = 0.5, hintStrokeStyle = 'dash'; var options = { // Drawing Manager를 생성할 때 사용할 옵션입니다 map: map, // Drawing Manager로 그리기 요소를 그릴 map 객체입니다 drawingMode: [ kakao.maps.Drawing.OverlayType.MARKER, kakao.maps.Drawing.OverlayType.ARROW, kakao.maps.Drawing.OverlayType.POLYLINE, kakao.maps.Drawing.OverlayType.RECTANGLE, kakao.maps.Drawing.OverlayType.CIRCLE, kakao.maps.Drawing.OverlayType.ELLIPSE, kakao.maps.Drawing.OverlayType.POLYGON ], // 사용자에게 제공할 그리기 가이드 툴팁입니다 // 사용자에게 도형을 그릴때, 드래그할때, 수정할때 가이드 툴팁을 표시하도록 설정합니다 guideTooltip: ['draw', 'drag', 'edit'], markerOptions: { draggable: true, removable: true }, arrowOptions: { draggable: true, removable: true, strokeColor: strokeColor, hintStrokeStyle: hintStrokeStyle }, polylineOptions: { draggable: true, removable: true, strokeColor: strokeColor, hintStrokeStyle: hintStrokeStyle }, rectangleOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity }, circleOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity }, ellipseOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity }, polygonOptions: { draggable: true, removable: true, strokeColor: strokeColor, fillColor: fillColor, fillOpacity: fillOpacity } }; // 위에 작성한 옵션으로 Drawing Manager를 생성합니다 var manager = new kakao.maps.Drawing.DrawingManager(options); // Toolbox를 생성합니다. // Toolbox 생성 시 위에서 생성한 DrawingManager 객체를 설정합니다. // DrawingManager 객체를 꼭 설정해야만 그리기 모드와 매니저의 상태를 툴박스에 설정할 수 있습니다. var toolbox = new kakao.maps.Drawing.Toolbox({drawingManager: manager}); // 지도 위에 Toolbox를 표시합니다 // kakao.maps.ControlPosition은 컨트롤이 표시될 위치를 정의하는데 TOP은 위 가운데를 의미합니다. map.addControl(toolbox.getElement(), kakao.maps.ControlPosition.TOP); </script> </body> </html>