@vtx/ol-map 2.0.0-beta.4 → 2.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/_util/projection.js +44 -0
- package/lib/_util/projection.js.map +1 -0
- package/lib/_util/search.js +32 -45
- package/lib/_util/search.js.map +1 -1
- package/lib/arrow-flow-layer/ArrowFlowLayer.js +438 -0
- package/lib/arrow-flow-layer/ArrowFlowLayer.js.map +1 -0
- package/lib/arrow-flow-layer/index.js +140 -0
- package/lib/arrow-flow-layer/index.js.map +1 -0
- package/lib/arrow-flow-layer/sampleArrowsAlongLine.js +87 -0
- package/lib/arrow-flow-layer/sampleArrowsAlongLine.js.map +1 -0
- package/lib/arrow-flow-layer/style/css.js +4 -0
- package/lib/arrow-flow-layer/style/css.js.map +1 -0
- package/lib/arrow-flow-layer/style/index.css +0 -0
- package/lib/arrow-flow-layer/style/index.js +4 -0
- package/lib/arrow-flow-layer/style/index.js.map +1 -0
- package/lib/arrow-flow-layer/style/index.less +0 -0
- package/lib/buffer-draw/BufferDraw.js +4 -3
- package/lib/buffer-draw/BufferDraw.js.map +1 -1
- package/lib/buffer-draw/index.js +3 -1
- package/lib/buffer-draw/index.js.map +1 -1
- package/lib/feature-draw/FeatureDraw.js +4 -3
- package/lib/feature-draw/FeatureDraw.js.map +1 -1
- package/lib/feature-draw/index.js +4 -1
- package/lib/feature-draw/index.js.map +1 -1
- package/lib/feature-layer/FeatureLayer.js +63 -27
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/createFeatureCollection.js +2 -2
- package/lib/feature-layer/createFeatureCollection.js.map +1 -1
- package/lib/group-layer/GroupLayer.js +6 -4
- package/lib/group-layer/GroupLayer.js.map +1 -1
- package/lib/heatmap-layer/index.js +12 -3
- package/lib/heatmap-layer/index.js.map +1 -1
- package/lib/high-layer/HighLayer.js +7 -5
- package/lib/high-layer/HighLayer.js.map +1 -1
- package/lib/high-layer/index.js +4 -2
- package/lib/high-layer/index.js.map +1 -1
- package/lib/index.js +7 -0
- package/lib/index.js.map +1 -1
- package/lib/legend/index.js +4 -2
- package/lib/legend/index.js.map +1 -1
- package/lib/map/Layers.js +7 -6
- package/lib/map/Layers.js.map +1 -1
- package/lib/map/Popup.js +16 -11
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/defaultTextEnum.js +165 -0
- package/lib/map/defaultTextEnum.js.map +1 -0
- package/lib/map/index.js +41 -29
- package/lib/map/index.js.map +1 -1
- package/lib/poi-search/PoiList.js +18 -10
- package/lib/poi-search/PoiList.js.map +1 -1
- package/lib/poi-search/Search.js +10 -4
- package/lib/poi-search/Search.js.map +1 -1
- package/lib/poi-search/index.js +11 -5
- package/lib/poi-search/index.js.map +1 -1
- package/lib/search-map/VtxModal.js +6 -6
- package/lib/search-map/VtxModal.js.map +1 -1
- package/lib/search-map/index.js +58 -16
- package/lib/search-map/index.js.map +1 -1
- package/lib/search-map/style/index.css +16 -3
- package/lib/search-map/style/index.less +21 -5
- package/lib/search-map/style/modal.css +12 -12
- package/lib/search-map/style/modal.less +17 -9
- package/lib/tile-layer/index.js +4 -2
- package/lib/tile-layer/index.js.map +1 -1
- package/lib/tools/Search/index.js +21 -20
- package/lib/tools/Search/index.js.map +1 -1
- package/lib/tools/Toolbox/BoxSelect/index.js +4 -1
- package/lib/tools/Toolbox/BoxSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/CircleSelect/index.js +4 -1
- package/lib/tools/Toolbox/CircleSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/EagleEye/index.js +3 -2
- package/lib/tools/Toolbox/EagleEye/index.js.map +1 -1
- package/lib/tools/Toolbox/MapBookmark/index.js +40 -39
- package/lib/tools/Toolbox/MapBookmark/index.js.map +1 -1
- package/lib/tools/Toolbox/MapPrint/index.js +19 -17
- package/lib/tools/Toolbox/MapPrint/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Measure.js +24 -15
- package/lib/tools/Toolbox/Measure/Measure.js.map +1 -1
- package/lib/tools/Toolbox/Measure/index.js +7 -5
- package/lib/tools/Toolbox/Measure/index.js.map +1 -1
- package/lib/tools/Toolbox/ScaleLine/index.js +3 -2
- package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -1
- package/lib/tools/Toolbox/SelectTools/index.js +77 -65
- package/lib/tools/Toolbox/SelectTools/index.js.map +1 -1
- package/lib/tools/Toolbox/SpaceQuery/index.js +56 -51
- package/lib/tools/Toolbox/SpaceQuery/index.js.map +1 -1
- package/lib/tools/Toolbox/ZoomInput/index.js +4 -1
- package/lib/tools/Toolbox/ZoomInput/index.js.map +1 -1
- package/lib/tools/Toolbox/draftingPrint/index.css +26 -0
- package/lib/tools/Toolbox/draftingPrint/index.js +366 -0
- package/lib/tools/Toolbox/draftingPrint/index.js.map +1 -0
- package/lib/tools/Toolbox/draftingPrint/index.less +34 -0
- package/lib/tools/Toolbox/index.js +34 -24
- package/lib/tools/Toolbox/index.js.map +1 -1
- package/lib/tools/Utils/HighLayer.js +2 -1
- package/lib/tools/Utils/HighLayer.js.map +1 -1
- package/lib/tools/View/index.js +13 -12
- package/lib/tools/View/index.js.map +1 -1
- package/lib/tools/base-map-switch/index.js +44 -40
- package/lib/tools/base-map-switch/index.js.map +1 -1
- package/lib/tools/components/Chart/index.js +5 -1
- package/lib/tools/components/Chart/index.js.map +1 -1
- package/lib/tools/components/Table/index.js +5 -2
- package/lib/tools/components/Table/index.js.map +1 -1
- package/lib/tools/index.js +1 -1
- package/lib/tools/index.js.map +1 -1
- package/lib/tools/layer-control/index.js +3 -2
- package/lib/tools/layer-control/index.js.map +1 -1
- package/package.json +2 -1
|
@@ -56,7 +56,8 @@ function _default(props) {
|
|
|
56
56
|
var download = props.download,
|
|
57
57
|
onClose = props.onClose;
|
|
58
58
|
var _useProps = (0, _useProps2["default"])(),
|
|
59
|
-
map = _useProps.map
|
|
59
|
+
map = _useProps.map,
|
|
60
|
+
TextEnum = _useProps.TextEnum;
|
|
60
61
|
var _useState = (0, _react.useState)(false),
|
|
61
62
|
_useState2 = _slicedToArray(_useState, 2),
|
|
62
63
|
visible = _useState2[0],
|
|
@@ -80,10 +81,10 @@ function _default(props) {
|
|
|
80
81
|
});
|
|
81
82
|
tool.setActive(false);
|
|
82
83
|
tool.on('drawstart', function () {
|
|
83
|
-
map.showTip(
|
|
84
|
+
map.showTip(TextEnum.clickAgainToEnd);
|
|
84
85
|
});
|
|
85
86
|
tool.on('drawend', function (event) {
|
|
86
|
-
map.showTip(
|
|
87
|
+
map.showTip(TextEnum.leftClickToStart);
|
|
87
88
|
map.getView().fit(event.feature.values_.geometry.getExtent(), {
|
|
88
89
|
maxZoom: 20,
|
|
89
90
|
duration: 500
|
|
@@ -140,7 +141,7 @@ function _default(props) {
|
|
|
140
141
|
(0, _printJs["default"])({
|
|
141
142
|
printable: url,
|
|
142
143
|
type: 'image',
|
|
143
|
-
documentTitle:
|
|
144
|
+
documentTitle: TextEnum.printImage
|
|
144
145
|
});
|
|
145
146
|
}
|
|
146
147
|
case 2:
|
|
@@ -156,12 +157,12 @@ function _default(props) {
|
|
|
156
157
|
if (val === '1') {
|
|
157
158
|
map.hideTip();
|
|
158
159
|
} else {
|
|
159
|
-
map.showTip(
|
|
160
|
+
map.showTip(TextEnum.leftClickToStart);
|
|
160
161
|
}
|
|
161
162
|
drawTool.current.setActive(val === '2');
|
|
162
163
|
};
|
|
163
164
|
return /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
|
|
164
|
-
title: "
|
|
165
|
+
title: "".concat(download ? TextEnum.toolMapDownload : TextEnum.toolMapPrint),
|
|
165
166
|
onClose: onClose
|
|
166
167
|
}, /*#__PURE__*/_react["default"].createElement(_antd.Form, {
|
|
167
168
|
name: "basic",
|
|
@@ -176,26 +177,26 @@ function _default(props) {
|
|
|
176
177
|
},
|
|
177
178
|
onFinish: onFinish
|
|
178
179
|
}, /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
179
|
-
label:
|
|
180
|
+
label: TextEnum.mapTitle,
|
|
180
181
|
name: "title",
|
|
181
182
|
rules: [{
|
|
182
183
|
required: true,
|
|
183
|
-
message:
|
|
184
|
+
message: TextEnum.pleaseInputTitle
|
|
184
185
|
}]
|
|
185
186
|
}, /*#__PURE__*/_react["default"].createElement(_antd.Input, {
|
|
186
|
-
placeholder:
|
|
187
|
+
placeholder: TextEnum.pleaseInput
|
|
187
188
|
})), /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
188
|
-
label:
|
|
189
|
+
label: TextEnum.downloadRange,
|
|
189
190
|
name: "range"
|
|
190
191
|
}, /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
191
|
-
placeholder:
|
|
192
|
+
placeholder: TextEnum.pleaseSelect,
|
|
192
193
|
allowClear: true,
|
|
193
194
|
onChange: onRangeChange
|
|
194
195
|
}, /*#__PURE__*/_react["default"].createElement(_antd.Select.Option, {
|
|
195
196
|
value: "1"
|
|
196
|
-
},
|
|
197
|
+
}, TextEnum.currentView), /*#__PURE__*/_react["default"].createElement(_antd.Select.Option, {
|
|
197
198
|
value: "2"
|
|
198
|
-
},
|
|
199
|
+
}, TextEnum.manualBoxSelect))), /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
199
200
|
wrapperCol: {
|
|
200
201
|
offset: 8,
|
|
201
202
|
span: 16
|
|
@@ -203,16 +204,17 @@ function _default(props) {
|
|
|
203
204
|
}, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
204
205
|
type: "primary",
|
|
205
206
|
htmlType: "submit"
|
|
206
|
-
},
|
|
207
|
-
|
|
208
|
-
title:
|
|
207
|
+
}, TextEnum.preview))), visible && /*#__PURE__*/_react["default"].createElement(_antd.Modal, {
|
|
208
|
+
visible: visible,
|
|
209
|
+
title: TextEnum.preview,
|
|
209
210
|
onCancel: function onCancel() {
|
|
210
211
|
return setVisible(false);
|
|
211
212
|
},
|
|
212
213
|
width: map.getViewport().clientWidth - 150,
|
|
213
214
|
centered: true,
|
|
214
215
|
onOk: onOk,
|
|
215
|
-
okText: download ?
|
|
216
|
+
okText: download ? TextEnum.download : TextEnum.print,
|
|
217
|
+
cancelText: TextEnum.cancel
|
|
216
218
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
217
219
|
style: {
|
|
218
220
|
position: 'relative',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_Modal","_interopRequireDefault","_html2canvas","_printJs","_interaction","_Draw","_Draw2","_useProps2","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_regenerator","Symbol","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","next","push","isArray","htmlToImg","dom","width","clientWidth","height","clientHeight","opts","useCORS","allowTaint","scale","dpi","html2canvas","canvas","url","toDataURL","_default","props","download","onClose","_useProps","useProps","map","_useState","useState","_useState2","visible","setVisible","_useState3","_useState4","img","setImg","_useState5","_useState6","formVal","setFormVal","drawTool","useRef","useEffect","tool","Draw","type","style","feature","drawStyle","geometryFunction","createBox","setActive","on","showTip","event","getView","fit","values_","geometry","getExtent","maxZoom","duration","current","addInteraction","removeInteraction","hideTip","contentRef","onFinish","_ref","_callee","values","_context","getViewport","_x","onOk","_ref2","_callee2","_context2","document","createElement","href","decodeURIComponent","concat","title","display","body","appendChild","click","printJS","printable","documentTitle","onRangeChange","val","Form","labelCol","span","wrapperCol","initialValues","range","Item","label","rules","required","message","Input","placeholder","Select","allowClear","onChange","Option","offset","Button","htmlType","Modal","open","onCancel","centered","okText","position","textAlign","ref","src","alt","maxHeight"],"sources":["tools/Toolbox/MapPrint/index.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Modal } from 'antd';\nimport DivModal from '../../components/Modal';\nimport html2canvas from 'html2canvas';\nimport printJS from 'print-js';\nimport { Button, Select, Form, Input } from 'antd';\nimport { Draw } from 'ol/interaction';\nimport { createBox } from 'ol/interaction/Draw';\nimport { drawStyle } from '../../Utils/Draw';\nimport useProps from '../../../use-props';\n\n/**\n * html转图片\n * @param dom\n * @returns {Promise<unknown>}\n */\nconst htmlToImg = dom => {\n return new Promise(resolve => {\n const width = dom.clientWidth;\n const height = dom.clientHeight - 70;\n\n const opts = {\n width,\n height,\n useCORS: true, // 允许使用跨域图片\n allowTaint: false, // 不允许跨图片污染画布\n scale: 2, // 处理模糊问题\n dpi: 300, // 处理模糊问题\n };\n\n html2canvas(dom, opts).then(canvas => {\n let url = canvas.toDataURL('image/jpeg');\n resolve(url);\n });\n });\n};\n\nexport default function(props) {\n const { download, onClose } = props;\n const { map } = useProps();\n const [visible, setVisible] = useState(false);\n const [img, setImg] = useState(null);\n const [formVal, setFormVal] = useState({});\n const drawTool = useRef();\n\n useEffect(() => {\n let tool = new Draw({\n type: 'Circle',\n style: function(feature) {\n return drawStyle(feature);\n },\n geometryFunction: createBox(),\n });\n\n tool.setActive(false);\n\n tool.on('drawstart', function() {\n map.showTip('再次点击确定结束点');\n });\n\n tool.on('drawend', event => {\n map.showTip('鼠标左键确定起始点');\n map.getView().fit(event.feature.values_.geometry.getExtent(), {\n maxZoom: 20,\n duration: 500,\n });\n });\n\n drawTool.current = tool;\n\n map.addInteraction(tool);\n\n return () => {\n map.removeInteraction(tool);\n\n map.hideTip();\n };\n }, []);\n\n const contentRef = useRef();\n\n const onFinish = async values => {\n let url = await htmlToImg(map.getViewport());\n setImg(url);\n setVisible(true);\n setFormVal(values);\n };\n\n const onOk = async () => {\n let url = await htmlToImg(contentRef.current);\n\n if (download) {\n let a = document.createElement('a');\n a.href = url;\n a.download = decodeURIComponent(`${formVal.title}.png`);\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n } else {\n printJS({\n printable: url,\n type: 'image',\n documentTitle: '打印图片',\n });\n }\n };\n\n const onRangeChange = val => {\n if (val === '1') {\n map.hideTip();\n } else {\n map.showTip('鼠标左键确定起始点');\n }\n\n drawTool.current.setActive(val === '2');\n };\n\n return (\n <DivModal title={`地图${download ? '下载' : '打印'}`} onClose={onClose}>\n <Form\n name=\"basic\"\n labelCol={{ span: 8 }}\n wrapperCol={{ span: 16 }}\n initialValues={{ range: '1' }}\n onFinish={onFinish}\n >\n <Form.Item\n label=\"地图标题\"\n name=\"title\"\n rules={[{ required: true, message: '请输入标题' }]}\n >\n <Input placeholder=\"请输入\" />\n </Form.Item>\n\n <Form.Item label=\"下载范围\" name=\"range\">\n <Select placeholder=\"请选择\" allowClear onChange={onRangeChange}>\n <Select.Option value=\"1\">当前视图</Select.Option>\n <Select.Option value=\"2\">手动框选</Select.Option>\n </Select>\n </Form.Item>\n\n <Form.Item wrapperCol={{ offset: 8, span: 16 }}>\n <Button type=\"primary\" htmlType=\"submit\">\n 预览\n </Button>\n </Form.Item>\n </Form>\n\n {visible && (\n <Modal\n open={visible}\n title=\"预览\"\n onCancel={() => setVisible(false)}\n width={map.getViewport().clientWidth - 150}\n centered={true}\n onOk={onOk}\n okText={download ? '下载' : '打印'}\n >\n <div style={{ position: 'relative', textAlign: 'center' }} ref={contentRef}>\n <img src={img} alt=\"\" style={{ width: '100%', maxHeight: '610px' }} />\n </div>\n </Modal>\n )}\n </DivModal>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_Modal","_interopRequireDefault","_html2canvas","_printJs","_interaction","_Draw","_Draw2","_useProps2","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_regenerator","Symbol","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","next","push","isArray","htmlToImg","dom","width","clientWidth","height","clientHeight","opts","useCORS","allowTaint","scale","dpi","html2canvas","canvas","url","toDataURL","_default","props","download","onClose","_useProps","useProps","map","TextEnum","_useState","useState","_useState2","visible","setVisible","_useState3","_useState4","img","setImg","_useState5","_useState6","formVal","setFormVal","drawTool","useRef","useEffect","tool","Draw","type","style","feature","drawStyle","geometryFunction","createBox","setActive","on","showTip","clickAgainToEnd","event","leftClickToStart","getView","fit","values_","geometry","getExtent","maxZoom","duration","current","addInteraction","removeInteraction","hideTip","contentRef","onFinish","_ref","_callee","values","_context","getViewport","_x","onOk","_ref2","_callee2","_context2","document","createElement","href","decodeURIComponent","concat","title","display","body","appendChild","click","printJS","printable","documentTitle","printImage","onRangeChange","val","toolMapDownload","toolMapPrint","Form","labelCol","span","wrapperCol","initialValues","range","Item","label","mapTitle","rules","required","message","pleaseInputTitle","Input","placeholder","pleaseInput","downloadRange","Select","pleaseSelect","allowClear","onChange","Option","currentView","manualBoxSelect","offset","Button","htmlType","preview","Modal","onCancel","centered","okText","print","cancelText","cancel","position","textAlign","ref","src","alt","maxHeight"],"sources":["tools/Toolbox/MapPrint/index.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Modal } from 'antd';\nimport DivModal from '../../components/Modal';\nimport html2canvas from 'html2canvas';\nimport printJS from 'print-js';\nimport { Button, Select, Form, Input } from 'antd';\nimport { Draw } from 'ol/interaction';\nimport { createBox } from 'ol/interaction/Draw';\nimport { drawStyle } from '../../Utils/Draw';\nimport useProps from '../../../use-props';\n\n/**\n * html转图片\n * @param dom\n * @returns {Promise<unknown>}\n */\nconst htmlToImg = dom => {\n return new Promise(resolve => {\n const width = dom.clientWidth;\n const height = dom.clientHeight - 70;\n\n const opts = {\n width,\n height,\n useCORS: true, // 允许使用跨域图片\n allowTaint: false, // 不允许跨图片污染画布\n scale: 2, // 处理模糊问题\n dpi: 300, // 处理模糊问题\n };\n\n html2canvas(dom, opts).then(canvas => {\n let url = canvas.toDataURL('image/jpeg');\n resolve(url);\n });\n });\n};\n\nexport default function (props) {\n const { download, onClose } = props;\n const { map, TextEnum } = useProps();\n const [visible, setVisible] = useState(false);\n const [img, setImg] = useState(null);\n const [formVal, setFormVal] = useState({});\n const drawTool = useRef();\n\n useEffect(() => {\n let tool = new Draw({\n type: 'Circle',\n style: function (feature) {\n return drawStyle(feature);\n },\n geometryFunction: createBox(),\n });\n\n tool.setActive(false);\n\n tool.on('drawstart', function () {\n map.showTip(TextEnum.clickAgainToEnd);\n });\n\n tool.on('drawend', event => {\n map.showTip(TextEnum.leftClickToStart);\n map.getView().fit(event.feature.values_.geometry.getExtent(), {\n maxZoom: 20,\n duration: 500,\n });\n });\n\n drawTool.current = tool;\n\n map.addInteraction(tool);\n\n return () => {\n map.removeInteraction(tool);\n\n map.hideTip();\n };\n }, []);\n\n const contentRef = useRef();\n\n const onFinish = async values => {\n let url = await htmlToImg(map.getViewport());\n setImg(url);\n setVisible(true);\n setFormVal(values);\n };\n\n const onOk = async () => {\n let url = await htmlToImg(contentRef.current);\n\n if (download) {\n let a = document.createElement('a');\n a.href = url;\n a.download = decodeURIComponent(`${formVal.title}.png`);\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n } else {\n printJS({\n printable: url,\n type: 'image',\n documentTitle: TextEnum.printImage,\n });\n }\n };\n\n const onRangeChange = val => {\n if (val === '1') {\n map.hideTip();\n } else {\n map.showTip(TextEnum.leftClickToStart);\n }\n\n drawTool.current.setActive(val === '2');\n };\n\n return (\n <DivModal title={`${download ? TextEnum.toolMapDownload : TextEnum.toolMapPrint}`} onClose={onClose}>\n <Form\n name=\"basic\"\n labelCol={{ span: 8 }}\n wrapperCol={{ span: 16 }}\n initialValues={{ range: '1' }}\n onFinish={onFinish}\n >\n <Form.Item\n label={TextEnum.mapTitle}\n name=\"title\"\n rules={[{ required: true, message: TextEnum.pleaseInputTitle }]}\n >\n <Input placeholder={TextEnum.pleaseInput} />\n </Form.Item>\n\n <Form.Item label={TextEnum.downloadRange} name=\"range\">\n <Select placeholder={TextEnum.pleaseSelect} allowClear onChange={onRangeChange}>\n <Select.Option value=\"1\">{TextEnum.currentView}</Select.Option>\n <Select.Option value=\"2\">{TextEnum.manualBoxSelect}</Select.Option>\n </Select>\n </Form.Item>\n <Form.Item wrapperCol={{ offset: 8, span: 16 }}>\n <Button type=\"primary\" htmlType=\"submit\">\n {TextEnum.preview}\n </Button>\n </Form.Item>\n </Form>\n\n {visible && (\n <Modal\n visible={visible}\n title={TextEnum.preview}\n onCancel={() => setVisible(false)}\n width={map.getViewport().clientWidth - 150}\n centered={true}\n onOk={onOk}\n okText={download ? TextEnum.download : TextEnum.print}\n cancelText={TextEnum.cancel}\n >\n <div style={{ position: 'relative', textAlign: 'center' }} ref={contentRef}>\n <img src={img} alt=\"\" style={{ width: '100%', maxHeight: '610px' }} />\n </div>\n </Modal>\n )}\n </DivModal>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -63,9 +63,9 @@ var segmentStyle = new _style.Style({
|
|
|
63
63
|
})
|
|
64
64
|
});
|
|
65
65
|
var segmentStyles = [segmentStyle];
|
|
66
|
-
var formatLength = function formatLength(line) {
|
|
66
|
+
var formatLength = function formatLength(line, projection) {
|
|
67
67
|
var length = (0, _sphere.getLength)(line, {
|
|
68
|
-
projection:
|
|
68
|
+
projection: projection
|
|
69
69
|
});
|
|
70
70
|
var output;
|
|
71
71
|
if (length > 100) {
|
|
@@ -75,9 +75,9 @@ var formatLength = function formatLength(line) {
|
|
|
75
75
|
}
|
|
76
76
|
return output;
|
|
77
77
|
};
|
|
78
|
-
var formatArea = function formatArea(polygon) {
|
|
78
|
+
var formatArea = function formatArea(polygon, projection) {
|
|
79
79
|
var area = (0, _sphere.getArea)(polygon, {
|
|
80
|
-
projection:
|
|
80
|
+
projection: projection
|
|
81
81
|
});
|
|
82
82
|
var output;
|
|
83
83
|
if (area > 10000) {
|
|
@@ -90,7 +90,8 @@ var formatArea = function formatArea(polygon) {
|
|
|
90
90
|
var styleFunction = function styleFunction(_ref) {
|
|
91
91
|
var feature = _ref.feature,
|
|
92
92
|
segments = _ref.segments,
|
|
93
|
-
drawType = _ref.drawType
|
|
93
|
+
drawType = _ref.drawType,
|
|
94
|
+
projection = _ref.projection;
|
|
94
95
|
var styles = [new _style.Style({
|
|
95
96
|
fill: new _style.Fill({
|
|
96
97
|
color: 'rgba(255, 255, 255, 0.2)'
|
|
@@ -116,11 +117,11 @@ var styleFunction = function styleFunction(_ref) {
|
|
|
116
117
|
if (!drawType || drawType === type) {
|
|
117
118
|
if (type === 'Polygon') {
|
|
118
119
|
point = geometry.getInteriorPoint();
|
|
119
|
-
label = formatArea(geometry);
|
|
120
|
+
label = formatArea(geometry, projection);
|
|
120
121
|
line = new _geom.LineString(geometry.getCoordinates()[0]);
|
|
121
122
|
} else if (type === 'LineString') {
|
|
122
123
|
point = new _geom.Point(geometry.getLastCoordinate());
|
|
123
|
-
label = formatLength(geometry);
|
|
124
|
+
label = formatLength(geometry, projection);
|
|
124
125
|
line = geometry;
|
|
125
126
|
}
|
|
126
127
|
}
|
|
@@ -128,7 +129,7 @@ var styleFunction = function styleFunction(_ref) {
|
|
|
128
129
|
var count = 0;
|
|
129
130
|
line.forEachSegment(function (a, b) {
|
|
130
131
|
var segment = new _geom.LineString([a, b]);
|
|
131
|
-
var label = formatLength(segment);
|
|
132
|
+
var label = formatLength(segment, projection);
|
|
132
133
|
if (segmentStyles.length - 1 < count) {
|
|
133
134
|
segmentStyles.push(segmentStyle.clone());
|
|
134
135
|
}
|
|
@@ -151,16 +152,20 @@ var _default = exports["default"] = /*#__PURE__*/function () {
|
|
|
151
152
|
var _this = this;
|
|
152
153
|
_classCallCheck(this, _default);
|
|
153
154
|
this.map = options.map;
|
|
155
|
+
this.TextEnum = options.TextEnum;
|
|
154
156
|
this.type = options.type || 'MeasureDistance';
|
|
155
157
|
this.clearPrevious = options.clearPrevious;
|
|
156
158
|
var segments = options.segments;
|
|
159
|
+
this.projection = this.map.getView().getProjection().getCode();
|
|
160
|
+
var that = this;
|
|
157
161
|
this.source = new _source.Vector();
|
|
158
162
|
this.layer = new _layer.Vector({
|
|
159
163
|
source: this.source,
|
|
160
164
|
style: function style(feature) {
|
|
161
165
|
return styleFunction({
|
|
162
166
|
feature: feature,
|
|
163
|
-
segments: segments
|
|
167
|
+
segments: segments,
|
|
168
|
+
projection: that.projection
|
|
164
169
|
});
|
|
165
170
|
},
|
|
166
171
|
zIndex: 99
|
|
@@ -176,22 +181,23 @@ var _default = exports["default"] = /*#__PURE__*/function () {
|
|
|
176
181
|
return styleFunction({
|
|
177
182
|
feature: feature,
|
|
178
183
|
segments: segments,
|
|
179
|
-
drawType: drawType
|
|
184
|
+
drawType: drawType,
|
|
185
|
+
projection: that.projection
|
|
180
186
|
});
|
|
181
187
|
}
|
|
182
188
|
});
|
|
183
189
|
this.map.addInteraction(this.tool);
|
|
184
190
|
this.setActive();
|
|
185
191
|
this.map.addLayer(this.layer);
|
|
186
|
-
this.map.showTip(
|
|
192
|
+
this.map.showTip(this.TextEnum.messureStartTipText);
|
|
187
193
|
this.tool.on('drawstart', function () {
|
|
188
194
|
if (_this.clearPrevious) {
|
|
189
195
|
_this.source.clear();
|
|
190
196
|
}
|
|
191
|
-
_this.map.showTip(
|
|
197
|
+
_this.map.showTip(_this.TextEnum.messureContinueTipText);
|
|
192
198
|
});
|
|
193
199
|
this.tool.on('drawend', function () {
|
|
194
|
-
_this.map.showTip(
|
|
200
|
+
_this.map.showTip(_this.TextEnum.messureStartTipText);
|
|
195
201
|
});
|
|
196
202
|
}
|
|
197
203
|
return _createClass(_default, [{
|
|
@@ -202,16 +208,19 @@ var _default = exports["default"] = /*#__PURE__*/function () {
|
|
|
202
208
|
}, {
|
|
203
209
|
key: "segments",
|
|
204
210
|
set: function set(val) {
|
|
211
|
+
var that = this;
|
|
205
212
|
this.layer && this.layer.setStyle(function (feature) {
|
|
206
213
|
return styleFunction({
|
|
207
214
|
feature: feature,
|
|
208
|
-
segments: val
|
|
215
|
+
segments: val,
|
|
216
|
+
projection: that.projection
|
|
209
217
|
});
|
|
210
218
|
});
|
|
211
219
|
this.tool && this.tool.getOverlay().setStyle(function (feature) {
|
|
212
220
|
return styleFunction({
|
|
213
221
|
feature: feature,
|
|
214
|
-
segments: val
|
|
222
|
+
segments: val,
|
|
223
|
+
projection: that.projection
|
|
215
224
|
});
|
|
216
225
|
});
|
|
217
226
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Measure.js","names":["_geom","require","_layer","_style","_interaction","_sphere","_source","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","a","n","TypeError","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","i","_toPrimitive","toPrimitive","call","String","Number","labelStyle","Style","text","Text","font","fill","Fill","color","backgroundFill","padding","textBaseline","offsetY","image","RegularShape","radius","points","angle","Math","PI","displacement","segmentStyle","segmentStyles","formatLength","line","getLength","projection","output","concat","round","formatArea","polygon","area","getArea","styleFunction","_ref","feature","segments","drawType","styles","stroke","Stroke","lineDash","width","CircleStyle","geometry","getGeometry","type","getType","point","label","getInteriorPoint","LineString","getCoordinates","Point","getLastCoordinate","count","forEachSegment","b","segment","push","clone","segmentPoint","getCoordinateAt","setGeometry","getText","setText","_default","exports","options","_this","map","clearPrevious","source","VectorSource","layer","VectorLayer","style","zIndex","tool","Draw","addInteraction","setActive","addLayer","showTip","on","clear","value","set","val","setStyle","getOverlay","destroy","hideTip","removeInteraction","removeLayer"],"sources":["tools/Toolbox/Measure/Measure.js"],"sourcesContent":["import { Point, LineString } from 'ol/geom';\nimport { Vector as VectorLayer } from 'ol/layer';\nimport { Circle as CircleStyle, Fill, Stroke, Style, RegularShape, Text } from 'ol/style';\nimport { Draw } from 'ol/interaction';\nimport { getArea, getLength } from 'ol/sphere';\nimport { Vector as VectorSource } from 'ol/source';\n\nconst labelStyle = new Style({\n text: new Text({\n font: '14px Calibri,sans-serif',\n fill: new Fill({\n color: 'rgba(255, 255, 255, 1)',\n }),\n backgroundFill: new Fill({\n color: 'rgba(0, 0, 0, 0.7)',\n }),\n padding: [3, 3, 3, 3],\n textBaseline: 'bottom',\n offsetY: -15,\n }),\n image: new RegularShape({\n radius: 8,\n points: 3,\n angle: Math.PI,\n displacement: [0, 10],\n fill: new Fill({\n color: 'rgba(0, 0, 0, 0.7)',\n }),\n }),\n});\n\nconst segmentStyle = new Style({\n text: new Text({\n font: '12px Calibri,sans-serif',\n fill: new Fill({\n color: 'rgba(255, 255, 255, 1)',\n }),\n backgroundFill: new Fill({\n color: 'rgba(0, 0, 0, 0.4)',\n }),\n padding: [2, 2, 2, 2],\n textBaseline: 'bottom',\n offsetY: -12,\n }),\n image: new RegularShape({\n radius: 6,\n points: 3,\n angle: Math.PI,\n displacement: [0, 8],\n fill: new Fill({\n color: 'rgba(0, 0, 0, 0.4)',\n }),\n }),\n});\n\nconst segmentStyles = [segmentStyle];\n\nconst formatLength = line => {\n const length = getLength(line, { projection: 'EPSG:4326' });\n let output;\n if (length > 100) {\n output = `${Math.round((length / 1000) * 100) / 100} km`;\n } else {\n output = `${Math.round(length * 100) / 100} m`;\n }\n return output;\n};\n\nconst formatArea = polygon => {\n const area = getArea(polygon, { projection: 'EPSG:4326' });\n let output;\n if (area > 10000) {\n output = `${Math.round((area / 1000000) * 100) / 100} km²`;\n } else {\n output = `${Math.round(area * 100) / 100} m²`;\n }\n return output;\n};\n\nconst styleFunction = ({ feature, segments, drawType }) => {\n const styles = [\n new Style({\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.2)',\n }),\n stroke: new Stroke({\n color: 'rgba(0, 0, 0, 0.5)',\n lineDash: [10, 10],\n width: 2,\n }),\n image: new CircleStyle({\n radius: 5,\n stroke: new Stroke({\n color: 'rgba(0, 0, 0, 0.7)',\n }),\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.2)',\n }),\n }),\n }),\n ];\n const geometry = feature.getGeometry();\n const type = geometry.getType();\n let point, label, line;\n if (!drawType || drawType === type) {\n if (type === 'Polygon') {\n point = geometry.getInteriorPoint();\n label = formatArea(geometry);\n line = new LineString(geometry.getCoordinates()[0]);\n } else if (type === 'LineString') {\n point = new Point(geometry.getLastCoordinate());\n label = formatLength(geometry);\n line = geometry;\n }\n }\n if (segments && line) {\n let count = 0;\n line.forEachSegment(function (a, b) {\n const segment = new LineString([a, b]);\n const label = formatLength(segment);\n if (segmentStyles.length - 1 < count) {\n segmentStyles.push(segmentStyle.clone());\n }\n const segmentPoint = new Point(segment.getCoordinateAt(0.5));\n segmentStyles[count].setGeometry(segmentPoint);\n segmentStyles[count].getText().setText(label);\n styles.push(segmentStyles[count]);\n count++;\n });\n }\n if (label) {\n labelStyle.setGeometry(point);\n labelStyle.getText().setText(label);\n styles.push(labelStyle);\n }\n\n return styles;\n};\n\nexport default class {\n constructor(options) {\n this.map = options.map;\n this.type = options.type || 'MeasureDistance';\n this.clearPrevious = options.clearPrevious;\n\n let segments = options.segments;\n\n this.source = new VectorSource();\n this.layer = new VectorLayer({\n source: this.source,\n style: feature => {\n return styleFunction({ feature, segments });\n },\n zIndex: 99,\n });\n\n this.layer.key = this.type;\n\n // 测距\n let drawType = this.type === 'MeasureDistance' ? 'LineString' : 'Polygon';\n this.tool = new Draw({\n source: this.source,\n type: drawType,\n style: function (feature) {\n return styleFunction({ feature, segments, drawType });\n },\n });\n this.map.addInteraction(this.tool);\n\n this.setActive();\n\n this.map.addLayer(this.layer);\n\n this.map.showTip('鼠标单击开始绘制');\n\n this.tool.on('drawstart', () => {\n if (this.clearPrevious) {\n this.source.clear();\n }\n\n this.map.showTip('鼠标单击继续绘制');\n });\n\n this.tool.on('drawend', () => {\n this.map.showTip('鼠标单击开始绘制');\n });\n }\n\n setActive() {\n this.tool.setActive(true);\n }\n\n set segments(val) {\n this.layer &&\n this.layer.setStyle(feature => {\n return styleFunction({ feature, segments: val });\n });\n\n this.tool &&\n this.tool.getOverlay().setStyle(feature => {\n return styleFunction({ feature, segments: val });\n });\n }\n\n destroy() {\n this.map.hideTip();\n\n this.map.removeInteraction(this.tool);\n\n this.map.removeLayer(this.layer);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Measure.js","names":["_geom","require","_layer","_style","_interaction","_sphere","_source","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","a","n","TypeError","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","i","_toPrimitive","toPrimitive","call","String","Number","labelStyle","Style","text","Text","font","fill","Fill","color","backgroundFill","padding","textBaseline","offsetY","image","RegularShape","radius","points","angle","Math","PI","displacement","segmentStyle","segmentStyles","formatLength","line","projection","getLength","output","concat","round","formatArea","polygon","area","getArea","styleFunction","_ref","feature","segments","drawType","styles","stroke","Stroke","lineDash","width","CircleStyle","geometry","getGeometry","type","getType","point","label","getInteriorPoint","LineString","getCoordinates","Point","getLastCoordinate","count","forEachSegment","b","segment","push","clone","segmentPoint","getCoordinateAt","setGeometry","getText","setText","_default","exports","options","_this","map","TextEnum","clearPrevious","getView","getProjection","getCode","that","source","VectorSource","layer","VectorLayer","style","zIndex","tool","Draw","addInteraction","setActive","addLayer","showTip","messureStartTipText","on","clear","messureContinueTipText","value","set","val","setStyle","getOverlay","destroy","hideTip","removeInteraction","removeLayer"],"sources":["tools/Toolbox/Measure/Measure.js"],"sourcesContent":["import { Point, LineString } from 'ol/geom';\nimport { Vector as VectorLayer } from 'ol/layer';\nimport { Circle as CircleStyle, Fill, Stroke, Style, RegularShape, Text } from 'ol/style';\nimport { Draw } from 'ol/interaction';\nimport { getArea, getLength } from 'ol/sphere';\nimport { Vector as VectorSource } from 'ol/source';\n\nconst labelStyle = new Style({\n text: new Text({\n font: '14px Calibri,sans-serif',\n fill: new Fill({\n color: 'rgba(255, 255, 255, 1)',\n }),\n backgroundFill: new Fill({\n color: 'rgba(0, 0, 0, 0.7)',\n }),\n padding: [3, 3, 3, 3],\n textBaseline: 'bottom',\n offsetY: -15,\n }),\n image: new RegularShape({\n radius: 8,\n points: 3,\n angle: Math.PI,\n displacement: [0, 10],\n fill: new Fill({\n color: 'rgba(0, 0, 0, 0.7)',\n }),\n }),\n});\n\nconst segmentStyle = new Style({\n text: new Text({\n font: '12px Calibri,sans-serif',\n fill: new Fill({\n color: 'rgba(255, 255, 255, 1)',\n }),\n backgroundFill: new Fill({\n color: 'rgba(0, 0, 0, 0.4)',\n }),\n padding: [2, 2, 2, 2],\n textBaseline: 'bottom',\n offsetY: -12,\n }),\n image: new RegularShape({\n radius: 6,\n points: 3,\n angle: Math.PI,\n displacement: [0, 8],\n fill: new Fill({\n color: 'rgba(0, 0, 0, 0.4)',\n }),\n }),\n});\n\nconst segmentStyles = [segmentStyle];\n\nconst formatLength = (line, projection) => {\n const length = getLength(line, { projection: projection });\n let output;\n if (length > 100) {\n output = `${Math.round((length / 1000) * 100) / 100} km`;\n } else {\n output = `${Math.round(length * 100) / 100} m`;\n }\n return output;\n};\n\nconst formatArea = (polygon, projection) => {\n const area = getArea(polygon, { projection: projection });\n let output;\n if (area > 10000) {\n output = `${Math.round((area / 1000000) * 100) / 100} km²`;\n } else {\n output = `${Math.round(area * 100) / 100} m²`;\n }\n return output;\n};\n\nconst styleFunction = ({ feature, segments, drawType, projection }) => {\n const styles = [\n new Style({\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.2)',\n }),\n stroke: new Stroke({\n color: 'rgba(0, 0, 0, 0.5)',\n lineDash: [10, 10],\n width: 2,\n }),\n image: new CircleStyle({\n radius: 5,\n stroke: new Stroke({\n color: 'rgba(0, 0, 0, 0.7)',\n }),\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.2)',\n }),\n }),\n }),\n ];\n const geometry = feature.getGeometry();\n const type = geometry.getType();\n let point, label, line;\n if (!drawType || drawType === type) {\n if (type === 'Polygon') {\n point = geometry.getInteriorPoint();\n label = formatArea(geometry, projection);\n line = new LineString(geometry.getCoordinates()[0]);\n } else if (type === 'LineString') {\n point = new Point(geometry.getLastCoordinate());\n label = formatLength(geometry, projection);\n line = geometry;\n }\n }\n if (segments && line) {\n let count = 0;\n line.forEachSegment(function(a, b) {\n const segment = new LineString([a, b]);\n const label = formatLength(segment, projection);\n if (segmentStyles.length - 1 < count) {\n segmentStyles.push(segmentStyle.clone());\n }\n const segmentPoint = new Point(segment.getCoordinateAt(0.5));\n segmentStyles[count].setGeometry(segmentPoint);\n segmentStyles[count].getText().setText(label);\n styles.push(segmentStyles[count]);\n count++;\n });\n }\n if (label) {\n labelStyle.setGeometry(point);\n labelStyle.getText().setText(label);\n styles.push(labelStyle);\n }\n\n return styles;\n};\n\nexport default class {\n constructor(options) {\n this.map = options.map;\n this.TextEnum = options.TextEnum;\n this.type = options.type || 'MeasureDistance';\n this.clearPrevious = options.clearPrevious;\n\n let segments = options.segments;\n\n this.projection = this.map\n .getView()\n .getProjection()\n .getCode();\n\n const that = this;\n this.source = new VectorSource();\n this.layer = new VectorLayer({\n source: this.source,\n style: feature => {\n return styleFunction({ feature, segments, projection: that.projection });\n },\n zIndex: 99,\n });\n\n this.layer.key = this.type;\n\n // 测距\n let drawType = this.type === 'MeasureDistance' ? 'LineString' : 'Polygon';\n this.tool = new Draw({\n source: this.source,\n type: drawType,\n style: function(feature) {\n return styleFunction({ feature, segments, drawType, projection: that.projection });\n },\n });\n this.map.addInteraction(this.tool);\n\n this.setActive();\n\n this.map.addLayer(this.layer);\n\n this.map.showTip(this.TextEnum.messureStartTipText);\n\n this.tool.on('drawstart', () => {\n if (this.clearPrevious) {\n this.source.clear();\n }\n\n this.map.showTip(this.TextEnum.messureContinueTipText);\n });\n\n this.tool.on('drawend', () => {\n this.map.showTip(this.TextEnum.messureStartTipText);\n });\n }\n\n setActive() {\n this.tool.setActive(true);\n }\n\n set segments(val) {\n const that = this;\n this.layer &&\n this.layer.setStyle(feature => {\n return styleFunction({ feature, segments: val, projection: that.projection });\n });\n\n this.tool &&\n this.tool.getOverlay().setStyle(feature => {\n return styleFunction({ feature, segments: val, projection: that.projection });\n });\n }\n\n destroy() {\n this.map.hideTip();\n\n this.map.removeInteraction(this.tool);\n\n this.map.removeLayer(this.layer);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,7 +29,8 @@ var _default = exports["default"] = function _default(props) {
|
|
|
29
29
|
onClose = props.onClose,
|
|
30
30
|
rest = _objectWithoutProperties(props, _excluded);
|
|
31
31
|
var _useProps = (0, _useProps2["default"])(),
|
|
32
|
-
map = _useProps.map
|
|
32
|
+
map = _useProps.map,
|
|
33
|
+
TextEnum = _useProps.TextEnum;
|
|
33
34
|
var _useState = (0, _react.useState)(true),
|
|
34
35
|
_useState2 = _slicedToArray(_useState, 2),
|
|
35
36
|
segments = _useState2[0],
|
|
@@ -44,7 +45,8 @@ var _default = exports["default"] = function _default(props) {
|
|
|
44
45
|
map: map,
|
|
45
46
|
type: type,
|
|
46
47
|
segments: segments,
|
|
47
|
-
clearPrevious: clearPrevious
|
|
48
|
+
clearPrevious: clearPrevious,
|
|
49
|
+
TextEnum: TextEnum
|
|
48
50
|
});
|
|
49
51
|
tool.current = measure;
|
|
50
52
|
return function () {
|
|
@@ -62,14 +64,14 @@ var _default = exports["default"] = function _default(props) {
|
|
|
62
64
|
setClearPrevious(checked);
|
|
63
65
|
};
|
|
64
66
|
return /*#__PURE__*/_react["default"].createElement(_Modal["default"], _extends({
|
|
65
|
-
title: type === 'MeasureDistance' ?
|
|
67
|
+
title: type === 'MeasureDistance' ? TextEnum.toolMeasureDistanceText : TextEnum.toolMeasureAreaText,
|
|
66
68
|
onClose: onClose
|
|
67
69
|
}, rest), /*#__PURE__*/_react["default"].createElement(_antd.Checkbox, {
|
|
68
70
|
checked: segments,
|
|
69
71
|
onChange: onSegmentsChange
|
|
70
|
-
},
|
|
72
|
+
}, TextEnum.toolShowLengthText), /*#__PURE__*/_react["default"].createElement(_antd.Checkbox, {
|
|
71
73
|
checked: clearPrevious,
|
|
72
74
|
onChange: onClearPreviousChange
|
|
73
|
-
},
|
|
75
|
+
}, TextEnum.toolClearMessureResultText));
|
|
74
76
|
};
|
|
75
77
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_Measure","_interopRequireDefault","_Modal","_useProps2","_excluded","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","_default","exports","props","_props$type","type","active","onClose","rest","_useProps","useProps","map","_useState","useState","_useState2","segments","setSegments","_useState3","_useState4","clearPrevious","setClearPrevious","tool","useRef","useEffect","measure","Measure","current","destroy","onSegmentsChange","checked","target","onClearPreviousChange","createElement","title","Checkbox","onChange"],"sources":["tools/Toolbox/Measure/index.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Checkbox } from 'antd';\nimport Measure from '../Measure/Measure';\nimport Modal from '../../components/Modal';\nimport useProps from \"../../../use-props\";\n\nexport default props => {\n const {\n type = 'MeasureDistance', // 测距 MeasureDistance | 测面 MeasureArea\n active,\n onClose,\n ...rest\n } = props;\n\n const { map } = useProps();\n\n const [segments, setSegments] = useState(true);\n const [clearPrevious, setClearPrevious] = useState(true);\n const tool = useRef();\n\n useEffect(() => {\n let measure = new Measure({\n map,\n type,\n segments,\n clearPrevious,\n });\n\n tool.current = measure;\n\n return () => {\n measure.destroy();\n };\n }, [active]);\n\n const onSegmentsChange = e => {\n let checked = e.target.checked;\n\n tool.current.segments = checked;\n\n setSegments(checked);\n };\n\n const onClearPreviousChange = e => {\n let checked = e.target.checked;\n\n tool.current.clearPrevious = checked;\n\n setClearPrevious(checked);\n };\n return (\n <Modal title={type === 'MeasureDistance' ?
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_Measure","_interopRequireDefault","_Modal","_useProps2","_excluded","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","_default","exports","props","_props$type","type","active","onClose","rest","_useProps","useProps","map","TextEnum","_useState","useState","_useState2","segments","setSegments","_useState3","_useState4","clearPrevious","setClearPrevious","tool","useRef","useEffect","measure","Measure","current","destroy","onSegmentsChange","checked","target","onClearPreviousChange","createElement","title","toolMeasureDistanceText","toolMeasureAreaText","Checkbox","onChange","toolShowLengthText","toolClearMessureResultText"],"sources":["tools/Toolbox/Measure/index.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Checkbox } from 'antd';\nimport Measure from '../Measure/Measure';\nimport Modal from '../../components/Modal';\nimport useProps from \"../../../use-props\";\n\nexport default props => {\n const {\n type = 'MeasureDistance', // 测距 MeasureDistance | 测面 MeasureArea\n active,\n onClose,\n ...rest\n } = props;\n\n const { map, TextEnum } = useProps();\n\n const [segments, setSegments] = useState(true);\n const [clearPrevious, setClearPrevious] = useState(true);\n const tool = useRef();\n\n useEffect(() => {\n let measure = new Measure({\n map,\n type,\n segments,\n clearPrevious,\n TextEnum\n });\n\n tool.current = measure;\n\n return () => {\n measure.destroy();\n };\n }, [active]);\n\n const onSegmentsChange = e => {\n let checked = e.target.checked;\n\n tool.current.segments = checked;\n\n setSegments(checked);\n };\n\n const onClearPreviousChange = e => {\n let checked = e.target.checked;\n\n tool.current.clearPrevious = checked;\n\n setClearPrevious(checked);\n };\n return (\n <Modal title={type === 'MeasureDistance' ? TextEnum.toolMeasureDistanceText : TextEnum.toolMeasureAreaText} onClose={onClose} {...rest}>\n <Checkbox checked={segments} onChange={onSegmentsChange}>\n {TextEnum.toolShowLengthText}\n </Checkbox>\n <Checkbox checked={clearPrevious} onChange={onClearPreviousChange}>\n {TextEnum.toolClearMessureResultText}\n </Checkbox>\n </Modal>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,7 +20,8 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
|
20
20
|
var _default = exports["default"] = function _default(props) {
|
|
21
21
|
var _onClick = props.onClick;
|
|
22
22
|
var _useProps = (0, _useProps2["default"])(),
|
|
23
|
-
map = _useProps.map
|
|
23
|
+
map = _useProps.map,
|
|
24
|
+
TextEnum = _useProps.TextEnum;
|
|
24
25
|
var _useState = (0, _react.useState)(false),
|
|
25
26
|
_useState2 = _slicedToArray(_useState, 2),
|
|
26
27
|
active = _useState2[0],
|
|
@@ -49,7 +50,7 @@ var _default = exports["default"] = function _default(props) {
|
|
|
49
50
|
setActive(!active);
|
|
50
51
|
_onClick && _onClick(!active);
|
|
51
52
|
},
|
|
52
|
-
label:
|
|
53
|
+
label: TextEnum.scale,
|
|
53
54
|
icon: "icon-ceju",
|
|
54
55
|
active: active
|
|
55
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_control","_ToolItem","_interopRequireDefault","_useProps2","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","isArray","_default","exports","props","onClick","_useProps","useProps","map","_useState","useState","_useState2","active","setActive","controlRef","useRef","useEffect","control","current","ScaleLine","units","bar","text","minWidth","className","addControl","removeControl","createElement","label","icon"],"sources":["tools/Toolbox/ScaleLine/index.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { ScaleLine } from 'ol/control';\nimport ToolItem from '../../components/ToolItem';\nimport useProps from \"../../../use-props\";\n\nexport default props => {\n const { onClick } = props;\n\n const { map } = useProps();\n\n const [active, setActive] = useState(false);\n const controlRef = useRef();\n\n useEffect(() => {\n let control =\n controlRef.current ||\n new ScaleLine({\n units: 'metric',\n bar: true,\n text: true,\n minWidth: 125,\n className: 'ol-map-custom-scaleLine',\n });\n if (active) {\n map.addControl(controlRef.current);\n } else {\n map.removeControl(controlRef.current);\n }\n\n controlRef.current = control;\n\n return () => {\n map.removeControl(control);\n };\n }, [active]);\n\n return (\n <ToolItem\n onClick={() => {\n setActive(!active);\n onClick && onClick(!active);\n }}\n label
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_control","_ToolItem","_interopRequireDefault","_useProps2","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","isArray","_default","exports","props","onClick","_useProps","useProps","map","TextEnum","_useState","useState","_useState2","active","setActive","controlRef","useRef","useEffect","control","current","ScaleLine","units","bar","text","minWidth","className","addControl","removeControl","createElement","label","scale","icon"],"sources":["tools/Toolbox/ScaleLine/index.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { ScaleLine } from 'ol/control';\nimport ToolItem from '../../components/ToolItem';\nimport useProps from \"../../../use-props\";\n\nexport default props => {\n const { onClick } = props;\n\n const { map, TextEnum } = useProps();\n\n const [active, setActive] = useState(false);\n const controlRef = useRef();\n\n useEffect(() => {\n let control =\n controlRef.current ||\n new ScaleLine({\n units: 'metric',\n bar: true,\n text: true,\n minWidth: 125,\n className: 'ol-map-custom-scaleLine',\n });\n if (active) {\n map.addControl(controlRef.current);\n } else {\n map.removeControl(controlRef.current);\n }\n\n controlRef.current = control;\n\n return () => {\n map.removeControl(control);\n };\n }, [active]);\n\n return (\n <ToolItem\n onClick={() => {\n setActive(!active);\n onClick && onClick(!active);\n }}\n label={TextEnum.scale}\n icon=\"icon-ceju\"\n active={active}\n />\n );\n};\n"],"mappings":"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","ignoreList":[]}
|