@vtx/ol-map 1.0.141 → 1.0.142
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/map/index.js +2 -2
- package/lib/map/index.js.map +1 -1
- package/lib/path-play-back/PathPlayBack.js +20 -3
- package/lib/path-play-back/PathPlayBack.js.map +1 -1
- package/lib/search-map/VtxModal.js +0 -1
- package/lib/search-map/VtxModal.js.map +1 -1
- package/lib/tools/Utils/HighLayer.js +2 -2
- package/lib/tools/Utils/HighLayer.js.map +1 -1
- package/package.json +1 -1
package/lib/map/index.js
CHANGED
|
@@ -274,8 +274,8 @@ function Map(props) {
|
|
|
274
274
|
map.getBaseLayers = _getBaseLayers["default"];
|
|
275
275
|
|
|
276
276
|
// 设置高亮
|
|
277
|
-
map.setHighlightFeature = function (feature) {
|
|
278
|
-
map.highlightLayer.addHighlightFeature(feature);
|
|
277
|
+
map.setHighlightFeature = function (feature, options) {
|
|
278
|
+
map.highlightLayer.addHighlightFeature(feature, options);
|
|
279
279
|
};
|
|
280
280
|
|
|
281
281
|
// 清除高亮
|
package/lib/map/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_zh_CN","_interopRequireDefault","_propTypes","_ol","_layer","_source","_control","_util","_classnames","_getDefaultMapInfo","_Popup","_getBaseLayers","_TdtImageryProvider","_HighLayer","_Search","_events","_layer2","_createFeatureCollection","_FeatureLayer","_ImageLayer","_ImageTileLayer","_ahooks","_provider","_Layers","_Analysis","_WmsLayer","_search","_lodash","_excluded","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_regeneratorRuntime","prototype","o","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","ownKeys","getOwnPropertySymbols","filter","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","includes","propertyIsEnumerable","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","test","Map","props","_props$width","width","_props$height","height","children","center","dark","style","zoom","createdMap","mapStyle","baseMapStyle","tk","onCloseTemplateBefore","onZoom","customBaseLayers","positionStyle","_props$autoView","autoView","_props$closePopupAuto","closePopupAutoView","hidePopupTable","fitViewMaxZoom","encrypt","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","setModal","_useState5","_useState6","tipVis","setTipVis","_useState7","_useState8","tip","setTip","_useState9","_useState10","pointTip","setPointTip","mapRef","useRef","timerRef","mapDomRef","highLayerRef","popupRef","timeRef","baseLayerRef","useEffect","initMap","window","removeEventListener","handleResize","current","destroy","setInterval","layers","getLayers","getArray","map","autoRefresh","key","refresh","clearInterval","useUpdateEffect","setMapStyle","_ref","_callee3","_baseLayerRef$current","defaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","otherDefaultMapInfo","viewDefault","baseLayerParams","_baseLayerRef$current2","registerMapEvent","registerEvent","hoverFeature","_callee3$","_context3","_registerEvent","eventTarget","feature","event","_feature$eventTarget","properties","getProperties","layer","getLayerByFeature","_registerMapEvent","getDefaultMapInfo","OlMap","target","controls","defaultControls","extend","pixelRatio","view","View","projection","constrainResolution","smoothResolutionConstraint","getBaseLayers","baseLayer","cloneDeep","item","addLayer","Layers","analysis","Analysis","_mapStyle","_map$getLayerByKey","_map$getLayerByKey2","_TdtImageryProvider$g","TdtImageryProvider","getSource","_TdtImageryProvider$g2","tileLayerSource","markLayerSource","getLayerByKey","setSource","HighLayer","highlightLayer","changeBaseLayer","_baseLayerRef$current3","_baseLayerRef$current4","removeLayer","setHighlightFeature","addHighlightFeature","clearHighlightFeature","clearFeatures","getAllLayers","find","getWmsVisibleLayers","allLayers","Image","ImageTileLayer","ImageLayer","WmsLayer","getWfsVisibleLayers","VectorLayer","getVisibleLayersByKeys","_feature$values_","_feature$values_2","source","hasFeature","layerKey","values_","getMapFeatureInfoByText","text","poiSearch","params","undefined","getLayerHasViewOnlyByFeature","viewOnly","showTip","content","hideTip","showPointTip","hidePointTip","showModal","hideModal","showTemplateByFilter","_ref2","_callee","field","options","obj","_callee$","_context","show","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","_popupRef$current","_popupRef$current$sho","hideTemplate","_popupRef$current2","_popupRef$current2$hi","setLastView","_popupRef$current3","_popupRef$current3$se","setLabelVisible","visible","FeatureLayer","label","setClusterVisible","cluster","setPointVisible","point","getViewOptions","getView","_view$getCenter","getCenter","_view$getCenter2","x","getZoom","fitView","_e$values_","extent","getExtent","VectorSource","geometryInfo","_e$","vectorSource","createGeoJson","addFeatures","Feature","geometry","noFitView","currentZoom","fit","padding","duration","animate","fitViewByOptions","on","analysisActive","toolboxActive","drawActive","getFeaturesAtPixel","pixel","cursor","labelField","tipTemplate","registerEventLayer","uid","getUid","hoverUid","_ref3","_callee2","_features2","_features","_callee2$","_context2","_clickObject","isHighLight","getWMSFeatureInfoByLayers","template","_x5","clearTimeout","setTimeout","addEventListener","updateSize","onMouseMove","dom","document","getElementById","left","nativeEvent","offsetX","top","offsetY","rightBound","getViewport","clientWidth","getBoundingClientRect","topBound","clientHeight","concat","createElement","ConfigProvider","locale","zhCN","background","className","classnames","ref","onMouseOver","onMouseOut","id","onPopupClick","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","isRequired","object"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport { ConfigProvider } from 'antd';\r\nimport zhCN from 'antd/es/locale/zh_CN';\r\nimport PropTypes from 'prop-types';\r\nimport { Map as OlMap, View, Feature } from 'ol';\r\nimport { Vector as VectorLayer, Image } from 'ol/layer';\r\nimport { Vector as VectorSource } from 'ol/source';\r\nimport { defaults as defaultControls } from 'ol/control';\r\nimport { getUid } from 'ol/util';\r\nimport classnames from 'classnames';\r\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\r\nimport Popup from './Popup';\r\nimport getBaseLayers from './getBaseLayers';\r\nimport TdtImageryProvider from './getBaseLayers/imagery/tdt/TdtImageryProvider';\r\nimport HighLayer from '../tools/Utils/HighLayer';\r\nimport { getMapFeatureInfoByText } from '../tools/Search';\r\nimport { registerEventLayer } from '../events';\r\nimport { getWMSFeatureInfoByLayers } from '../_util/layer';\r\nimport { createGeoJson } from '../feature-layer/createFeatureCollection';\r\nimport FeatureLayer from '../feature-layer/FeatureLayer';\r\nimport ImageLayer from '../image-layer/ImageLayer';\r\nimport ImageTileLayer from '../image-layer/ImageTileLayer';\r\nimport { useUpdateEffect } from 'ahooks';\r\nimport Provider from '../provider';\r\nimport Layers from './Layers';\r\nimport Analysis from './Analysis';\r\nimport WmsLayer from '../wms-layer/WmsLayer';\r\nimport 'ol/ol.css';\r\nimport './style';\r\nimport { poiSearch } from '../_util/search';\r\nimport { cloneDeep } from 'lodash';\r\n\r\nfunction Map(props) {\r\n const {\r\n width = '100%',\r\n height = '100%',\r\n children,\r\n center,\r\n dark,\r\n style,\r\n zoom,\r\n createdMap,\r\n mapStyle,\r\n // bmap 百度地图 amap 高德地图 tmap 天地图\r\n baseMapStyle,\r\n tk,\r\n onCloseTemplateBefore,\r\n onZoom,\r\n customBaseLayers,\r\n positionStyle,\r\n autoView = true,\r\n closePopupAutoView = true,\r\n hidePopupTable,\r\n fitViewMaxZoom,\r\n encrypt\r\n } = props;\r\n const [mapLoaded, setMapLoaded] = useState(false);\r\n const [, setModal] = useState(null);\r\n const [tipVis, setTipVis] = useState(false);\r\n const [tip, setTip] = useState(null);\r\n const [pointTip, setPointTip] = useState(null);\r\n const mapRef = useRef(null);\r\n const timerRef = useRef(null);\r\n const mapDomRef = useRef(null);\r\n const highLayerRef = useRef();\r\n const popupRef = useRef();\r\n const timeRef = useRef(null);\r\n\r\n const baseLayerRef = useRef([]);\r\n\r\n useEffect(() => {\r\n initMap();\r\n return () => {\r\n window.removeEventListener('resize', handleResize);\r\n highLayerRef.current && highLayerRef.current.destroy();\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (mapRef.current) {\r\n timerRef.current = setInterval(() => {\r\n const layers = mapRef.current.getLayers().getArray() || [];\r\n layers.map(v => {\r\n if (v.autoRefresh && v.key && v.get('visible') && v.refresh) {\r\n v.refresh();\r\n }\r\n });\r\n }, 10000);\r\n }\r\n return () => {\r\n if (timerRef.current) {\r\n clearInterval(timerRef.current);\r\n }\r\n };\r\n }, []);\r\n\r\n useUpdateEffect(() => {\r\n mapRef.current.setMapStyle(mapStyle);\r\n }, [mapStyle]);\r\n\r\n const initMap = async () => {\r\n const defaultMapInfo = getDefaultMapInfo();\r\n const { minZoom, maxZoom, defaultZoomLevel, longitude, latitude, ...otherDefaultMapInfo } = defaultMapInfo;\r\n\r\n // 全屏\r\n let viewDefault = {\r\n center: center ||\r\n (longitude && latitude && [longitude, latitude]) || [116.397228, 30.9096],\r\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 4,\r\n minZoom: (minZoom && Number(minZoom)) || props.minZoom || 4,\r\n maxZoom: (maxZoom && Number(maxZoom)) || props.maxZoom,\r\n };\r\n let map = new OlMap({\r\n target: mapDomRef.current,\r\n controls: defaultControls({ zoom: false }).extend([]),\r\n // layers: [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })],\r\n pixelRatio: 1,\r\n view: new View({\r\n ...viewDefault,\r\n projection: 'EPSG:4326',\r\n constrainResolution: true,\r\n }),\r\n // 设置缩放级别为整数\r\n constrainResolution: true,\r\n // 关闭无级缩放地图\r\n smoothResolutionConstraint: false,\r\n });\r\n\r\n // 统一加密啊配置\r\n map.encrypt = encrypt;\r\n\r\n const baseLayerParams = {\r\n ...otherDefaultMapInfo,\r\n mapStyle: mapStyle || defaultMapInfo.mapStyle || 'vec',\r\n baseMapStyle: baseMapStyle || defaultMapInfo.baseMapStyle || 'TdtImageryProvider',\r\n dark: dark || defaultMapInfo.dark,\r\n tk: tk || defaultMapInfo.tk,\r\n };\r\n\r\n if (customBaseLayers) {\r\n baseLayerRef.current = [...customBaseLayers(baseLayerParams)];\r\n } else {\r\n baseLayerRef.current = [...getBaseLayers(baseLayerParams)];\r\n }\r\n\r\n // 用于鹰眼图层\r\n map.baseLayer = cloneDeep(baseLayerRef.current);\r\n\r\n if (baseLayerRef.current?.length) {\r\n baseLayerRef.current?.map(item => {\r\n map.addLayer(item);\r\n });\r\n }\r\n\r\n map.tk = tk;\r\n\r\n // 隐藏表格弹出框\r\n map.hidePopupTable = hidePopupTable;\r\n\r\n // 自动调整视角\r\n map.autoView = autoView;\r\n\r\n // 关闭气泡自动调整视角\r\n map.closePopupAutoView = closePopupAutoView;\r\n\r\n // 图层管理\r\n map.layers = new Layers({ map });\r\n\r\n // 分析管理\r\n map.analysis = new Analysis({ map });\r\n\r\n mapRef.current = map;\r\n\r\n // 地图视角默认配置\r\n map.viewDefault = viewDefault;\r\n\r\n // 设置地图底图样式\r\n map.setMapStyle = _mapStyle => {\r\n let [tileLayerSource, markLayerSource] = TdtImageryProvider.getSource({\r\n mapStyle: _mapStyle,\r\n tk,\r\n });\r\n\r\n map.getLayerByKey('__TDT_TILE')?.setSource(tileLayerSource);\r\n map.getLayerByKey('__TDT_MARK')?.setSource(markLayerSource);\r\n };\r\n\r\n // 高亮效果\r\n highLayerRef.current = new HighLayer({ map });\r\n map.highlightLayer = highLayerRef.current;\r\n\r\n // 切换底图\r\n map.changeBaseLayer = baseMapStyle => {\r\n baseLayerRef.current?.map(item => {\r\n map.removeLayer(item);\r\n });\r\n\r\n baseLayerRef.current = [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })];\r\n baseLayerRef.current?.map(item => {\r\n map.addLayer(item);\r\n });\r\n map.baseLayer = cloneDeep(baseLayerRef.current);\r\n };\r\n\r\n // 获取基础图层\r\n map.getBaseLayers = getBaseLayers;\r\n\r\n // 设置高亮\r\n map.setHighlightFeature = feature => {\r\n map.highlightLayer.addHighlightFeature(feature);\r\n };\r\n\r\n // 清除高亮\r\n map.clearHighlightFeature = () => {\r\n map.highlightLayer.clearFeatures();\r\n };\r\n\r\n // 根 key 查找图层\r\n map.getLayerByKey = key => {\r\n return map.getAllLayers().find(layer => {\r\n if (layer.key === key) {\r\n return layer;\r\n }\r\n });\r\n };\r\n\r\n // 查找展示的绑定key的wms图层\r\n map.getWmsVisibleLayers = keys => {\r\n let layers = [];\r\n let allLayers = map.getAllLayers();\r\n if (Array.isArray(keys) && keys?.length) {\r\n allLayers = allLayers.filter(item => keys.includes(item.key));\r\n }\r\n allLayers.map(layer => {\r\n if (\r\n layer.key &&\r\n (layer instanceof Image || layer instanceof ImageTileLayer || layer instanceof ImageLayer || layer instanceof WmsLayer) &&\r\n layer.get('visible')\r\n ) {\r\n layers.push(layer);\r\n }\r\n });\r\n return layers;\r\n };\r\n\r\n // 查找展示的绑定key的wfs图层\r\n map.getWfsVisibleLayers = keys => {\r\n let layers = [];\r\n let allLayers = map.getAllLayers();\r\n if (Array.isArray(keys) && keys?.length) {\r\n allLayers = allLayers.filter(item => keys.includes(item.key));\r\n }\r\n allLayers.map(layer => {\r\n if (layer.key && layer instanceof VectorLayer && layer.get('visible')) {\r\n layers.push(layer);\r\n }\r\n });\r\n return layers;\r\n };\r\n\r\n // 根据key查找展示的图层,不传keys查所有展示的除底图的带key的图层\r\n map.getVisibleLayersByKeys = keys => {\r\n let layers = map.getAllLayers() || [];\r\n return layers.filter(layer => {\r\n if (typeof keys === 'string') {\r\n return layer.key === keys && layer.get('visible');\r\n } else if (Array.isArray(keys)) {\r\n return keys.includes(layer.key) && layer.get('visible');\r\n } else if (layer.key !== \"Highlight\") {\r\n return layer.get('visible') && layer.key;\r\n }\r\n });\r\n };\r\n\r\n // 通过图形查询所属图层\r\n map.getLayerByFeature = feature => {\r\n return map.getAllLayers().find(layer => {\r\n if (layer.key) {\r\n if (feature?.key && feature.key === layer.key) {\r\n return layer;\r\n } else if (layer instanceof VectorLayer && layer.key !== 'Highlight') {\r\n const source = layer.getSource();\r\n if (source.source && source.source.hasFeature(feature)) {\r\n return layer;\r\n } else if (source.hasFeature(feature)) {\r\n return layer;\r\n }\r\n } else if (feature?.layerKey && feature?.layerKey === layer.key) {\r\n return layer;\r\n } else if (feature?.values_?.key && layer.key === feature?.values_?.key) {\r\n return layer;\r\n }\r\n }\r\n });\r\n };\r\n\r\n // 根据关键字获取图形信息\r\n map.getMapFeatureInfoByText = text => {\r\n return getMapFeatureInfoByText(map, text);\r\n };\r\n\r\n // poi查询\r\n map.poiSearch = (params = {}) => {\r\n return poiSearch(params);\r\n };\r\n\r\n // 获取图层是否允许点击\r\n map.getLayerHasViewOnlyByFeature = feature => {\r\n let layer = map.getLayerByFeature(feature);\r\n return layer?.viewOnly;\r\n };\r\n\r\n // 展示提示\r\n map.showTip = content => {\r\n setTip(content);\r\n };\r\n\r\n // 隐藏提示\r\n map.hideTip = () => {\r\n setTip(null);\r\n };\r\n\r\n map.showPointTip = content => {\r\n setPointTip(content);\r\n };\r\n\r\n // 隐藏提示\r\n map.hidePointTip = () => {\r\n setPointTip(null);\r\n };\r\n\r\n // 展示弹窗\r\n map.showModal = params => {\r\n setModal(params);\r\n };\r\n\r\n // 隐藏弹窗\r\n map.hideModal = () => {\r\n setModal(null);\r\n };\r\n\r\n // 根据图层条件设置图层选中\r\n map.showTemplateByFilter = async (key, field, value, options) => {\r\n let layer = map.getLayerByKey(key);\r\n if (layer?.show) {\r\n let obj = layer.getFeatureByFieldValue(field, value);\r\n if (obj?.then) {\r\n obj.then(features => {\r\n if (features?.length) {\r\n let feature = features[0];\r\n map.showTemplate(feature.feature || feature, options);\r\n }\r\n });\r\n } else {\r\n if (obj) {\r\n map.showTemplate(obj, options);\r\n }\r\n }\r\n }\r\n };\r\n\r\n // 展示看板\r\n map.showTemplate = (feature, options) => {\r\n popupRef.current?.showTemplate?.(feature, options);\r\n };\r\n\r\n // 隐藏看板\r\n map.hideTemplate = () => {\r\n popupRef.current?.hideTemplate?.();\r\n };\r\n\r\n map.setLastView = () => {\r\n popupRef.current?.setLastView?.();\r\n };\r\n\r\n // 下标显隐\r\n map.setLabelVisible = visible => {\r\n map.getAllLayers().find(layer => {\r\n if (layer instanceof FeatureLayer) {\r\n layer.label = visible;\r\n }\r\n });\r\n };\r\n\r\n // 聚合显隐\r\n map.setClusterVisible = visible => {\r\n map.getAllLayers().find(layer => {\r\n if (layer instanceof FeatureLayer) {\r\n layer.cluster = visible;\r\n }\r\n });\r\n };\r\n\r\n // 海量点显隐\r\n map.setPointVisible = visible => {\r\n map.getAllLayers().find(layer => {\r\n if (layer instanceof FeatureLayer) {\r\n layer.point = visible;\r\n }\r\n });\r\n };\r\n\r\n // 通过返回值控制是否执行关闭\r\n map.onCloseTemplateBefore = feature => {\r\n if (onCloseTemplateBefore) {\r\n return onCloseTemplateBefore(feature);\r\n }\r\n };\r\n\r\n map.getViewOptions = () => {\r\n const view = map.getView();\r\n\r\n const [x, y] = view.getCenter();\r\n\r\n return {\r\n zoom: view.getZoom(),\r\n x,\r\n y,\r\n };\r\n };\r\n\r\n // 自适应\r\n map.fitView = (e, options) => {\r\n if (e) {\r\n let extent;\r\n\r\n if (e instanceof VectorLayer) {\r\n // 针对图层处理\r\n extent = e.getSource().getExtent();\r\n } else if (e instanceof VectorSource) {\r\n // 针对图层源处理\r\n extent = e.getExtent();\r\n } else if (Array.isArray(e) || e.geometryInfo) {\r\n // 针对数据处理\r\n let vectorSource = new VectorSource();\r\n\r\n if (e.geometryInfo || e?.[0]?.geometryInfo) {\r\n // 针对数据处理\r\n let f = createGeoJson(e);\r\n vectorSource.addFeatures(f);\r\n } else if (e instanceof Feature || e?.[0] instanceof Feature) {\r\n // 针对图形处理\r\n vectorSource.addFeatures(e);\r\n }\r\n\r\n extent = vectorSource.getExtent();\r\n } else if (e?.values_?.geometry) {\r\n // 针对单个图形\r\n extent = e.values_.geometry.getExtent();\r\n }\r\n\r\n if (extent) {\r\n if (e?.noFitView) {\r\n return;\r\n }\r\n\r\n let currentZoom = map.getView().getZoom();\r\n const maxZoom = fitViewMaxZoom || 16;\r\n map.getView().fit(extent, {\r\n padding: [100, 400, 100, 400],\r\n maxZoom: currentZoom > maxZoom ? currentZoom : maxZoom,\r\n duration: 500,\r\n ...options,\r\n });\r\n } else {\r\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\r\n }\r\n } else {\r\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\r\n }\r\n };\r\n\r\n map.fitViewByOptions = options => {\r\n const { x, y, zoom } = options;\r\n if (x && y) {\r\n const view = map.getView();\r\n view.animate({ zoom: zoom || view.getZoom(), center: [Number(x), Number(y)] });\r\n }\r\n };\r\n\r\n // 鼠标移入展示名称\r\n map.on('pointermove', event => {\r\n if (!(map.analysisActive || map.toolboxActive || map.drawActive)) {\r\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\r\n if (feature) {\r\n let layer = map.getLayerByFeature(feature);\r\n\r\n mapDomRef.current.style.cursor = 'pointer'; // 设置手形光标\r\n\r\n if (layer && (layer.labelField || layer.tipTemplate)) {\r\n const { labelField, tipTemplate } = layer;\r\n let label;\r\n if (tipTemplate) {\r\n label = tipTemplate(feature.values_);\r\n } else {\r\n label = feature.values_[labelField];\r\n }\r\n\r\n if (label) {\r\n map.showPointTip(label);\r\n } else {\r\n map.hidePointTip();\r\n }\r\n } else {\r\n map.hidePointTip();\r\n }\r\n } else {\r\n map.hidePointTip();\r\n\r\n mapDomRef.current.style.cursor = 'default'; // 恢复默认光标\r\n }\r\n }\r\n });\r\n\r\n // 注册事件\r\n registerEventLayer(map, props);\r\n\r\n function registerMapEvent(eventTarget, e) {\r\n if (map[eventTarget]) {\r\n map[eventTarget](e);\r\n }\r\n }\r\n\r\n function registerEvent(eventTarget, feature, event) {\r\n if (feature) {\r\n let properties = feature.getProperties();\r\n\r\n // 触发自身事件\r\n feature[eventTarget]?.(properties, event);\r\n\r\n let layer = map.getLayerByFeature(feature);\r\n\r\n if (layer?.[eventTarget]) {\r\n layer[eventTarget](properties, event);\r\n }\r\n }\r\n }\r\n\r\n // 鼠标事件,点击属性传递\r\n let hoverFeature;\r\n map.on('pointermove', event => {\r\n registerMapEvent('onMouseMove', event);\r\n\r\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\r\n\r\n if (feature) {\r\n registerEvent('onMouseMove', feature, event);\r\n\r\n // 判断是否在图形内移动\r\n if (hoverFeature) {\r\n let uid = getUid(feature);\r\n let hoverUid = getUid(hoverFeature);\r\n\r\n // 判断是否进入新的图形\r\n if (uid !== hoverUid) {\r\n registerEvent('onMouseLeave', hoverFeature, event);\r\n\r\n registerEvent('onMouseEnter', feature, event);\r\n hoverFeature = feature;\r\n }\r\n } else {\r\n registerEvent('onMouseEnter', feature, event);\r\n hoverFeature = feature;\r\n }\r\n\r\n registerEvent('onMouseMove', feature, event);\r\n } else {\r\n if (hoverFeature) {\r\n registerEvent('onMouseLeave', hoverFeature, event);\r\n }\r\n\r\n hoverFeature = null;\r\n }\r\n });\r\n\r\n // 点击事件,通过属性传递\r\n map.on('click', async event => {\r\n registerMapEvent('onClick', event);\r\n map.hideTip();\r\n map.hidePointTip();\r\n map._clickObject = event;\r\n let features = map.getFeaturesAtPixel(event.pixel) || [];\r\n\r\n if (!(map.analysisActive || map.toolboxActive)) {\r\n // 如果点击了高亮的元素直接结束,不再往下查询\r\n if (features?.[0]?.isHighLight) {\r\n return registerEvent('onClick', features[0], event);\r\n }\r\n\r\n if (!features.length) {\r\n let layers = map.getWmsVisibleLayers().filter(layer => !layer.viewOnly);\r\n let _features = await getWMSFeatureInfoByLayers(event, map, layers);\r\n if (_features?.length) {\r\n features = [_features[0]];\r\n }\r\n }\r\n\r\n if (features.length) {\r\n registerEvent('onClick', features[0], event);\r\n\r\n // 过滤掉仅展示的图层和没有设置气泡的图层\r\n features = features.filter(feature => {\r\n let layer = map.getLayerByFeature(feature);\r\n return layer && !layer.viewOnly && layer.template;\r\n });\r\n\r\n if (features.length) {\r\n map.showTemplate(features);\r\n } else {\r\n map.hideTemplate();\r\n }\r\n } else {\r\n map.hideTemplate();\r\n }\r\n } else if (features.length) {\r\n registerEvent('onClick', features[0], event);\r\n }\r\n });\r\n\r\n // 双击事件,通过属性传递\r\n map.on('dblclick', event => {\r\n registerMapEvent('onDoubleClick', event);\r\n\r\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\r\n\r\n registerEvent('onDoubleClick', feature, event);\r\n });\r\n\r\n // 层级事件\r\n map.onZoom = zoom => {\r\n onZoom && onZoom(zoom);\r\n };\r\n\r\n //监测地图zoom改变\r\n map.getView().on('change:resolution', function() {\r\n if (timeRef.current) {\r\n clearTimeout(timeRef.current);\r\n }\r\n\r\n timeRef.current = setTimeout(() => {\r\n let zoom = map.getView().getZoom();\r\n map.onZoom(zoom);\r\n }, 50);\r\n });\r\n\r\n createdMap && createdMap(map);\r\n\r\n setMapLoaded(true);\r\n\r\n window.addEventListener('resize', handleResize);\r\n };\r\n\r\n const handleResize = () => {\r\n if (timeRef.current) {\r\n clearTimeout(timeRef.current);\r\n }\r\n\r\n timeRef.current = setTimeout(() => {\r\n mapRef.current && mapRef.current.updateSize();\r\n }, 50);\r\n };\r\n\r\n const onMouseMove = event => {\r\n if (pointTip || tip) {\r\n let dom = document.getElementById('TIP');\r\n\r\n let left = event.nativeEvent.offsetX + 15;\r\n let top = event.nativeEvent.offsetY + 15;\r\n\r\n // 适配 右边和 上面的情况\r\n const rightBound =\r\n mapRef.current.getViewport().clientWidth - dom.getBoundingClientRect().width - 15;\r\n const topBound =\r\n mapRef.current.getViewport().clientHeight - dom.getBoundingClientRect().height - 15;\r\n\r\n left = left > rightBound ? rightBound : left;\r\n top = top > topBound ? topBound : top;\r\n\r\n dom.style.left = `${left}px`;\r\n dom.style.top = `${top}px`;\r\n }\r\n };\r\n\r\n return (\r\n <ConfigProvider locale={zhCN}>\r\n <div\r\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...style }}\r\n className={classnames('ol-map-container', { 'ol-map-container-dark': dark })}\r\n >\r\n <div\r\n ref={mapDomRef}\r\n className={classnames('ol-map-content')}\r\n style={{ width, height }}\r\n onMouseMove={onMouseMove}\r\n onMouseOver={() => setTipVis(true)}\r\n onMouseOut={() => setTipVis(false)}\r\n >\r\n {(pointTip || tip) && tipVis && (\r\n <div\r\n id=\"TIP\"\r\n className={classnames('ol-map-custom-tip')}\r\n style={{ ...positionStyle }}\r\n >\r\n {pointTip || tip}\r\n </div>\r\n )}\r\n </div>\r\n\r\n {mapLoaded && (\r\n <Provider\r\n value={{\r\n map: mapRef.current,\r\n showModal: props.showModal,\r\n onPopupClick: props.onPopupClick,\r\n dark,\r\n }}\r\n >\r\n <Popup map={mapRef.current} ref={popupRef} />\r\n {children}\r\n </Provider>\r\n )}\r\n </div>\r\n </ConfigProvider>\r\n );\r\n}\r\n\r\nexport default Map;\r\n\r\nMap.propTypes = {\r\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n createdMap: PropTypes.func,\r\n center: PropTypes.array,\r\n zoom: PropTypes.number,\r\n minZoom: PropTypes.number,\r\n maxZoom: PropTypes.number,\r\n dark: PropTypes.bool,\r\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\r\n tk: PropTypes.string.isRequired,\r\n style: PropTypes.object,\r\n baseMapStyle: PropTypes.object,\r\n encrypt: PropTypes.bool,\r\n};\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_zh_CN","_interopRequireDefault","_propTypes","_ol","_layer","_source","_control","_util","_classnames","_getDefaultMapInfo","_Popup","_getBaseLayers","_TdtImageryProvider","_HighLayer","_Search","_events","_layer2","_createFeatureCollection","_FeatureLayer","_ImageLayer","_ImageTileLayer","_ahooks","_provider","_Layers","_Analysis","_WmsLayer","_search","_lodash","_excluded","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_regeneratorRuntime","prototype","o","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","ownKeys","getOwnPropertySymbols","filter","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","includes","propertyIsEnumerable","asyncGeneratorStep","_asyncToGenerator","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","test","Map","props","_props$width","width","_props$height","height","children","center","dark","style","zoom","createdMap","mapStyle","baseMapStyle","tk","onCloseTemplateBefore","onZoom","customBaseLayers","positionStyle","_props$autoView","autoView","_props$closePopupAuto","closePopupAutoView","hidePopupTable","fitViewMaxZoom","encrypt","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","setModal","_useState5","_useState6","tipVis","setTipVis","_useState7","_useState8","tip","setTip","_useState9","_useState10","pointTip","setPointTip","mapRef","useRef","timerRef","mapDomRef","highLayerRef","popupRef","timeRef","baseLayerRef","useEffect","initMap","window","removeEventListener","handleResize","current","destroy","setInterval","layers","getLayers","getArray","map","autoRefresh","key","refresh","clearInterval","useUpdateEffect","setMapStyle","_ref","_callee3","_baseLayerRef$current","defaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","otherDefaultMapInfo","viewDefault","baseLayerParams","_baseLayerRef$current2","registerMapEvent","registerEvent","hoverFeature","_callee3$","_context3","_registerEvent","eventTarget","feature","event","_feature$eventTarget","properties","getProperties","layer","getLayerByFeature","_registerMapEvent","getDefaultMapInfo","OlMap","target","controls","defaultControls","extend","pixelRatio","view","View","projection","constrainResolution","smoothResolutionConstraint","getBaseLayers","baseLayer","cloneDeep","item","addLayer","Layers","analysis","Analysis","_mapStyle","_map$getLayerByKey","_map$getLayerByKey2","_TdtImageryProvider$g","TdtImageryProvider","getSource","_TdtImageryProvider$g2","tileLayerSource","markLayerSource","getLayerByKey","setSource","HighLayer","highlightLayer","changeBaseLayer","_baseLayerRef$current3","_baseLayerRef$current4","removeLayer","setHighlightFeature","options","addHighlightFeature","clearHighlightFeature","clearFeatures","getAllLayers","find","getWmsVisibleLayers","allLayers","Image","ImageTileLayer","ImageLayer","WmsLayer","getWfsVisibleLayers","VectorLayer","getVisibleLayersByKeys","_feature$values_","_feature$values_2","source","hasFeature","layerKey","values_","getMapFeatureInfoByText","text","poiSearch","params","undefined","getLayerHasViewOnlyByFeature","viewOnly","showTip","content","hideTip","showPointTip","hidePointTip","showModal","hideModal","showTemplateByFilter","_ref2","_callee","field","obj","_callee$","_context","show","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","_popupRef$current","_popupRef$current$sho","hideTemplate","_popupRef$current2","_popupRef$current2$hi","setLastView","_popupRef$current3","_popupRef$current3$se","setLabelVisible","visible","FeatureLayer","label","setClusterVisible","cluster","setPointVisible","point","getViewOptions","getView","_view$getCenter","getCenter","_view$getCenter2","x","getZoom","fitView","_e$values_","extent","getExtent","VectorSource","geometryInfo","_e$","vectorSource","createGeoJson","addFeatures","Feature","geometry","noFitView","currentZoom","fit","padding","duration","animate","fitViewByOptions","on","analysisActive","toolboxActive","drawActive","getFeaturesAtPixel","pixel","cursor","labelField","tipTemplate","registerEventLayer","uid","getUid","hoverUid","_ref3","_callee2","_features2","_features","_callee2$","_context2","_clickObject","isHighLight","getWMSFeatureInfoByLayers","template","_x5","clearTimeout","setTimeout","addEventListener","updateSize","onMouseMove","dom","document","getElementById","left","nativeEvent","offsetX","top","offsetY","rightBound","getViewport","clientWidth","getBoundingClientRect","topBound","clientHeight","concat","createElement","ConfigProvider","locale","zhCN","background","className","classnames","ref","onMouseOver","onMouseOut","id","onPopupClick","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","isRequired","object"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { ConfigProvider } from 'antd';\nimport zhCN from 'antd/es/locale/zh_CN';\nimport PropTypes from 'prop-types';\nimport { Map as OlMap, View, Feature } from 'ol';\nimport { Vector as VectorLayer, Image } from 'ol/layer';\nimport { Vector as VectorSource } from 'ol/source';\nimport { defaults as defaultControls } from 'ol/control';\nimport { getUid } from 'ol/util';\nimport classnames from 'classnames';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport Popup from './Popup';\nimport getBaseLayers from './getBaseLayers';\nimport TdtImageryProvider from './getBaseLayers/imagery/tdt/TdtImageryProvider';\nimport HighLayer from '../tools/Utils/HighLayer';\nimport { getMapFeatureInfoByText } from '../tools/Search';\nimport { registerEventLayer } from '../events';\nimport { getWMSFeatureInfoByLayers } from '../_util/layer';\nimport { createGeoJson } from '../feature-layer/createFeatureCollection';\nimport FeatureLayer from '../feature-layer/FeatureLayer';\nimport ImageLayer from '../image-layer/ImageLayer';\nimport ImageTileLayer from '../image-layer/ImageTileLayer';\nimport { useUpdateEffect } from 'ahooks';\nimport Provider from '../provider';\nimport Layers from './Layers';\nimport Analysis from './Analysis';\nimport WmsLayer from '../wms-layer/WmsLayer';\nimport 'ol/ol.css';\nimport './style';\nimport { poiSearch } from '../_util/search';\nimport { cloneDeep } from 'lodash';\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n children,\n center,\n dark,\n style,\n zoom,\n createdMap,\n mapStyle,\n // bmap 百度地图 amap 高德地图 tmap 天地图\n baseMapStyle,\n tk,\n onCloseTemplateBefore,\n onZoom,\n customBaseLayers,\n positionStyle,\n autoView = true,\n closePopupAutoView = true,\n hidePopupTable,\n fitViewMaxZoom,\n encrypt\n } = props;\n const [mapLoaded, setMapLoaded] = useState(false);\n const [, setModal] = useState(null);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n const [pointTip, setPointTip] = useState(null);\n const mapRef = useRef(null);\n const timerRef = useRef(null);\n const mapDomRef = useRef(null);\n const highLayerRef = useRef();\n const popupRef = useRef();\n const timeRef = useRef(null);\n\n const baseLayerRef = useRef([]);\n\n useEffect(() => {\n initMap();\n return () => {\n window.removeEventListener('resize', handleResize);\n highLayerRef.current && highLayerRef.current.destroy();\n };\n }, []);\n\n useEffect(() => {\n if (mapRef.current) {\n timerRef.current = setInterval(() => {\n const layers = mapRef.current.getLayers().getArray() || [];\n layers.map(v => {\n if (v.autoRefresh && v.key && v.get('visible') && v.refresh) {\n v.refresh();\n }\n });\n }, 10000);\n }\n return () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n }\n };\n }, []);\n\n useUpdateEffect(() => {\n mapRef.current.setMapStyle(mapStyle);\n }, [mapStyle]);\n\n const initMap = async () => {\n const defaultMapInfo = getDefaultMapInfo();\n const { minZoom, maxZoom, defaultZoomLevel, longitude, latitude, ...otherDefaultMapInfo } = defaultMapInfo;\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [116.397228, 30.9096],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 4,\n minZoom: (minZoom && Number(minZoom)) || props.minZoom || 4,\n maxZoom: (maxZoom && Number(maxZoom)) || props.maxZoom,\n };\n let map = new OlMap({\n target: mapDomRef.current,\n controls: defaultControls({ zoom: false }).extend([]),\n // layers: [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })],\n pixelRatio: 1,\n view: new View({\n ...viewDefault,\n projection: 'EPSG:4326',\n constrainResolution: true,\n }),\n // 设置缩放级别为整数\n constrainResolution: true,\n // 关闭无级缩放地图\n smoothResolutionConstraint: false,\n });\n\n // 统一加密啊配置\n map.encrypt = encrypt;\n\n const baseLayerParams = {\n ...otherDefaultMapInfo,\n mapStyle: mapStyle || defaultMapInfo.mapStyle || 'vec',\n baseMapStyle: baseMapStyle || defaultMapInfo.baseMapStyle || 'TdtImageryProvider',\n dark: dark || defaultMapInfo.dark,\n tk: tk || defaultMapInfo.tk,\n };\n\n if (customBaseLayers) {\n baseLayerRef.current = [...customBaseLayers(baseLayerParams)];\n } else {\n baseLayerRef.current = [...getBaseLayers(baseLayerParams)];\n }\n\n // 用于鹰眼图层\n map.baseLayer = cloneDeep(baseLayerRef.current);\n\n if (baseLayerRef.current?.length) {\n baseLayerRef.current?.map(item => {\n map.addLayer(item);\n });\n }\n\n map.tk = tk;\n\n // 隐藏表格弹出框\n map.hidePopupTable = hidePopupTable;\n\n // 自动调整视角\n map.autoView = autoView;\n\n // 关闭气泡自动调整视角\n map.closePopupAutoView = closePopupAutoView;\n\n // 图层管理\n map.layers = new Layers({ map });\n\n // 分析管理\n map.analysis = new Analysis({ map });\n\n mapRef.current = map;\n\n // 地图视角默认配置\n map.viewDefault = viewDefault;\n\n // 设置地图底图样式\n map.setMapStyle = _mapStyle => {\n let [tileLayerSource, markLayerSource] = TdtImageryProvider.getSource({\n mapStyle: _mapStyle,\n tk,\n });\n\n map.getLayerByKey('__TDT_TILE')?.setSource(tileLayerSource);\n map.getLayerByKey('__TDT_MARK')?.setSource(markLayerSource);\n };\n\n // 高亮效果\n highLayerRef.current = new HighLayer({ map });\n map.highlightLayer = highLayerRef.current;\n\n // 切换底图\n map.changeBaseLayer = baseMapStyle => {\n baseLayerRef.current?.map(item => {\n map.removeLayer(item);\n });\n\n baseLayerRef.current = [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })];\n baseLayerRef.current?.map(item => {\n map.addLayer(item);\n });\n map.baseLayer = cloneDeep(baseLayerRef.current);\n };\n\n // 获取基础图层\n map.getBaseLayers = getBaseLayers;\n\n // 设置高亮\n map.setHighlightFeature = (feature, options) => {\n map.highlightLayer.addHighlightFeature(feature, options);\n };\n\n // 清除高亮\n map.clearHighlightFeature = () => {\n map.highlightLayer.clearFeatures();\n };\n\n // 根 key 查找图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n if (layer.key === key) {\n return layer;\n }\n });\n };\n\n // 查找展示的绑定key的wms图层\n map.getWmsVisibleLayers = keys => {\n let layers = [];\n let allLayers = map.getAllLayers();\n if (Array.isArray(keys) && keys?.length) {\n allLayers = allLayers.filter(item => keys.includes(item.key));\n }\n allLayers.map(layer => {\n if (\n layer.key &&\n (layer instanceof Image || layer instanceof ImageTileLayer || layer instanceof ImageLayer || layer instanceof WmsLayer) &&\n layer.get('visible')\n ) {\n layers.push(layer);\n }\n });\n return layers;\n };\n\n // 查找展示的绑定key的wfs图层\n map.getWfsVisibleLayers = keys => {\n let layers = [];\n let allLayers = map.getAllLayers();\n if (Array.isArray(keys) && keys?.length) {\n allLayers = allLayers.filter(item => keys.includes(item.key));\n }\n allLayers.map(layer => {\n if (layer.key && layer instanceof VectorLayer && layer.get('visible')) {\n layers.push(layer);\n }\n });\n return layers;\n };\n\n // 根据key查找展示的图层,不传keys查所有展示的除底图的带key的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.get('visible');\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.get('visible');\n } else if (layer.key !== \"Highlight\") {\n return layer.get('visible') && layer.key;\n }\n });\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = feature => {\n return map.getAllLayers().find(layer => {\n if (layer.key) {\n if (feature?.key && feature.key === layer.key) {\n return layer;\n } else if (layer instanceof VectorLayer && layer.key !== 'Highlight') {\n const source = layer.getSource();\n if (source.source && source.source.hasFeature(feature)) {\n return layer;\n } else if (source.hasFeature(feature)) {\n return layer;\n }\n } else if (feature?.layerKey && feature?.layerKey === layer.key) {\n return layer;\n } else if (feature?.values_?.key && layer.key === feature?.values_?.key) {\n return layer;\n }\n }\n });\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = text => {\n return getMapFeatureInfoByText(map, text);\n };\n\n // poi查询\n map.poiSearch = (params = {}) => {\n return poiSearch(params);\n };\n\n // 获取图层是否允许点击\n map.getLayerHasViewOnlyByFeature = feature => {\n let layer = map.getLayerByFeature(feature);\n return layer?.viewOnly;\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n map.showPointTip = content => {\n setPointTip(content);\n };\n\n // 隐藏提示\n map.hidePointTip = () => {\n setPointTip(null);\n };\n\n // 展示弹窗\n map.showModal = params => {\n setModal(params);\n };\n\n // 隐藏弹窗\n map.hideModal = () => {\n setModal(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, options) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj?.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(feature.feature || feature, options);\n }\n });\n } else {\n if (obj) {\n map.showTemplate(obj, options);\n }\n }\n }\n };\n\n // 展示看板\n map.showTemplate = (feature, options) => {\n popupRef.current?.showTemplate?.(feature, options);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current?.hideTemplate?.();\n };\n\n map.setLastView = () => {\n popupRef.current?.setLastView?.();\n };\n\n // 下标显隐\n map.setLabelVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.label = visible;\n }\n });\n };\n\n // 聚合显隐\n map.setClusterVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.cluster = visible;\n }\n });\n };\n\n // 海量点显隐\n map.setPointVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.point = visible;\n }\n });\n };\n\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n map.getViewOptions = () => {\n const view = map.getView();\n\n const [x, y] = view.getCenter();\n\n return {\n zoom: view.getZoom(),\n x,\n y,\n };\n };\n\n // 自适应\n map.fitView = (e, options) => {\n if (e) {\n let extent;\n\n if (e instanceof VectorLayer) {\n // 针对图层处理\n extent = e.getSource().getExtent();\n } else if (e instanceof VectorSource) {\n // 针对图层源处理\n extent = e.getExtent();\n } else if (Array.isArray(e) || e.geometryInfo) {\n // 针对数据处理\n let vectorSource = new VectorSource();\n\n if (e.geometryInfo || e?.[0]?.geometryInfo) {\n // 针对数据处理\n let f = createGeoJson(e);\n vectorSource.addFeatures(f);\n } else if (e instanceof Feature || e?.[0] instanceof Feature) {\n // 针对图形处理\n vectorSource.addFeatures(e);\n }\n\n extent = vectorSource.getExtent();\n } else if (e?.values_?.geometry) {\n // 针对单个图形\n extent = e.values_.geometry.getExtent();\n }\n\n if (extent) {\n if (e?.noFitView) {\n return;\n }\n\n let currentZoom = map.getView().getZoom();\n const maxZoom = fitViewMaxZoom || 16;\n map.getView().fit(extent, {\n padding: [100, 400, 100, 400],\n maxZoom: currentZoom > maxZoom ? currentZoom : maxZoom,\n duration: 500,\n ...options,\n });\n } else {\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\n }\n } else {\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\n }\n };\n\n map.fitViewByOptions = options => {\n const { x, y, zoom } = options;\n if (x && y) {\n const view = map.getView();\n view.animate({ zoom: zoom || view.getZoom(), center: [Number(x), Number(y)] });\n }\n };\n\n // 鼠标移入展示名称\n map.on('pointermove', event => {\n if (!(map.analysisActive || map.toolboxActive || map.drawActive)) {\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n\n mapDomRef.current.style.cursor = 'pointer'; // 设置手形光标\n\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const { labelField, tipTemplate } = layer;\n let label;\n if (tipTemplate) {\n label = tipTemplate(feature.values_);\n } else {\n label = feature.values_[labelField];\n }\n\n if (label) {\n map.showPointTip(label);\n } else {\n map.hidePointTip();\n }\n } else {\n map.hidePointTip();\n }\n } else {\n map.hidePointTip();\n\n mapDomRef.current.style.cursor = 'default'; // 恢复默认光标\n }\n }\n });\n\n // 注册事件\n registerEventLayer(map, props);\n\n function registerMapEvent(eventTarget, e) {\n if (map[eventTarget]) {\n map[eventTarget](e);\n }\n }\n\n function registerEvent(eventTarget, feature, event) {\n if (feature) {\n let properties = feature.getProperties();\n\n // 触发自身事件\n feature[eventTarget]?.(properties, event);\n\n let layer = map.getLayerByFeature(feature);\n\n if (layer?.[eventTarget]) {\n layer[eventTarget](properties, event);\n }\n }\n }\n\n // 鼠标事件,点击属性传递\n let hoverFeature;\n map.on('pointermove', event => {\n registerMapEvent('onMouseMove', event);\n\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n\n if (feature) {\n registerEvent('onMouseMove', feature, event);\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent('onMouseLeave', hoverFeature, event);\n\n registerEvent('onMouseEnter', feature, event);\n hoverFeature = feature;\n }\n } else {\n registerEvent('onMouseEnter', feature, event);\n hoverFeature = feature;\n }\n\n registerEvent('onMouseMove', feature, event);\n } else {\n if (hoverFeature) {\n registerEvent('onMouseLeave', hoverFeature, event);\n }\n\n hoverFeature = null;\n }\n });\n\n // 点击事件,通过属性传递\n map.on('click', async event => {\n registerMapEvent('onClick', event);\n map.hideTip();\n map.hidePointTip();\n map._clickObject = event;\n let features = map.getFeaturesAtPixel(event.pixel) || [];\n\n if (!(map.analysisActive || map.toolboxActive)) {\n // 如果点击了高亮的元素直接结束,不再往下查询\n if (features?.[0]?.isHighLight) {\n return registerEvent('onClick', features[0], event);\n }\n\n if (!features.length) {\n let layers = map.getWmsVisibleLayers().filter(layer => !layer.viewOnly);\n let _features = await getWMSFeatureInfoByLayers(event, map, layers);\n if (_features?.length) {\n features = [_features[0]];\n }\n }\n\n if (features.length) {\n registerEvent('onClick', features[0], event);\n\n // 过滤掉仅展示的图层和没有设置气泡的图层\n features = features.filter(feature => {\n let layer = map.getLayerByFeature(feature);\n return layer && !layer.viewOnly && layer.template;\n });\n\n if (features.length) {\n map.showTemplate(features);\n } else {\n map.hideTemplate();\n }\n } else {\n map.hideTemplate();\n }\n } else if (features.length) {\n registerEvent('onClick', features[0], event);\n }\n });\n\n // 双击事件,通过属性传递\n map.on('dblclick', event => {\n registerMapEvent('onDoubleClick', event);\n\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n\n registerEvent('onDoubleClick', feature, event);\n });\n\n // 层级事件\n map.onZoom = zoom => {\n onZoom && onZoom(zoom);\n };\n\n //监测地图zoom改变\n map.getView().on('change:resolution', function() {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n }\n\n timeRef.current = setTimeout(() => {\n let zoom = map.getView().getZoom();\n map.onZoom(zoom);\n }, 50);\n });\n\n createdMap && createdMap(map);\n\n setMapLoaded(true);\n\n window.addEventListener('resize', handleResize);\n };\n\n const handleResize = () => {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n }\n\n timeRef.current = setTimeout(() => {\n mapRef.current && mapRef.current.updateSize();\n }, 50);\n };\n\n const onMouseMove = event => {\n if (pointTip || tip) {\n let dom = document.getElementById('TIP');\n\n let left = event.nativeEvent.offsetX + 15;\n let top = event.nativeEvent.offsetY + 15;\n\n // 适配 右边和 上面的情况\n const rightBound =\n mapRef.current.getViewport().clientWidth - dom.getBoundingClientRect().width - 15;\n const topBound =\n mapRef.current.getViewport().clientHeight - dom.getBoundingClientRect().height - 15;\n\n left = left > rightBound ? rightBound : left;\n top = top > topBound ? topBound : top;\n\n dom.style.left = `${left}px`;\n dom.style.top = `${top}px`;\n }\n };\n\n return (\n <ConfigProvider locale={zhCN}>\n <div\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...style }}\n className={classnames('ol-map-container', { 'ol-map-container-dark': dark })}\n >\n <div\n ref={mapDomRef}\n className={classnames('ol-map-content')}\n style={{ width, height }}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n >\n {(pointTip || tip) && tipVis && (\n <div\n id=\"TIP\"\n className={classnames('ol-map-custom-tip')}\n style={{ ...positionStyle }}\n >\n {pointTip || tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n onPopupClick: props.onPopupClick,\n dark,\n }}\n >\n <Popup map={mapRef.current} ref={popupRef} />\n {children}\n </Provider>\n )}\n </div>\n </ConfigProvider>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n style: PropTypes.object,\n baseMapStyle: PropTypes.object,\n encrypt: PropTypes.bool,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -71,7 +71,10 @@ var PathPlayBack = exports["default"] = /*#__PURE__*/function () {
|
|
|
71
71
|
_options$showStartPoi = options.showStartPoint,
|
|
72
72
|
showStartPoint = _options$showStartPoi === void 0 ? true : _options$showStartPoi,
|
|
73
73
|
_options$showEndPoint = options.showEndPoint,
|
|
74
|
-
showEndPoint = _options$showEndPoint === void 0 ? true : _options$showEndPoint
|
|
74
|
+
showEndPoint = _options$showEndPoint === void 0 ? true : _options$showEndPoint,
|
|
75
|
+
_options$zIndex = options.zIndex,
|
|
76
|
+
zIndex = _options$zIndex === void 0 ? 10 : _options$zIndex,
|
|
77
|
+
isHighlight = options.isHighlight;
|
|
75
78
|
this._init = false;
|
|
76
79
|
this.speed = speed || 10;
|
|
77
80
|
this.onPlaying = onPlaying;
|
|
@@ -86,11 +89,13 @@ var PathPlayBack = exports["default"] = /*#__PURE__*/function () {
|
|
|
86
89
|
this._distance = 0;
|
|
87
90
|
this._lastTime = Date.now();
|
|
88
91
|
this.autoView = autoView;
|
|
92
|
+
this.zIndex = zIndex;
|
|
89
93
|
this.lastCoordinate = null;
|
|
90
94
|
this.distanceRatioArr = [];
|
|
91
95
|
this.dataDistanceRatioArr = [];
|
|
92
96
|
this.isPlayEnd = false;
|
|
93
97
|
this.initRotation = 0;
|
|
98
|
+
this.isHighlight = isHighlight;
|
|
94
99
|
this.startStyle = new _style.Style({
|
|
95
100
|
image: new _style.Icon(_objectSpread({
|
|
96
101
|
anchor: [0.5, 1],
|
|
@@ -318,14 +323,21 @@ var PathPlayBack = exports["default"] = /*#__PURE__*/function () {
|
|
|
318
323
|
var position = startMarker.getGeometry().clone();
|
|
319
324
|
var geoMarker = new _Feature["default"]({
|
|
320
325
|
type: 'geoMarker',
|
|
321
|
-
geometry: position
|
|
326
|
+
geometry: position,
|
|
327
|
+
id: 'geoMarker'
|
|
322
328
|
});
|
|
329
|
+
if (this.isHighlight) {
|
|
330
|
+
this.map.setHighlightFeature(geoMarker, {
|
|
331
|
+
autoView: false
|
|
332
|
+
});
|
|
333
|
+
}
|
|
323
334
|
geoMarker.setStyle(this.geoMarkerStyle);
|
|
324
335
|
this.setRouteStyle(routeFeature);
|
|
325
336
|
var vectorLayer = new _layer.Vector({
|
|
326
337
|
source: new _Vector["default"]({
|
|
327
338
|
features: [].concat(_toConsumableArray(routeFeature), [geoMarker])
|
|
328
|
-
})
|
|
339
|
+
}),
|
|
340
|
+
zIndex: this.zIndex
|
|
329
341
|
});
|
|
330
342
|
this.map.addLayer(vectorLayer);
|
|
331
343
|
this.routeFeatures = routeFeature;
|
|
@@ -537,6 +549,10 @@ var PathPlayBack = exports["default"] = /*#__PURE__*/function () {
|
|
|
537
549
|
}
|
|
538
550
|
vectorContext.setStyle(this.geoMarkerStyle);
|
|
539
551
|
vectorContext.drawGeometry(this.position);
|
|
552
|
+
var overlay = this.map.getOverlayById('geoMarker');
|
|
553
|
+
if (overlay) {
|
|
554
|
+
overlay.setPosition(this.position.getFlatCoordinates());
|
|
555
|
+
}
|
|
540
556
|
if (this.showTrace) {
|
|
541
557
|
this.setPaintLinePath({
|
|
542
558
|
coordinate: currentCoordinate,
|
|
@@ -641,6 +657,7 @@ var PathPlayBack = exports["default"] = /*#__PURE__*/function () {
|
|
|
641
657
|
this.stopAnimation();
|
|
642
658
|
}
|
|
643
659
|
this.map.removeLayer(this.vectorLayer);
|
|
660
|
+
this.map.clearHighlightFeature();
|
|
644
661
|
this.routeFeatures = null;
|
|
645
662
|
this.position = null;
|
|
646
663
|
this.vectorLayer = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PathPlayBack.js","names":["_Feature","_interopRequireDefault","require","_geom","_Vector","_style","_layer","_render","_people","_qd","_zd","_lodash","_interopRequireWildcard","_createFeatureCollection","_getPathLineStyles","_turf","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","o","Symbol","iterator","constructor","prototype","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","_arrayLikeToArray","toString","slice","name","Array","from","test","isArray","length","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_classCallCheck","_defineProperties","key","_createClass","_toPrimitive","toPrimitive","String","Number","getAngle","point1","point2","arc","Math","atan","PI","PathPlayBack","exports","options","data","_options$show","show","play","speed","map","style","onPlaying","onPlayEnd","_options$repeatPlay","repeatPlay","_options$autoView","autoView","_options$enableRotati","enableRotation","arrowStyle","showTrace","_options$traceStyle","traceStyle","_options$showStartPoi","showStartPoint","_options$showEndPoint","showEndPoint","_init","currentIndex","_distance","_lastTime","Date","now","lastCoordinate","distanceRatioArr","dataDistanceRatioArr","isPlayEnd","initRotation","startStyle","Style","image","Icon","anchor","src","QD","start","endStyle","ZD","end","geoMarkerStyle","PEOPLE","geoMarker","loadData","val","startAnimation","stopAnimation","vectorLayer","setVisible","_animating","source","getSource","hasFeature","startMarker","addFeature","removeFeature","endMarker","loadObjectData","coordinates","distanceArr","dataDistanceArr","routeFeature","item","index","geometryInfo","type","lngLats","coordType","lineData","transformGeometryInfoToWGS84","line","TurfLineString","TurfLength","route","LineString","v","TurfPoint","to","TurfDistance","Feature","geometry","arr","totalDistance","_","sum","list","distance","total","firstFeature","lastFeature","last","firstGeometry","Point","getGeometry","getFirstCoordinate","lastGeometry","getLastCoordinate","loadArrayData","getDefaultRouteStyle","feature","_this$style","_this$style2","undefined","isFunction","stroke","Stroke","width","color","setRouteStyle","features","_this","setStyle","resolution","styles","isEmpty","getPathLineStyles","destroy","_this$loadArrayData","_this$loadObjectData","position","clone","VectorLayer","VectorSource","concat","addLayer","routeFeatures","addTrace","changeProcess","process","_this2","calculateDistance","currentCoordinate","getCoordinateAt","setRotation","nextCoordinate","isEqual","lastRoute","nextRoute","playEnd","setCoordinates","getCoordinates","_ref","startCoordinates","endCoordinates","lineCoordinates","sliced","lineSlice","coordinate","setPaintLinePath","init","moveToIndex","dataIndex","moveTo","findIndex","_this3","lineDashFeatures","paintLineFeatures","setGeometry","getImage","currentRouteRatio","moveFeature","event","vectorContext","getVectorContext","time","frameState","elapsedTime","drawGeometry","getView","fit","padding","maxZoom","getZoom","duration","render","_ref2","paintLineFeature","MultiLineString","_this4","lineDashFeature","lineDash","_this5","cancel","_on_event","on","bind","un","listener","removeLayer"],"sources":["path-play-back/PathPlayBack.js"],"sourcesContent":["import Feature from 'ol/Feature';\nimport { Point, LineString, MultiLineString } from 'ol/geom';\nimport VectorSource from 'ol/source/Vector';\nimport { Icon, Stroke, Style } from 'ol/style';\nimport { Vector as VectorLayer } from 'ol/layer';\nimport { getVectorContext } from 'ol/render';\nimport PEOPLE from '../assets/people.png';\nimport QD from '../assets/qd.png';\nimport ZD from '../assets/zd.png';\nimport _, { isArray, isEmpty, isEqual, isFunction } from 'lodash';\nimport { transformGeometryInfoToWGS84 } from '../feature-layer/createFeatureCollection';\nimport getPathLineStyles from '../path-line-layer/getPathLineStyles';\nimport {\n point as TurfPoint,\n lineSlice,\n lineString as TurfLineString,\n length as TurfLength,\n distance as TurfDistance,\n} from '@turf/turf';\nconst getAngle = (point1, point2) => {\n let arc = 0;\n if (point2 && point2.length && point1 && point1.length) {\n if (\n (point2[0] - point1[0] >= 0 && point2[1] - point1[1] >= 0) ||\n (point2[0] - point1[0] < 0 && point2[1] - point1[1] > 0)\n ) {\n arc = Math.atan((point2[0] - point1[0]) / (point2[1] - point1[1]));\n } else if (\n (point2[0] - point1[0] > 0 && point2[1] - point1[1] < 0) ||\n (point2[0] - point1[0] < 0 && point2[1] - point1[1] < 0)\n ) {\n arc = Math.PI + Math.atan((point2[0] - point1[0]) / (point2[1] - point1[1]));\n }\n }\n return arc;\n};\nexport default class PathPlayBack {\n constructor(options) {\n const {\n data,\n show = true,\n play,\n speed,\n map,\n style,\n onPlaying,\n onPlayEnd,\n repeatPlay = true,\n autoView = false,\n enableRotation = false,\n arrowStyle,\n showTrace,\n traceStyle = {},\n showStartPoint = true,\n showEndPoint = true,\n } = options;\n\n this._init = false;\n\n this.speed = speed || 10;\n this.onPlaying = onPlaying;\n this.onPlayEnd = onPlayEnd;\n this.style = style;\n this.repeatPlay = repeatPlay;\n this.enableRotation = enableRotation;\n this.arrowStyle = arrowStyle;\n this.showTrace = showTrace;\n this.traceStyle = traceStyle;\n this.currentIndex = 0;\n this._distance = 0;\n this._lastTime = Date.now();\n this.autoView = autoView;\n this.lastCoordinate = null;\n this.distanceRatioArr = [];\n this.dataDistanceRatioArr = [];\n this.isPlayEnd = false;\n this.initRotation = 0;\n this.startStyle = new Style({\n image: new Icon({\n anchor: [0.5, 1],\n src: QD,\n ...(style?.start || {}),\n }),\n });\n this.endStyle = new Style({\n image: new Icon({\n anchor: [0.5, 1],\n src: ZD,\n ...(style?.end || {}),\n }),\n });\n this.geoMarkerStyle = new Style({\n image: new Icon({\n anchor: [0.5, 1],\n src: PEOPLE,\n ...(style?.geoMarker || {}),\n }),\n });\n this.map = map;\n if (data?.length) {\n this.loadData(data);\n }\n\n this.play = play || false;\n\n this.show = show;\n this.showStartPoint = showStartPoint;\n this.showEndPoint = showEndPoint;\n this._init = true;\n }\n\n set play(val) {\n if (this._init) {\n if (val) {\n this.startAnimation();\n } else {\n this.stopAnimation();\n }\n }\n }\n\n set show(val) {\n this.vectorLayer.setVisible(val);\n\n if (this._animating) {\n this.stopAnimation();\n }\n }\n\n set showStartPoint(val) {\n if (this.vectorLayer) {\n const source = this.vectorLayer.getSource();\n if (val) {\n !source.hasFeature(this.startMarker) && source.addFeature(this.startMarker);\n } else {\n source.removeFeature(this.startMarker);\n }\n }\n }\n set showEndPoint(val) {\n if (this.vectorLayer) {\n const source = this.vectorLayer.getSource();\n if (val) {\n !source.hasFeature(this.endMarker) && source.addFeature(this.endMarker);\n } else {\n source.removeFeature(this.endMarker);\n }\n }\n }\n\n loadObjectData(data) {\n let coordinates = [];\n let distanceArr = [];\n let dataDistanceArr = [];\n const routeFeature = data.map((item, index) => {\n const { geometryInfo } = item;\n let { type, lngLats, coordType } = geometryInfo;\n const lineData = transformGeometryInfoToWGS84(lngLats, type, coordType)[0];\n coordinates.push(...lineData);\n const line = TurfLineString(lineData);\n distanceArr.push(TurfLength(line));\n const route = new LineString(lineData);\n // 计算两个点的之间距离\n lineData.forEach((v, i) => {\n if (i === 0) {\n dataDistanceArr[index] = [0];\n } else {\n const from = TurfPoint(lineData[i - 1]);\n const to = TurfPoint(v);\n dataDistanceArr[index].push(TurfDistance(from, to));\n }\n });\n return new Feature({\n type: 'route',\n geometry: route,\n ...item,\n });\n });\n const dataDistanceRatioArr = dataDistanceArr.map(arr => {\n const totalDistance = _.sum(arr);\n const list = arr.map(distance => distance / (totalDistance || 1));\n // 计算两个点之间距离的占比\n return list.map((distance, index) => {\n if (index === 0) {\n return distance;\n } else if (index === arr.length - 1) {\n return 1;\n }\n return _.sum(list.slice(0, index + 1));\n });\n });\n\n this.distanceArr = distanceArr;\n const totalDistance = _.sum(distanceArr);\n distanceArr = distanceArr.map(distance => distance / (totalDistance || 1));\n\n this.distanceRatioArr = distanceArr.map((distance, index) => {\n if (index === 0) {\n return distance;\n } else if (index === distanceArr.length - 1) {\n return 1;\n }\n const total = _.sum(distanceArr.slice(0, index + 1));\n return total > 1 ? 1 : total;\n });\n this.dataDistanceRatioArr = dataDistanceRatioArr;\n this.route = new LineString(coordinates);\n const firstFeature = routeFeature[0];\n const lastFeature = _.last(routeFeature);\n const firstGeometry = new Point(firstFeature.getGeometry().getFirstCoordinate());\n const lastGeometry = new Point(lastFeature.getGeometry().getLastCoordinate());\n return {\n routeFeature,\n firstGeometry,\n lastGeometry,\n };\n }\n\n loadArrayData(data) {\n const route = new LineString(data);\n const distance = TurfLength(TurfLineString(data));\n this.route = route;\n const routeFeature = [\n new Feature({\n type: 'route',\n geometry: route,\n }),\n ];\n this.distanceArr = [distance];\n this.distanceRatioArr = [1];\n const firstGeometry = new Point(route.getFirstCoordinate());\n const lastGeometry = new Point(route.getLastCoordinate());\n return {\n routeFeature,\n firstGeometry,\n lastGeometry,\n };\n }\n\n getDefaultRouteStyle(feature, options = {}) {\n const style = isFunction(this.style?.route)\n ? this.style.route(feature)\n : this.style?.route || {};\n return new Style({\n stroke: new Stroke({\n width: 6,\n color: [237, 212, 0, 0.8],\n ...style,\n ...options,\n }),\n });\n }\n\n setRouteStyle(features) {\n features.forEach(feature => {\n feature.setStyle((feature, resolution) => {\n const styles = [this.getDefaultRouteStyle(feature)];\n if (!isEmpty(this.arrowStyle)) {\n styles.push(\n ...getPathLineStyles({ feature, resolution, arrowStyle: this.arrowStyle }),\n );\n }\n\n return styles;\n });\n });\n }\n\n loadData(data) {\n if (this.vectorLayer) {\n this.destroy();\n }\n\n let routeFeature = null;\n let firstGeometry = null;\n let lastGeometry = null;\n if (isArray(data[0])) {\n ({ routeFeature, firstGeometry, lastGeometry } = this.loadArrayData(data));\n } else {\n ({ routeFeature, firstGeometry, lastGeometry } = this.loadObjectData(data));\n }\n\n const startMarker = new Feature({\n type: 'start',\n geometry: firstGeometry,\n });\n startMarker.setStyle(this.startStyle);\n const endMarker = new Feature({\n type: 'end',\n geometry: lastGeometry,\n });\n endMarker.setStyle(this.endStyle);\n const position = startMarker.getGeometry().clone();\n\n const geoMarker = new Feature({\n type: 'geoMarker',\n geometry: position,\n });\n geoMarker.setStyle(this.geoMarkerStyle);\n this.setRouteStyle(routeFeature);\n const vectorLayer = new VectorLayer({\n source: new VectorSource({\n features: [...routeFeature, geoMarker],\n }),\n });\n this.map.addLayer(vectorLayer);\n this.routeFeatures = routeFeature;\n this.position = position;\n this.vectorLayer = vectorLayer;\n this.geoMarker = geoMarker;\n this.startMarker = startMarker;\n this.endMarker = endMarker;\n if (!vectorLayer.getSource().hasFeature(startMarker)) {\n vectorLayer.getSource().addFeature(startMarker);\n }\n if (!vectorLayer.getSource().hasFeature(endMarker)) {\n vectorLayer.getSource().addFeature(endMarker);\n }\n if (this.showTrace) {\n this.addTrace();\n }\n }\n\n changeProcess(process) {\n this._distance = process;\n const distance = this.calculateDistance();\n const route = this.routeFeatures[this.currentIndex].getGeometry();\n const currentCoordinate = route.getCoordinateAt(distance > 1 ? 2 - distance : distance);\n if (distance > 0) {\n const lastCoordinate = route.getCoordinateAt(distance - 0.0001);\n this.setRotation(lastCoordinate, currentCoordinate);\n } else {\n const nextCoordinate = route.getCoordinateAt(0.0000001);\n if (isEqual(currentCoordinate, nextCoordinate)) {\n if (this.currentIndex === this.routeFeatures.length - 1) {\n const lastRoute = this.routeFeatures[this.currentIndex - 1].getGeometry();\n const lastCoordinate = lastRoute.getCoordinateAt(1 - 0.0001);\n this.setRotation(lastCoordinate, currentCoordinate);\n } else {\n const nextRoute = this.routeFeatures[this.currentIndex + 1].getGeometry();\n const nextCoordinate = nextRoute.getCoordinateAt(0.0001);\n this.setRotation(currentCoordinate, nextCoordinate);\n }\n } else {\n this.setRotation(currentCoordinate, nextCoordinate);\n }\n }\n if (distance >= 1 && this.currentIndex >= this.routeFeatures.length - 1) {\n this.isPlayEnd = true;\n this.playEnd();\n return;\n }\n this.position.setCoordinates(currentCoordinate);\n\n if (this.showTrace) {\n const list = [];\n const getCoordinates = ({ startCoordinates, endCoordinates, lineCoordinates }) => {\n const start = TurfPoint(startCoordinates);\n const end = TurfPoint(endCoordinates);\n const line = TurfLineString(lineCoordinates);\n const sliced = lineSlice(start, end, line);\n return sliced.geometry.coordinates;\n };\n if (this.currentIndex === 0) {\n list.push(\n getCoordinates({\n startCoordinates: this.startMarker.getGeometry().getCoordinates(),\n endCoordinates: currentCoordinate,\n lineCoordinates: route.getCoordinates(),\n }),\n );\n } else {\n const features = this.routeFeatures.slice(0, this.currentIndex + 1);\n features.forEach((feature, index) => {\n const geometry = feature.getGeometry();\n let endCoordinates = currentCoordinate;\n if (index !== this.currentIndex) {\n endCoordinates = geometry.getLastCoordinate();\n }\n list.push(\n getCoordinates({\n startCoordinates: geometry.getFirstCoordinate(),\n endCoordinates,\n lineCoordinates: geometry.getCoordinates(),\n }),\n );\n });\n }\n list.forEach((coordinates, index) => {\n coordinates.forEach((coordinate, i) => {\n this.setPaintLinePath({ coordinate, init: i === 0, index });\n });\n });\n }\n return distance;\n }\n\n moveToIndex(index, dataIndex) {\n let process = 0;\n if (this.dataDistanceRatioArr[index][dataIndex] === 1) {\n process = this.distanceRatioArr[index];\n } else {\n process =\n index === 0\n ? this.dataDistanceRatioArr[index][dataIndex]\n : (this.distanceRatioArr[index] - this.distanceRatioArr[index - 1]) *\n this.dataDistanceRatioArr[index][dataIndex] +\n this.distanceRatioArr[index - 1];\n }\n this.currentIndex = index;\n this.changeProcess(process);\n this.onPlaying && this.onPlaying(process, index, dataIndex);\n }\n\n moveTo(process) {\n this.currentIndex = this.distanceRatioArr.findIndex(distance => distance >= process);\n const distance = this.changeProcess(process);\n // 计算当前进度的对应index\n const dataIndex = (this.dataDistanceRatioArr[this.currentIndex] || []).findIndex(\n (v, index, arr) => {\n if (index === arr.length - 1) {\n return true;\n }\n return v <= distance <= arr[index + 1];\n },\n );\n this.onPlaying && this.onPlaying(this._distance, this.currentIndex, dataIndex);\n }\n\n playEnd() {\n if (!this.repeatPlay) {\n this.stopAnimation();\n }\n this.isPlayEnd = true;\n if (this.showTrace) {\n this.lineDashFeatures.forEach(feature => {\n this.vectorLayer.getSource().removeFeature(feature);\n });\n this.paintLineFeatures.forEach(feature => {\n this.vectorLayer.getSource().removeFeature(feature);\n feature.setGeometry(null);\n });\n this.setRouteStyle(this.routeFeatures);\n }\n }\n\n setRotation(lastCoordinate, coordinate) {\n if (lastCoordinate && coordinate && this.enableRotation) {\n this.geoMarkerStyle.getImage().setRotation(getAngle(lastCoordinate, coordinate));\n }\n }\n\n // 计算当前路段跑的距离,计算公式:(当前跑的总距离 - 已跑路段的总距离) / 当前路段的百分比\n calculateDistance() {\n const currentRouteRatio =\n this.currentIndex > 0\n ? this.distanceRatioArr[this.currentIndex] -\n this.distanceRatioArr[this.currentIndex - 1]\n : this.distanceRatioArr[this.currentIndex];\n if (currentRouteRatio === 0) {\n return 1.001;\n }\n let distance =\n (this._distance -\n (this.currentIndex > 0 ? this.distanceRatioArr[this.currentIndex - 1] : 0)) /\n currentRouteRatio;\n return distance;\n }\n\n moveFeature(event) {\n const vectorContext = getVectorContext(event);\n const speed = Number(this.speed);\n const time = event.frameState.time;\n const elapsedTime = time - this._lastTime;\n this._distance = (this._distance + (speed * elapsedTime) / 1e6) % 2;\n let distance = this.calculateDistance();\n this._lastTime = time;\n if (distance > 1) {\n this.currentIndex = this.currentIndex + 1;\n distance = 0;\n }\n if (this.currentIndex > this.routeFeatures.length - 1) {\n this.playEnd();\n if (this.repeatPlay) {\n this.currentIndex = this.routeFeatures.length - 1;\n } else {\n const currentCoordinate = this.endMarker.getGeometry().getCoordinates();\n this.position.setCoordinates(currentCoordinate);\n vectorContext.setStyle(this.geoMarkerStyle);\n vectorContext.drawGeometry(this.position);\n this.onPlayEnd && this.onPlayEnd();\n return;\n }\n }\n // 计算当前进度的对应index\n const dataIndex = (this.dataDistanceRatioArr[this.currentIndex] || []).findIndex(\n (v, index, arr) => {\n if (index === arr.length - 1) {\n return true;\n }\n return v <= distance <= arr[index + 1];\n },\n );\n const route = this.routeFeatures[this.currentIndex].getGeometry();\n const currentCoordinate = route.getCoordinateAt(distance > 1 ? 2 - distance : distance);\n this.position.setCoordinates(currentCoordinate);\n this.setRotation(this.lastCoordinate, currentCoordinate);\n this.lastCoordinate = currentCoordinate;\n if (this.autoView) {\n this.map.getView().fit(this.position, {\n padding: [100, 400, 100, 400],\n maxZoom: this.map.getView().getZoom(),\n duration: 0,\n });\n }\n\n vectorContext.setStyle(this.geoMarkerStyle);\n vectorContext.drawGeometry(this.position);\n if (this.showTrace) {\n this.setPaintLinePath({\n coordinate: currentCoordinate,\n index: this.currentIndex,\n });\n }\n this.onPlaying &&\n this.onPlaying(this._distance > 1 ? 1 : this._distance, this.currentIndex, dataIndex);\n this.map.render();\n }\n\n setPaintLinePath({ coordinate, init, index }) {\n const paintLineFeature = this.paintLineFeatures[index];\n if (init) {\n paintLineFeature.setGeometry(null);\n }\n const geometry = paintLineFeature.getGeometry();\n if (geometry) {\n geometry.setCoordinates([[...geometry.getCoordinates()[0], coordinate]]);\n } else {\n let lineData = [[coordinate]];\n const route = new MultiLineString(lineData);\n\n paintLineFeature.setGeometry(route);\n }\n if (!this.vectorLayer.getSource().hasFeature(paintLineFeature)) {\n this.vectorLayer.getSource().addFeature(paintLineFeature);\n }\n }\n\n addTrace() {\n if (this._distance === 0) {\n const lineDashFeatures = [];\n const paintLineFeatures = [];\n this.routeFeatures.forEach(feature => {\n const lineDashFeature = feature.clone();\n const paintLineFeature = feature.clone();\n paintLineFeature.setGeometry(null);\n lineDashFeature.setStyle(\n this.getDefaultRouteStyle(feature, {\n lineDash: [15],\n }),\n );\n lineDashFeatures.push(lineDashFeature);\n paintLineFeatures.push(paintLineFeature);\n });\n this.lineDashFeatures = lineDashFeatures;\n this.paintLineFeatures = paintLineFeatures;\n }\n }\n\n startAnimation() {\n if (!this.repeatPlay && this.isPlayEnd) {\n // 当不重复播放,且当前在终点时,从起点开始播放\n this.cancel();\n this.geoMarkerStyle.getImage().setRotation(0);\n }\n this.isPlayEnd = false;\n this._animating = true;\n this._lastTime = Date.now();\n this._on_event = this.vectorLayer.on('postrender', this.moveFeature.bind(this));\n this.geoMarker.setGeometry(null);\n if (this.showTrace) {\n this.lineDashFeatures.forEach(feature => {\n if (!this.vectorLayer.getSource().hasFeature(feature)) {\n this.vectorLayer.getSource().addFeature(feature);\n }\n });\n this.routeFeatures.forEach(feature => {\n feature.setStyle(new Style({}));\n });\n }\n }\n\n stopAnimation() {\n this._animating = false;\n this.geoMarker.setGeometry(this.position);\n if (this._on_event) {\n this.vectorLayer.un('postrender', this._on_event.listener);\n }\n }\n\n cancel() {\n this.geoMarkerStyle.getImage().setRotation(0);\n this._distance = 0;\n this.currentIndex = 0;\n const currentCoordinate = this.route.getCoordinateAt(0);\n this.position.setCoordinates(currentCoordinate);\n this.playEnd();\n this.onPlaying && this.onPlaying(this._distance, this.currentIndex, 0);\n }\n\n destroy() {\n if (this._animating) {\n this.stopAnimation();\n }\n\n this.map.removeLayer(this.vectorLayer);\n this.routeFeatures = null;\n this.position = null;\n this.vectorLayer = null;\n this.geoMarker = null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PathPlayBack.js","names":["_Feature","_interopRequireDefault","require","_geom","_Vector","_style","_layer","_render","_people","_qd","_zd","_lodash","_interopRequireWildcard","_createFeatureCollection","_getPathLineStyles","_turf","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","o","Symbol","iterator","constructor","prototype","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","_arrayLikeToArray","toString","slice","name","Array","from","test","isArray","length","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_classCallCheck","_defineProperties","key","_createClass","_toPrimitive","toPrimitive","String","Number","getAngle","point1","point2","arc","Math","atan","PI","PathPlayBack","exports","options","data","_options$show","show","play","speed","map","style","onPlaying","onPlayEnd","_options$repeatPlay","repeatPlay","_options$autoView","autoView","_options$enableRotati","enableRotation","arrowStyle","showTrace","_options$traceStyle","traceStyle","_options$showStartPoi","showStartPoint","_options$showEndPoint","showEndPoint","_options$zIndex","zIndex","isHighlight","_init","currentIndex","_distance","_lastTime","Date","now","lastCoordinate","distanceRatioArr","dataDistanceRatioArr","isPlayEnd","initRotation","startStyle","Style","image","Icon","anchor","src","QD","start","endStyle","ZD","end","geoMarkerStyle","PEOPLE","geoMarker","loadData","val","startAnimation","stopAnimation","vectorLayer","setVisible","_animating","source","getSource","hasFeature","startMarker","addFeature","removeFeature","endMarker","loadObjectData","coordinates","distanceArr","dataDistanceArr","routeFeature","item","index","geometryInfo","type","lngLats","coordType","lineData","transformGeometryInfoToWGS84","line","TurfLineString","TurfLength","route","LineString","v","TurfPoint","to","TurfDistance","Feature","geometry","arr","totalDistance","_","sum","list","distance","total","firstFeature","lastFeature","last","firstGeometry","Point","getGeometry","getFirstCoordinate","lastGeometry","getLastCoordinate","loadArrayData","getDefaultRouteStyle","feature","_this$style","_this$style2","undefined","isFunction","stroke","Stroke","width","color","setRouteStyle","features","_this","setStyle","resolution","styles","isEmpty","getPathLineStyles","destroy","_this$loadArrayData","_this$loadObjectData","position","clone","id","setHighlightFeature","VectorLayer","VectorSource","concat","addLayer","routeFeatures","addTrace","changeProcess","process","_this2","calculateDistance","currentCoordinate","getCoordinateAt","setRotation","nextCoordinate","isEqual","lastRoute","nextRoute","playEnd","setCoordinates","getCoordinates","_ref","startCoordinates","endCoordinates","lineCoordinates","sliced","lineSlice","coordinate","setPaintLinePath","init","moveToIndex","dataIndex","moveTo","findIndex","_this3","lineDashFeatures","paintLineFeatures","setGeometry","getImage","currentRouteRatio","moveFeature","event","vectorContext","getVectorContext","time","frameState","elapsedTime","drawGeometry","getView","fit","padding","maxZoom","getZoom","duration","overlay","getOverlayById","setPosition","getFlatCoordinates","render","_ref2","paintLineFeature","MultiLineString","_this4","lineDashFeature","lineDash","_this5","cancel","_on_event","on","bind","un","listener","removeLayer","clearHighlightFeature"],"sources":["path-play-back/PathPlayBack.js"],"sourcesContent":["import Feature from 'ol/Feature';\nimport { Point, LineString, MultiLineString } from 'ol/geom';\nimport VectorSource from 'ol/source/Vector';\nimport { Icon, Stroke, Style } from 'ol/style';\nimport { Vector as VectorLayer } from 'ol/layer';\nimport { getVectorContext } from 'ol/render';\nimport PEOPLE from '../assets/people.png';\nimport QD from '../assets/qd.png';\nimport ZD from '../assets/zd.png';\nimport _, { isArray, isEmpty, isEqual, isFunction } from 'lodash';\nimport { transformGeometryInfoToWGS84 } from '../feature-layer/createFeatureCollection';\nimport getPathLineStyles from '../path-line-layer/getPathLineStyles';\nimport {\n point as TurfPoint,\n lineSlice,\n lineString as TurfLineString,\n length as TurfLength,\n distance as TurfDistance,\n} from '@turf/turf';\nconst getAngle = (point1, point2) => {\n let arc = 0;\n if (point2 && point2.length && point1 && point1.length) {\n if (\n (point2[0] - point1[0] >= 0 && point2[1] - point1[1] >= 0) ||\n (point2[0] - point1[0] < 0 && point2[1] - point1[1] > 0)\n ) {\n arc = Math.atan((point2[0] - point1[0]) / (point2[1] - point1[1]));\n } else if (\n (point2[0] - point1[0] > 0 && point2[1] - point1[1] < 0) ||\n (point2[0] - point1[0] < 0 && point2[1] - point1[1] < 0)\n ) {\n arc = Math.PI + Math.atan((point2[0] - point1[0]) / (point2[1] - point1[1]));\n }\n }\n return arc;\n};\nexport default class PathPlayBack {\n constructor(options) {\n const {\n data,\n show = true,\n play,\n speed,\n map,\n style,\n onPlaying,\n onPlayEnd,\n repeatPlay = true,\n autoView = false,\n enableRotation = false,\n arrowStyle,\n showTrace,\n traceStyle = {},\n showStartPoint = true,\n showEndPoint = true,\n zIndex = 10,\n isHighlight,\n } = options;\n\n this._init = false;\n\n this.speed = speed || 10;\n this.onPlaying = onPlaying;\n this.onPlayEnd = onPlayEnd;\n this.style = style;\n this.repeatPlay = repeatPlay;\n this.enableRotation = enableRotation;\n this.arrowStyle = arrowStyle;\n this.showTrace = showTrace;\n this.traceStyle = traceStyle;\n this.currentIndex = 0;\n this._distance = 0;\n this._lastTime = Date.now();\n this.autoView = autoView;\n this.zIndex = zIndex;\n this.lastCoordinate = null;\n this.distanceRatioArr = [];\n this.dataDistanceRatioArr = [];\n this.isPlayEnd = false;\n this.initRotation = 0;\n this.isHighlight = isHighlight;\n this.startStyle = new Style({\n image: new Icon({\n anchor: [0.5, 1],\n src: QD,\n ...(style?.start || {}),\n }),\n });\n this.endStyle = new Style({\n image: new Icon({\n anchor: [0.5, 1],\n src: ZD,\n ...(style?.end || {}),\n }),\n });\n this.geoMarkerStyle = new Style({\n image: new Icon({\n anchor: [0.5, 1],\n src: PEOPLE,\n ...(style?.geoMarker || {}),\n }),\n });\n this.map = map;\n if (data?.length) {\n this.loadData(data);\n }\n\n this.play = play || false;\n\n this.show = show;\n this.showStartPoint = showStartPoint;\n this.showEndPoint = showEndPoint;\n this._init = true;\n }\n\n set play(val) {\n if (this._init) {\n if (val) {\n this.startAnimation();\n } else {\n this.stopAnimation();\n }\n }\n }\n\n set show(val) {\n this.vectorLayer.setVisible(val);\n\n if (this._animating) {\n this.stopAnimation();\n }\n }\n\n set showStartPoint(val) {\n if (this.vectorLayer) {\n const source = this.vectorLayer.getSource();\n if (val) {\n !source.hasFeature(this.startMarker) && source.addFeature(this.startMarker);\n } else {\n source.removeFeature(this.startMarker);\n }\n }\n }\n set showEndPoint(val) {\n if (this.vectorLayer) {\n const source = this.vectorLayer.getSource();\n if (val) {\n !source.hasFeature(this.endMarker) && source.addFeature(this.endMarker);\n } else {\n source.removeFeature(this.endMarker);\n }\n }\n }\n\n loadObjectData(data) {\n let coordinates = [];\n let distanceArr = [];\n let dataDistanceArr = [];\n const routeFeature = data.map((item, index) => {\n const { geometryInfo } = item;\n let { type, lngLats, coordType } = geometryInfo;\n const lineData = transformGeometryInfoToWGS84(lngLats, type, coordType)[0];\n coordinates.push(...lineData);\n const line = TurfLineString(lineData);\n distanceArr.push(TurfLength(line));\n const route = new LineString(lineData);\n // 计算两个点的之间距离\n lineData.forEach((v, i) => {\n if (i === 0) {\n dataDistanceArr[index] = [0];\n } else {\n const from = TurfPoint(lineData[i - 1]);\n const to = TurfPoint(v);\n dataDistanceArr[index].push(TurfDistance(from, to));\n }\n });\n return new Feature({\n type: 'route',\n geometry: route,\n ...item,\n });\n });\n const dataDistanceRatioArr = dataDistanceArr.map(arr => {\n const totalDistance = _.sum(arr);\n const list = arr.map(distance => distance / (totalDistance || 1));\n // 计算两个点之间距离的占比\n return list.map((distance, index) => {\n if (index === 0) {\n return distance;\n } else if (index === arr.length - 1) {\n return 1;\n }\n return _.sum(list.slice(0, index + 1));\n });\n });\n\n this.distanceArr = distanceArr;\n const totalDistance = _.sum(distanceArr);\n distanceArr = distanceArr.map(distance => distance / (totalDistance || 1));\n\n this.distanceRatioArr = distanceArr.map((distance, index) => {\n if (index === 0) {\n return distance;\n } else if (index === distanceArr.length - 1) {\n return 1;\n }\n const total = _.sum(distanceArr.slice(0, index + 1));\n return total > 1 ? 1 : total;\n });\n this.dataDistanceRatioArr = dataDistanceRatioArr;\n this.route = new LineString(coordinates);\n const firstFeature = routeFeature[0];\n const lastFeature = _.last(routeFeature);\n const firstGeometry = new Point(firstFeature.getGeometry().getFirstCoordinate());\n const lastGeometry = new Point(lastFeature.getGeometry().getLastCoordinate());\n return {\n routeFeature,\n firstGeometry,\n lastGeometry,\n };\n }\n\n loadArrayData(data) {\n const route = new LineString(data);\n const distance = TurfLength(TurfLineString(data));\n this.route = route;\n const routeFeature = [\n new Feature({\n type: 'route',\n geometry: route,\n }),\n ];\n this.distanceArr = [distance];\n this.distanceRatioArr = [1];\n const firstGeometry = new Point(route.getFirstCoordinate());\n const lastGeometry = new Point(route.getLastCoordinate());\n return {\n routeFeature,\n firstGeometry,\n lastGeometry,\n };\n }\n\n getDefaultRouteStyle(feature, options = {}) {\n const style = isFunction(this.style?.route)\n ? this.style.route(feature)\n : this.style?.route || {};\n return new Style({\n stroke: new Stroke({\n width: 6,\n color: [237, 212, 0, 0.8],\n ...style,\n ...options,\n }),\n });\n }\n\n setRouteStyle(features) {\n features.forEach(feature => {\n feature.setStyle((feature, resolution) => {\n const styles = [this.getDefaultRouteStyle(feature)];\n if (!isEmpty(this.arrowStyle)) {\n styles.push(\n ...getPathLineStyles({ feature, resolution, arrowStyle: this.arrowStyle }),\n );\n }\n\n return styles;\n });\n });\n }\n\n loadData(data) {\n if (this.vectorLayer) {\n this.destroy();\n }\n\n let routeFeature = null;\n let firstGeometry = null;\n let lastGeometry = null;\n if (isArray(data[0])) {\n ({ routeFeature, firstGeometry, lastGeometry } = this.loadArrayData(data));\n } else {\n ({ routeFeature, firstGeometry, lastGeometry } = this.loadObjectData(data));\n }\n\n const startMarker = new Feature({\n type: 'start',\n geometry: firstGeometry,\n });\n startMarker.setStyle(this.startStyle);\n const endMarker = new Feature({\n type: 'end',\n geometry: lastGeometry,\n });\n endMarker.setStyle(this.endStyle);\n const position = startMarker.getGeometry().clone();\n\n const geoMarker = new Feature({\n type: 'geoMarker',\n geometry: position,\n id: 'geoMarker',\n });\n\n if (this.isHighlight) {\n this.map.setHighlightFeature(geoMarker, {\n autoView: false,\n });\n }\n geoMarker.setStyle(this.geoMarkerStyle);\n this.setRouteStyle(routeFeature);\n const vectorLayer = new VectorLayer({\n source: new VectorSource({\n features: [...routeFeature, geoMarker],\n }),\n zIndex: this.zIndex,\n });\n this.map.addLayer(vectorLayer);\n this.routeFeatures = routeFeature;\n this.position = position;\n this.vectorLayer = vectorLayer;\n this.geoMarker = geoMarker;\n this.startMarker = startMarker;\n this.endMarker = endMarker;\n if (!vectorLayer.getSource().hasFeature(startMarker)) {\n vectorLayer.getSource().addFeature(startMarker);\n }\n if (!vectorLayer.getSource().hasFeature(endMarker)) {\n vectorLayer.getSource().addFeature(endMarker);\n }\n if (this.showTrace) {\n this.addTrace();\n }\n }\n\n changeProcess(process) {\n this._distance = process;\n const distance = this.calculateDistance();\n const route = this.routeFeatures[this.currentIndex].getGeometry();\n const currentCoordinate = route.getCoordinateAt(distance > 1 ? 2 - distance : distance);\n if (distance > 0) {\n const lastCoordinate = route.getCoordinateAt(distance - 0.0001);\n this.setRotation(lastCoordinate, currentCoordinate);\n } else {\n const nextCoordinate = route.getCoordinateAt(0.0000001);\n if (isEqual(currentCoordinate, nextCoordinate)) {\n if (this.currentIndex === this.routeFeatures.length - 1) {\n const lastRoute = this.routeFeatures[this.currentIndex - 1].getGeometry();\n const lastCoordinate = lastRoute.getCoordinateAt(1 - 0.0001);\n this.setRotation(lastCoordinate, currentCoordinate);\n } else {\n const nextRoute = this.routeFeatures[this.currentIndex + 1].getGeometry();\n const nextCoordinate = nextRoute.getCoordinateAt(0.0001);\n this.setRotation(currentCoordinate, nextCoordinate);\n }\n } else {\n this.setRotation(currentCoordinate, nextCoordinate);\n }\n }\n if (distance >= 1 && this.currentIndex >= this.routeFeatures.length - 1) {\n this.isPlayEnd = true;\n this.playEnd();\n return;\n }\n this.position.setCoordinates(currentCoordinate);\n\n if (this.showTrace) {\n const list = [];\n const getCoordinates = ({ startCoordinates, endCoordinates, lineCoordinates }) => {\n const start = TurfPoint(startCoordinates);\n const end = TurfPoint(endCoordinates);\n const line = TurfLineString(lineCoordinates);\n const sliced = lineSlice(start, end, line);\n return sliced.geometry.coordinates;\n };\n if (this.currentIndex === 0) {\n list.push(\n getCoordinates({\n startCoordinates: this.startMarker.getGeometry().getCoordinates(),\n endCoordinates: currentCoordinate,\n lineCoordinates: route.getCoordinates(),\n }),\n );\n } else {\n const features = this.routeFeatures.slice(0, this.currentIndex + 1);\n features.forEach((feature, index) => {\n const geometry = feature.getGeometry();\n let endCoordinates = currentCoordinate;\n if (index !== this.currentIndex) {\n endCoordinates = geometry.getLastCoordinate();\n }\n list.push(\n getCoordinates({\n startCoordinates: geometry.getFirstCoordinate(),\n endCoordinates,\n lineCoordinates: geometry.getCoordinates(),\n }),\n );\n });\n }\n list.forEach((coordinates, index) => {\n coordinates.forEach((coordinate, i) => {\n this.setPaintLinePath({ coordinate, init: i === 0, index });\n });\n });\n }\n return distance;\n }\n\n moveToIndex(index, dataIndex) {\n let process = 0;\n if (this.dataDistanceRatioArr[index][dataIndex] === 1) {\n process = this.distanceRatioArr[index];\n } else {\n process =\n index === 0\n ? this.dataDistanceRatioArr[index][dataIndex]\n : (this.distanceRatioArr[index] - this.distanceRatioArr[index - 1]) *\n this.dataDistanceRatioArr[index][dataIndex] +\n this.distanceRatioArr[index - 1];\n }\n this.currentIndex = index;\n this.changeProcess(process);\n this.onPlaying && this.onPlaying(process, index, dataIndex);\n }\n\n moveTo(process) {\n this.currentIndex = this.distanceRatioArr.findIndex(distance => distance >= process);\n const distance = this.changeProcess(process);\n // 计算当前进度的对应index\n const dataIndex = (this.dataDistanceRatioArr[this.currentIndex] || []).findIndex(\n (v, index, arr) => {\n if (index === arr.length - 1) {\n return true;\n }\n return v <= distance <= arr[index + 1];\n },\n );\n this.onPlaying && this.onPlaying(this._distance, this.currentIndex, dataIndex);\n }\n\n playEnd() {\n if (!this.repeatPlay) {\n this.stopAnimation();\n }\n this.isPlayEnd = true;\n if (this.showTrace) {\n this.lineDashFeatures.forEach(feature => {\n this.vectorLayer.getSource().removeFeature(feature);\n });\n this.paintLineFeatures.forEach(feature => {\n this.vectorLayer.getSource().removeFeature(feature);\n feature.setGeometry(null);\n });\n this.setRouteStyle(this.routeFeatures);\n }\n }\n\n setRotation(lastCoordinate, coordinate) {\n if (lastCoordinate && coordinate && this.enableRotation) {\n this.geoMarkerStyle.getImage().setRotation(getAngle(lastCoordinate, coordinate));\n }\n }\n\n // 计算当前路段跑的距离,计算公式:(当前跑的总距离 - 已跑路段的总距离) / 当前路段的百分比\n calculateDistance() {\n const currentRouteRatio =\n this.currentIndex > 0\n ? this.distanceRatioArr[this.currentIndex] -\n this.distanceRatioArr[this.currentIndex - 1]\n : this.distanceRatioArr[this.currentIndex];\n if (currentRouteRatio === 0) {\n return 1.001;\n }\n let distance =\n (this._distance -\n (this.currentIndex > 0 ? this.distanceRatioArr[this.currentIndex - 1] : 0)) /\n currentRouteRatio;\n return distance;\n }\n\n moveFeature(event) {\n const vectorContext = getVectorContext(event);\n const speed = Number(this.speed);\n const time = event.frameState.time;\n const elapsedTime = time - this._lastTime;\n this._distance = (this._distance + (speed * elapsedTime) / 1e6) % 2;\n let distance = this.calculateDistance();\n this._lastTime = time;\n if (distance > 1) {\n this.currentIndex = this.currentIndex + 1;\n distance = 0;\n }\n if (this.currentIndex > this.routeFeatures.length - 1) {\n this.playEnd();\n if (this.repeatPlay) {\n this.currentIndex = this.routeFeatures.length - 1;\n } else {\n const currentCoordinate = this.endMarker.getGeometry().getCoordinates();\n this.position.setCoordinates(currentCoordinate);\n vectorContext.setStyle(this.geoMarkerStyle);\n vectorContext.drawGeometry(this.position);\n this.onPlayEnd && this.onPlayEnd();\n return;\n }\n }\n // 计算当前进度的对应index\n const dataIndex = (this.dataDistanceRatioArr[this.currentIndex] || []).findIndex(\n (v, index, arr) => {\n if (index === arr.length - 1) {\n return true;\n }\n return v <= distance <= arr[index + 1];\n },\n );\n const route = this.routeFeatures[this.currentIndex].getGeometry();\n const currentCoordinate = route.getCoordinateAt(distance > 1 ? 2 - distance : distance);\n this.position.setCoordinates(currentCoordinate);\n this.setRotation(this.lastCoordinate, currentCoordinate);\n this.lastCoordinate = currentCoordinate;\n if (this.autoView) {\n this.map.getView().fit(this.position, {\n padding: [100, 400, 100, 400],\n maxZoom: this.map.getView().getZoom(),\n duration: 0,\n });\n }\n\n vectorContext.setStyle(this.geoMarkerStyle);\n vectorContext.drawGeometry(this.position);\n const overlay = this.map.getOverlayById('geoMarker');\n if (overlay) {\n overlay.setPosition(this.position.getFlatCoordinates());\n }\n if (this.showTrace) {\n this.setPaintLinePath({\n coordinate: currentCoordinate,\n index: this.currentIndex,\n });\n }\n this.onPlaying &&\n this.onPlaying(this._distance > 1 ? 1 : this._distance, this.currentIndex, dataIndex);\n this.map.render();\n }\n\n setPaintLinePath({ coordinate, init, index }) {\n const paintLineFeature = this.paintLineFeatures[index];\n if (init) {\n paintLineFeature.setGeometry(null);\n }\n const geometry = paintLineFeature.getGeometry();\n if (geometry) {\n geometry.setCoordinates([[...geometry.getCoordinates()[0], coordinate]]);\n } else {\n let lineData = [[coordinate]];\n const route = new MultiLineString(lineData);\n\n paintLineFeature.setGeometry(route);\n }\n if (!this.vectorLayer.getSource().hasFeature(paintLineFeature)) {\n this.vectorLayer.getSource().addFeature(paintLineFeature);\n }\n }\n\n addTrace() {\n if (this._distance === 0) {\n const lineDashFeatures = [];\n const paintLineFeatures = [];\n this.routeFeatures.forEach(feature => {\n const lineDashFeature = feature.clone();\n const paintLineFeature = feature.clone();\n paintLineFeature.setGeometry(null);\n lineDashFeature.setStyle(\n this.getDefaultRouteStyle(feature, {\n lineDash: [15],\n }),\n );\n lineDashFeatures.push(lineDashFeature);\n paintLineFeatures.push(paintLineFeature);\n });\n this.lineDashFeatures = lineDashFeatures;\n this.paintLineFeatures = paintLineFeatures;\n }\n }\n\n startAnimation() {\n if (!this.repeatPlay && this.isPlayEnd) {\n // 当不重复播放,且当前在终点时,从起点开始播放\n this.cancel();\n this.geoMarkerStyle.getImage().setRotation(0);\n }\n this.isPlayEnd = false;\n this._animating = true;\n this._lastTime = Date.now();\n this._on_event = this.vectorLayer.on('postrender', this.moveFeature.bind(this));\n this.geoMarker.setGeometry(null);\n if (this.showTrace) {\n this.lineDashFeatures.forEach(feature => {\n if (!this.vectorLayer.getSource().hasFeature(feature)) {\n this.vectorLayer.getSource().addFeature(feature);\n }\n });\n this.routeFeatures.forEach(feature => {\n feature.setStyle(new Style({}));\n });\n }\n }\n\n stopAnimation() {\n this._animating = false;\n this.geoMarker.setGeometry(this.position);\n if (this._on_event) {\n this.vectorLayer.un('postrender', this._on_event.listener);\n }\n }\n\n cancel() {\n this.geoMarkerStyle.getImage().setRotation(0);\n this._distance = 0;\n this.currentIndex = 0;\n const currentCoordinate = this.route.getCoordinateAt(0);\n this.position.setCoordinates(currentCoordinate);\n this.playEnd();\n this.onPlaying && this.onPlaying(this._distance, this.currentIndex, 0);\n }\n\n destroy() {\n if (this._animating) {\n this.stopAnimation();\n }\n\n this.map.removeLayer(this.vectorLayer);\n this.map.clearHighlightFeature();\n this.routeFeatures = null;\n this.position = null;\n this.vectorLayer = null;\n this.geoMarker = null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VtxModal.js","names":["_react","_interopRequireDefault","require","_modal","_icons","e","__esModule","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","_classCallCheck","a","n","TypeError","_defineProperties","key","_createClass","prototype","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","String","Number","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","_assertThisInitialized","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","_setPrototypeOf","styles","normal","maxClass","title","title_name","close","maximizeIcon","VtxModal","_React$Component","props","_this","classId","Date","getTime","Math","random","isInit","isCreate","visible","state","maximizable","maximizeClass","init_x","init_y","x_move","y_move","documentMouseMove","documentMouseUp","startDrag","componentWillReceiveProps","nextProps","setState","componentDidUpdate","isNotMoving","timer","setTimeout","modalHead","document","getElementsByClassName","style","cursor","onmousedown","error","console","componentWillUnmount","clearTimeout","_this2","preventDefault","onmouseup","onmousemove","clientX","clientY","render","_this$props","_this$props$closable","closable","_this$props$maximize","maximize","_this$props$wrapClass","wrapClassName","_this$props$title","_this$state","concat","transformStyle","transform","renderTitle","createElement","className","paddingRight","onClick","window","onModalResize","ShrinkOutlined","ArrowsAltOutlined","onCancel","CloseOutlined","bodyStyle","maxHeight","innerHeight","maskClosable","width","children","React","Component","info","Modal","success","warning","confirm","_default","exports"],"sources":["search-map/VtxModal.js"],"sourcesContent":["import React from 'react';\r\nimport Modal from 'antd/lib/modal';\r\nimport { CloseOutlined, ArrowsAltOutlined, ShrinkOutlined } from '@ant-design/icons';\r\n\r\nconst styles = {\r\n normal: 'vtx-ui-modal-normal',\r\n maxClass: 'vtx-ui-modal-maxClass',\r\n title: 'vtx-ui-modal-title',\r\n title_name: 'vtx-ui-modal-title_name',\r\n close: 'vtx-ui-modal-close',\r\n maximizeIcon: 'vtx-ui-modal-maximizeIcon',\r\n};\r\n\r\nclass VtxModal extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.classId = new Date().getTime() + Math.random();\r\n this.isInit = false;\r\n this.isCreate = props.visible;\r\n this.state = {\r\n maximizable: false,\r\n maximizeClass: '',\r\n init_x: 0,\r\n init_y: 0,\r\n x_move: 0,\r\n y_move: 0,\r\n documentMouseMove: null,\r\n documentMouseUp: null,\r\n };\r\n this.startDrag = this.startDrag.bind(this);\r\n }\r\n componentWillReceiveProps(nextProps) {\r\n if (nextProps.visible && !this.isCreate) {\r\n this.isCreate = true;\r\n }\r\n if (!this.props.visible && nextProps.visible) {\r\n this.setState({\r\n x_move: 0,\r\n y_move: 0,\r\n });\r\n }\r\n }\r\n componentDidUpdate() {\r\n const t = this;\r\n if (!this.props.isNotMoving) {\r\n if (this.isCreate && !this.isInit) {\r\n this.isInit = true;\r\n try {\r\n this.timer = setTimeout(() => {\r\n let modalHead = document\r\n .getElementsByClassName(t.classId)[0]\r\n .getElementsByClassName('ant-modal-header')[0];\r\n modalHead.style.cursor = 'move';\r\n modalHead.onmousedown = t.startDrag;\r\n }, 200);\r\n } catch (error) {\r\n console.error('VtxModal拖动功能异常,未获取到头部dom对象!');\r\n }\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n }\r\n startDrag(e) {\r\n e.preventDefault();\r\n if (!this.state.maximizable) {\r\n this.setState({\r\n documentMouseUp: document.onmouseup,\r\n documentMouseMove: document.onmousemove,\r\n init_x: e.clientX - this.state.x_move,\r\n init_y: e.clientY - this.state.y_move,\r\n });\r\n document.onmousemove = e => {\r\n this.setState({\r\n x_move: e.clientX - this.state.init_x,\r\n y_move: e.clientY - this.state.init_y,\r\n });\r\n };\r\n document.onmouseup = e => {\r\n document.onmousemove = this.state.documentMouseMove;\r\n document.onmouseup = this.state.documentMouseUp;\r\n };\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n }\r\n render() {\r\n const t = this;\r\n let { closable = true, maximize = true, wrapClassName = '', title = '' } = this.props;\r\n const { maximizable, maximizeClass } = this.state;\r\n wrapClassName = `${styles.normal} ${wrapClassName} ${maximizeClass} ${this.classId}`;\r\n const transformStyle = {\r\n transform: `translate(${this.state.x_move}px,${this.state.y_move}px)`,\r\n };\r\n title = (function renderTitle() {\r\n return (\r\n <div className={styles.title} style={{ paddingRight: closable ? '32px' : '0px' }}>\r\n <div className={styles.title_name}>{title}</div>\r\n {maximize ? (\r\n <div className={styles.maximizeIcon}>\r\n <p\r\n onClick={() => {\r\n let maximizeClass = '';\r\n if (!maximizable) {\r\n maximizeClass = styles.maxClass;\r\n }\r\n t.setState(\r\n {\r\n maximizable: !maximizable,\r\n maximizeClass,\r\n },\r\n () => {\r\n if (t.timer) {\r\n clearTimeout(t.timer);\r\n }\r\n t.timer = setTimeout(() => {\r\n if (\r\n window.onModalResize &&\r\n typeof window.onModalResize == 'function'\r\n ) {\r\n window.onModalResize();\r\n }\r\n }, 100);\r\n },\r\n );\r\n }}\r\n >\r\n {maximizable ? <ShrinkOutlined /> : <ArrowsAltOutlined />}\r\n </p>\r\n </div>\r\n ) : null}\r\n {closable ? (\r\n <div className={styles.close}>\r\n <p onClick={t.props.onCancel}>\r\n <CloseOutlined />\r\n </p>\r\n </div>\r\n ) : null}\r\n </div>\r\n );\r\n })();\r\n let bodyStyle = {\r\n ...this.props.bodyStyle,\r\n };\r\n if (!maximizable) {\r\n bodyStyle = {\r\n maxHeight: `${window.innerHeight * 0.7}px`,\r\n ...bodyStyle,\r\n };\r\n }\r\n const props = {\r\n closable,\r\n maskClosable: false,\r\n width: 700,\r\n ...this.props,\r\n closable: false,\r\n title: title,\r\n wrapClassName: wrapClassName,\r\n bodyStyle: bodyStyle,\r\n style: {\r\n ...this.props.style,\r\n ...(maximizable ? {} : transformStyle),\r\n },\r\n };\r\n return this.props.visible ? <Modal {...props}>{this.props.children}</Modal> : null;\r\n }\r\n}\r\nVtxModal.info = Modal.info;\r\nVtxModal.success = Modal.success;\r\nVtxModal.error = Modal.error;\r\nVtxModal.warning = Modal.warning;\r\nVtxModal.confirm = Modal.confirm;\r\n\r\nexport default VtxModal;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"VtxModal.js","names":["_react","_interopRequireDefault","require","_modal","_icons","e","__esModule","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","_classCallCheck","a","n","TypeError","_defineProperties","key","_createClass","prototype","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","String","Number","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","_assertThisInitialized","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","_setPrototypeOf","styles","normal","maxClass","title","title_name","close","maximizeIcon","VtxModal","_React$Component","props","_this","classId","Date","getTime","Math","random","isInit","isCreate","visible","state","maximizable","maximizeClass","init_x","init_y","x_move","y_move","documentMouseMove","documentMouseUp","startDrag","componentWillReceiveProps","nextProps","setState","componentDidUpdate","isNotMoving","timer","setTimeout","modalHead","document","getElementsByClassName","style","cursor","onmousedown","error","console","componentWillUnmount","clearTimeout","_this2","preventDefault","onmouseup","onmousemove","clientX","clientY","render","_this$props","_this$props$closable","closable","_this$props$maximize","maximize","_this$props$wrapClass","wrapClassName","_this$props$title","_this$state","concat","transformStyle","transform","renderTitle","createElement","className","paddingRight","onClick","window","onModalResize","ShrinkOutlined","ArrowsAltOutlined","onCancel","CloseOutlined","bodyStyle","maxHeight","innerHeight","maskClosable","width","children","React","Component","info","Modal","success","warning","confirm","_default","exports"],"sources":["search-map/VtxModal.js"],"sourcesContent":["import React from 'react';\r\nimport Modal from 'antd/lib/modal';\r\nimport { CloseOutlined, ArrowsAltOutlined, ShrinkOutlined } from '@ant-design/icons';\r\n\r\nconst styles = {\r\n normal: 'vtx-ui-modal-normal',\r\n maxClass: 'vtx-ui-modal-maxClass',\r\n title: 'vtx-ui-modal-title',\r\n title_name: 'vtx-ui-modal-title_name',\r\n close: 'vtx-ui-modal-close',\r\n maximizeIcon: 'vtx-ui-modal-maximizeIcon',\r\n};\r\n\r\nclass VtxModal extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.classId = new Date().getTime() + Math.random();\r\n this.isInit = false;\r\n this.isCreate = props.visible;\r\n this.state = {\r\n maximizable: false,\r\n maximizeClass: '',\r\n init_x: 0,\r\n init_y: 0,\r\n x_move: 0,\r\n y_move: 0,\r\n documentMouseMove: null,\r\n documentMouseUp: null,\r\n };\r\n this.startDrag = this.startDrag.bind(this);\r\n }\r\n componentWillReceiveProps(nextProps) {\r\n if (nextProps.visible && !this.isCreate) {\r\n this.isCreate = true;\r\n }\r\n if (!this.props.visible && nextProps.visible) {\r\n this.setState({\r\n x_move: 0,\r\n y_move: 0,\r\n });\r\n }\r\n }\r\n componentDidUpdate() {\r\n const t = this;\r\n if (!this.props.isNotMoving) {\r\n if (this.isCreate && !this.isInit) {\r\n this.isInit = true;\r\n try {\r\n this.timer = setTimeout(() => {\r\n let modalHead = document\r\n .getElementsByClassName(t.classId)[0]\r\n .getElementsByClassName('ant-modal-header')[0];\r\n modalHead.style.cursor = 'move';\r\n modalHead.onmousedown = t.startDrag;\r\n }, 200);\r\n } catch (error) {\r\n console.error('VtxModal拖动功能异常,未获取到头部dom对象!');\r\n }\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n }\r\n startDrag(e) {\r\n e.preventDefault();\r\n if (!this.state.maximizable) {\r\n this.setState({\r\n documentMouseUp: document.onmouseup,\r\n documentMouseMove: document.onmousemove,\r\n init_x: e.clientX - this.state.x_move,\r\n init_y: e.clientY - this.state.y_move,\r\n });\r\n document.onmousemove = e => {\r\n this.setState({\r\n x_move: e.clientX - this.state.init_x,\r\n y_move: e.clientY - this.state.init_y,\r\n });\r\n };\r\n document.onmouseup = e => {\r\n document.onmousemove = this.state.documentMouseMove;\r\n document.onmouseup = this.state.documentMouseUp;\r\n };\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (this.timer) {\r\n clearTimeout(this.timer);\r\n }\r\n }\r\n render() {\r\n const t = this;\r\n let { closable = true, maximize = true, wrapClassName = '', title = '' } = this.props;\r\n const { maximizable, maximizeClass } = this.state;\r\n wrapClassName = `${styles.normal} ${wrapClassName} ${maximizeClass} ${this.classId}`;\r\n const transformStyle = {\r\n transform: `translate(${this.state.x_move}px,${this.state.y_move}px)`,\r\n };\r\n title = (function renderTitle() {\r\n return (\r\n <div className={styles.title} style={{ paddingRight: closable ? '32px' : '0px' }}>\r\n <div className={styles.title_name}>{title}</div>\r\n {maximize ? (\r\n <div className={styles.maximizeIcon}>\r\n <p\r\n onClick={() => {\r\n let maximizeClass = '';\r\n if (!maximizable) {\r\n maximizeClass = styles.maxClass;\r\n }\r\n t.setState(\r\n {\r\n maximizable: !maximizable,\r\n maximizeClass,\r\n },\r\n () => {\r\n if (t.timer) {\r\n clearTimeout(t.timer);\r\n }\r\n t.timer = setTimeout(() => {\r\n if (\r\n window.onModalResize &&\r\n typeof window.onModalResize == 'function'\r\n ) {\r\n window.onModalResize();\r\n }\r\n }, 100);\r\n },\r\n );\r\n }}\r\n >\r\n {maximizable ? <ShrinkOutlined /> : <ArrowsAltOutlined />}\r\n </p>\r\n </div>\r\n ) : null}\r\n {closable ? (\r\n <div className={styles.close}>\r\n <p onClick={t.props.onCancel}>\r\n <CloseOutlined />\r\n </p>\r\n </div>\r\n ) : null}\r\n </div>\r\n );\r\n })();\r\n let bodyStyle = {\r\n ...this.props.bodyStyle,\r\n };\r\n if (!maximizable) {\r\n bodyStyle = {\r\n maxHeight: `${window.innerHeight * 0.7}px`,\r\n ...bodyStyle,\r\n };\r\n }\r\n const props = {\r\n maskClosable: false,\r\n width: 700,\r\n ...this.props,\r\n closable: false,\r\n title: title,\r\n wrapClassName: wrapClassName,\r\n bodyStyle: bodyStyle,\r\n style: {\r\n ...this.props.style,\r\n ...(maximizable ? {} : transformStyle),\r\n },\r\n };\r\n return this.props.visible ? <Modal {...props}>{this.props.children}</Modal> : null;\r\n }\r\n}\r\nVtxModal.info = Modal.info;\r\nVtxModal.success = Modal.success;\r\nVtxModal.error = Modal.error;\r\nVtxModal.warning = Modal.warning;\r\nVtxModal.confirm = Modal.confirm;\r\n\r\nexport default VtxModal;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,8 +21,8 @@ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o =
|
|
|
21
21
|
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
22
22
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
23
23
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
24
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
|
|
25
|
-
* 图层高亮操作
|
|
24
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
|
|
25
|
+
* 图层高亮操作
|
|
26
26
|
*/
|
|
27
27
|
var Highlight = exports["default"] = /*#__PURE__*/function () {
|
|
28
28
|
function Highlight(_options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HighLayer.js","names":["_antd","require","_source","_layer","_style","_Fill","_interopRequireDefault","_ol","_FeatureLayer","_lodash","e","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","a","n","TypeError","_defineProperties","configurable","writable","_toPropertyKey","key","_createClass","value","i","_toPrimitive","toPrimitive","call","String","Number","Highlight","exports","options","_this","feature","clearSelectFeature","clearFeatures","isEmpty","Array","isArray","map","v","addFeature","autoView","fitView","_feature","flag","clone","isHighLight","geometry","getGeometry","type","getType","addPointHighlight","layer","getLayerByFeature","FeatureLayer","markerLayer","_options","cluster","setZIndex","Infinity","getSource","setStyle","getStyleByMode","source","_id","get","point_overlay","getOverlayById","ele","document","createElement","className","Overlay","id","element","positioning","stopEvent","pointOverlay","addOverlay","setPosition","getFlatCoordinates","field","fieldName","filterField","newFeature","find","selectFeature","getView","setSelectFeature","message","warning","highStyle","Style","image","CircleStyle","radius","fill","Fill","color","stroke","Stroke","width","opacity","VectorSource","VectorLayer","zIndex","style","parmas","addLayer","clear","removeOverlay","destroy","removeLayer"],"sources":["tools/Utils/HighLayer.js"],"sourcesContent":["/**\r\n * 图层高亮操作\r\n */\r\nimport { message } from 'antd';\r\nimport { Vector as VectorSource } from 'ol/source';\r\nimport { Vector as VectorLayer } from 'ol/layer';\r\nimport { Style, Stroke, Circle as CircleStyle } from 'ol/style';\r\nimport Fill from '../../renderer/Fill';\r\nimport { Overlay } from 'ol';\r\nimport FeatureLayer from \"../../feature-layer/FeatureLayer\";\r\nimport { isEmpty } from 'lodash'\r\n\r\nexport default class Highlight {\r\n constructor(options) {\r\n this.highStyle = new Style({\r\n // 高亮样式\r\n image: new CircleStyle({\r\n radius: 7,\r\n fill: new Fill({\r\n color: '#ff4d4f',\r\n }),\r\n stroke: new Stroke({\r\n color: '#FFFFFF',\r\n width: 2,\r\n }),\r\n }),\r\n fill: new Fill({\r\n color: '#ff4d4f',\r\n opacity: 0.5,\r\n }),\r\n stroke: new Stroke({\r\n color: '#ff4d4f',\r\n width: 5,\r\n }),\r\n });\r\n this.map = options.map;\r\n this.feature = options.feature;\r\n this.selectFeature = null;\r\n this.pointOverlay = null;\r\n\r\n this.source = new VectorSource();\r\n this.layer = new VectorLayer({\r\n source: this.source,\r\n zIndex: 999,\r\n style: this.highStyle,\r\n ...(options.parmas || {}),\r\n });\r\n this.layer.key = 'Highlight';\r\n this.map.addLayer(this.layer);\r\n\r\n this.markerLayer = new FeatureLayer({\r\n key: 'Highlight',\r\n zIndex: Infinity,\r\n })\r\n this.map.addLayer(this.markerLayer);\r\n\r\n }\r\n\r\n // 高亮图层增加feature\r\n addHighlightFeature = (feature, options) => {\r\n this.feature = feature;\r\n this.clearSelectFeature();\r\n this.clearFeatures();\r\n\r\n if (isEmpty(feature)) return;\r\n // 数组高亮的话, 就是默认的红色高亮\r\n if (Array.isArray(feature)) {\r\n feature.map(v => {\r\n this.addFeature(v, true);\r\n });\r\n\r\n } else {\r\n this.addFeature(feature);\r\n }\r\n\r\n if (!options || options?.autoView) {\r\n this.map.fitView(feature, options || {});\r\n }\r\n\r\n // this.map.getView().fit(feature.values_.geometry.getExtent(), {\r\n // maxZoom: 18,\r\n // duration: 500,\r\n // });\r\n };\r\n\r\n addFeature = (_feature, flag) => {\r\n const feature = _feature.clone();\r\n feature.isHighLight = true;\r\n let geometry = feature?.getGeometry();\r\n let type = geometry?.getType();\r\n if (type === 'Point' && geometry && !flag) {\r\n this.addPointHighlight(feature);\r\n\r\n const layer = this.map.getLayerByFeature(_feature);\r\n if (layer && layer instanceof FeatureLayer) {\r\n this.markerLayer._options = layer._options;\r\n for (let i in layer._options) {\r\n this.markerLayer[i] = layer._options[i];\r\n }\r\n feature.key = layer.key;\r\n this.markerLayer.cluster = false;\r\n this.markerLayer.key = 'Highlight';\r\n this.markerLayer.setZIndex(Infinity);\r\n\r\n this.markerLayer.getSource().addFeature(feature);\r\n this.markerLayer.setStyle(this.markerLayer.getStyleByMode());\r\n }\r\n\r\n } else {\r\n this.source.addFeature(feature);\r\n }\r\n };\r\n\r\n // 点位高亮-扩散\r\n addPointHighlight = feature => {\r\n let _id = feature.get('id') || 'point_animation';\r\n this.clearFeatures();\r\n let point_overlay = this.map.getOverlayById(_id);\r\n\r\n if (feature) {\r\n let geometry = feature?.getGeometry();\r\n let type = geometry?.getType();\r\n if (type === 'Point' && geometry) {\r\n let ele = document.createElement('div');\r\n ele.className = 'ol-map-point_animation';\r\n\r\n if (!point_overlay) {\r\n point_overlay = new Overlay({\r\n id: _id,\r\n element: ele,\r\n positioning: 'center-center',\r\n stopEvent: true,\r\n className: 'ol-overlay_container-stop_event'\r\n });\r\n\r\n this.pointOverlay = point_overlay;\r\n }\r\n this.map.addOverlay(point_overlay);\r\n point_overlay.setPosition(geometry.getFlatCoordinates());\r\n }\r\n }\r\n };\r\n\r\n setCenter = (field, fieldName) => {\r\n let filterField = fieldName || 'code';\r\n this.clearSelectFeature();\r\n let newFeature;\r\n if (this.feature && Array.isArray(this.feature)) {\r\n newFeature = this.feature.find(v => {\r\n return v.get(filterField) === field;\r\n });\r\n } else if (this.feature && this.feature.get(filterField) === field) {\r\n newFeature = this.feature;\r\n }\r\n this.selectFeature = newFeature;\r\n if (newFeature) {\r\n newFeature.setStyle();\r\n this.map.getView(newFeature);\r\n\r\n this.setSelectFeature(newFeature);\r\n } else {\r\n message.warning('地图上未查询到该数据,请检查是否配置坐标信息!');\r\n }\r\n };\r\n\r\n clearSelectFeature() {\r\n if (this.selectFeature) {\r\n this.selectFeature.setStyle();\r\n this.selectFeature = null;\r\n }\r\n }\r\n\r\n clearFeatures() {\r\n this.markerLayer && this.markerLayer.getSource().clear();\r\n this.source && this.source.clear();\r\n this.pointOverlay && this.map.removeOverlay(this.pointOverlay);\r\n }\r\n\r\n setSelectFeature(feature) {\r\n if (feature) {\r\n this.selectFeature = feature;\r\n this.selectFeature.setStyle(\r\n new Style({\r\n image: new CircleStyle({\r\n radius: 7,\r\n fill: new Fill({\r\n color: '#2491fc',\r\n }),\r\n stroke: new Stroke({\r\n color: '#FFFFFF',\r\n width: 2,\r\n }),\r\n }),\r\n fill: new Fill({\r\n color: '#2491fc',\r\n }),\r\n stroke: new Stroke({\r\n color: '#2491fc',\r\n width: 4,\r\n }),\r\n }),\r\n );\r\n }\r\n }\r\n\r\n destroy() {\r\n this.map.removeLayer(this.layer);\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"HighLayer.js","names":["_antd","require","_source","_layer","_style","_Fill","_interopRequireDefault","_ol","_FeatureLayer","_lodash","e","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","a","n","TypeError","_defineProperties","configurable","writable","_toPropertyKey","key","_createClass","value","i","_toPrimitive","toPrimitive","call","String","Number","Highlight","exports","options","_this","feature","clearSelectFeature","clearFeatures","isEmpty","Array","isArray","map","v","addFeature","autoView","fitView","_feature","flag","clone","isHighLight","geometry","getGeometry","type","getType","addPointHighlight","layer","getLayerByFeature","FeatureLayer","markerLayer","_options","cluster","setZIndex","Infinity","getSource","setStyle","getStyleByMode","source","_id","get","point_overlay","getOverlayById","ele","document","createElement","className","Overlay","id","element","positioning","stopEvent","pointOverlay","addOverlay","setPosition","getFlatCoordinates","field","fieldName","filterField","newFeature","find","selectFeature","getView","setSelectFeature","message","warning","highStyle","Style","image","CircleStyle","radius","fill","Fill","color","stroke","Stroke","width","opacity","VectorSource","VectorLayer","zIndex","style","parmas","addLayer","clear","removeOverlay","destroy","removeLayer"],"sources":["tools/Utils/HighLayer.js"],"sourcesContent":["/**\n * 图层高亮操作\n */\nimport { message } from 'antd';\nimport { Vector as VectorSource } from 'ol/source';\nimport { Vector as VectorLayer } from 'ol/layer';\nimport { Style, Stroke, Circle as CircleStyle } from 'ol/style';\nimport Fill from '../../renderer/Fill';\nimport { Overlay } from 'ol';\nimport FeatureLayer from '../../feature-layer/FeatureLayer';\nimport { isEmpty } from 'lodash';\n\nexport default class Highlight {\n constructor(options) {\n this.highStyle = new Style({\n // 高亮样式\n image: new CircleStyle({\n radius: 7,\n fill: new Fill({\n color: '#ff4d4f',\n }),\n stroke: new Stroke({\n color: '#FFFFFF',\n width: 2,\n }),\n }),\n fill: new Fill({\n color: '#ff4d4f',\n opacity: 0.5,\n }),\n stroke: new Stroke({\n color: '#ff4d4f',\n width: 5,\n }),\n });\n this.map = options.map;\n this.feature = options.feature;\n this.selectFeature = null;\n this.pointOverlay = null;\n\n this.source = new VectorSource();\n this.layer = new VectorLayer({\n source: this.source,\n zIndex: 999,\n style: this.highStyle,\n ...(options.parmas || {}),\n });\n this.layer.key = 'Highlight';\n this.map.addLayer(this.layer);\n\n this.markerLayer = new FeatureLayer({\n key: 'Highlight',\n zIndex: Infinity,\n });\n this.map.addLayer(this.markerLayer);\n }\n\n // 高亮图层增加feature\n addHighlightFeature = (feature, options) => {\n this.feature = feature;\n this.clearSelectFeature();\n this.clearFeatures();\n\n if (isEmpty(feature)) return;\n // 数组高亮的话, 就是默认的红色高亮\n if (Array.isArray(feature)) {\n feature.map(v => {\n this.addFeature(v, true);\n });\n } else {\n this.addFeature(feature);\n }\n\n if (!options || options?.autoView) {\n this.map.fitView(feature, options || {});\n }\n\n // this.map.getView().fit(feature.values_.geometry.getExtent(), {\n // maxZoom: 18,\n // duration: 500,\n // });\n };\n\n addFeature = (_feature, flag) => {\n const feature = _feature.clone();\n feature.isHighLight = true;\n let geometry = feature?.getGeometry();\n let type = geometry?.getType();\n if (type === 'Point' && geometry && !flag) {\n this.addPointHighlight(feature);\n\n const layer = this.map.getLayerByFeature(_feature);\n if (layer && layer instanceof FeatureLayer) {\n this.markerLayer._options = layer._options;\n for (let i in layer._options) {\n this.markerLayer[i] = layer._options[i];\n }\n feature.key = layer.key;\n this.markerLayer.cluster = false;\n this.markerLayer.key = 'Highlight';\n this.markerLayer.setZIndex(Infinity);\n\n this.markerLayer.getSource().addFeature(feature);\n this.markerLayer.setStyle(this.markerLayer.getStyleByMode());\n }\n } else {\n this.source.addFeature(feature);\n }\n };\n\n // 点位高亮-扩散\n addPointHighlight = feature => {\n let _id = feature.get('id') || 'point_animation';\n this.clearFeatures();\n let point_overlay = this.map.getOverlayById(_id);\n\n if (feature) {\n let geometry = feature?.getGeometry();\n let type = geometry?.getType();\n if (type === 'Point' && geometry) {\n let ele = document.createElement('div');\n ele.className = 'ol-map-point_animation';\n\n if (!point_overlay) {\n point_overlay = new Overlay({\n id: _id,\n element: ele,\n positioning: 'center-center',\n stopEvent: true,\n className: 'ol-overlay_container-stop_event',\n });\n\n this.pointOverlay = point_overlay;\n }\n this.map.addOverlay(point_overlay);\n point_overlay.setPosition(geometry.getFlatCoordinates());\n }\n }\n };\n\n setCenter = (field, fieldName) => {\n let filterField = fieldName || 'code';\n this.clearSelectFeature();\n let newFeature;\n if (this.feature && Array.isArray(this.feature)) {\n newFeature = this.feature.find(v => {\n return v.get(filterField) === field;\n });\n } else if (this.feature && this.feature.get(filterField) === field) {\n newFeature = this.feature;\n }\n this.selectFeature = newFeature;\n if (newFeature) {\n newFeature.setStyle();\n this.map.getView(newFeature);\n\n this.setSelectFeature(newFeature);\n } else {\n message.warning('地图上未查询到该数据,请检查是否配置坐标信息!');\n }\n };\n\n clearSelectFeature() {\n if (this.selectFeature) {\n this.selectFeature.setStyle();\n this.selectFeature = null;\n }\n }\n\n clearFeatures() {\n this.markerLayer && this.markerLayer.getSource().clear();\n this.source && this.source.clear();\n this.pointOverlay && this.map.removeOverlay(this.pointOverlay);\n }\n\n setSelectFeature(feature) {\n if (feature) {\n this.selectFeature = feature;\n this.selectFeature.setStyle(\n new Style({\n image: new CircleStyle({\n radius: 7,\n fill: new Fill({\n color: '#2491fc',\n }),\n stroke: new Stroke({\n color: '#FFFFFF',\n width: 2,\n }),\n }),\n fill: new Fill({\n color: '#2491fc',\n }),\n stroke: new Stroke({\n color: '#2491fc',\n width: 4,\n }),\n }),\n );\n }\n }\n\n destroy() {\n this.map.removeLayer(this.layer);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|