zbcx_ckyc 1.0.0

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.
Files changed (249) hide show
  1. package/README.md +3 -0
  2. package/package.json +90 -0
  3. package/src/plugins/app/com/CesiumTool.js +730 -0
  4. package/src/plugins/app/com/MapMethods.js +355 -0
  5. package/src/plugins/app/com/MapTool.vue +772 -0
  6. package/src/plugins/app/com/MenuRouter.vue +157 -0
  7. package/src/plugins/app/com/ParamsDes.vue +35 -0
  8. package/src/plugins/app/com/SelCoorSys.vue +235 -0
  9. package/src/plugins/app/com/WebProj4.js +32 -0
  10. package/src/plugins/app/com/measure.js +127 -0
  11. package/src/plugins/app/com/yx.js +238 -0
  12. package/src/plugins/app/modelmanagement/D3DrawGraph.js +708 -0
  13. package/src/plugins/app/modelmanagement/MineralGo.vue +241 -0
  14. package/src/plugins/app/modelmanagement/MineralModel.vue +1203 -0
  15. package/src/plugins/app/modelmanagement/ModelCloudmap.vue +69 -0
  16. package/src/plugins/app/modelmanagement/ModelMst.vue +60 -0
  17. package/src/plugins/app/modelmanagement/ModelSy.vue +173 -0
  18. package/src/plugins/app/modelmanagement/ModelTp.vue +51 -0
  19. package/src/plugins/app/modelmanagement/ModelUpload.vue +774 -0
  20. package/src/plugins/app/znycpjxt/Api.js +714 -0
  21. package/src/plugins/app/znycpjxt/Bf/AttFactory.js +25 -0
  22. package/src/plugins/app/znycpjxt/Bf/IAnomalyhandle.js +102 -0
  23. package/src/plugins/app/znycpjxt/Bf/IComposeanomaly.js +140 -0
  24. package/src/plugins/app/znycpjxt/Bf/IContinueanaly.js +138 -0
  25. package/src/plugins/app/znycpjxt/Bf/IContrastanaly.js +138 -0
  26. package/src/plugins/app/znycpjxt/Bf/ICustomNode.js +145 -0
  27. package/src/plugins/app/znycpjxt/Bf/IDerivanaly.js +139 -0
  28. package/src/plugins/app/znycpjxt/Bf/IFilterananly.js +141 -0
  29. package/src/plugins/app/znycpjxt/Bf/IMeananaly.js +137 -0
  30. package/src/plugins/app/znycpjxt/Bf/IModelNodeBase.js +135 -0
  31. package/src/plugins/app/znycpjxt/Bf/IMoveaverage.js +135 -0
  32. package/src/plugins/app/znycpjxt/Bf/IReducepole.js +141 -0
  33. package/src/plugins/app/znycpjxt/Bf/ISmoothanaly.js +135 -0
  34. package/src/plugins/app/znycpjxt/Bf/ITrendanaly.js +144 -0
  35. package/src/plugins/app/znycpjxt/Bf/IVector2grd.js +144 -0
  36. package/src/plugins/app/znycpjxt/Bf/IYcfj.js +84 -0
  37. package/src/plugins/app/znycpjxt/Bf/IYcxxjs.js +105 -0
  38. package/src/plugins/app/znycpjxt/Bf/IYgsbtq.js +112 -0
  39. package/src/plugins/app/znycpjxt/Bf/IYgtxrh.js +112 -0
  40. package/src/plugins/app/znycpjxt/Bf/Iinteranaly.js +135 -0
  41. package/src/plugins/app/znycpjxt/Bf/index.js +44 -0
  42. package/src/plugins/app/znycpjxt/Bf/input/InputData.js +21 -0
  43. package/src/plugins/app/znycpjxt/Bf/input/InputExcel.js +28 -0
  44. package/src/plugins/app/znycpjxt/Bf/input/InputKd.js +31 -0
  45. package/src/plugins/app/znycpjxt/Bqqd/Bqqd.vue +380 -0
  46. package/src/plugins/app/znycpjxt/Bqqd/BqqdMap.vue +1046 -0
  47. package/src/plugins/app/znycpjxt/Bqqd/SetOpacity.vue +101 -0
  48. package/src/plugins/app/znycpjxt/Bqqd/SjzxTree.vue +244 -0
  49. package/src/plugins/app/znycpjxt/Bqqd/YclsjjTree.vue +212 -0
  50. package/src/plugins/app/znycpjxt/Bqqd/api/DsjzxApi.js +37 -0
  51. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmx.vue +161 -0
  52. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/CfgGloalParams.vue +92 -0
  53. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/CfgNodeFlds.vue +102 -0
  54. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/CfgNodeParams.vue +277 -0
  55. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/Ckycmxgl.vue +303 -0
  56. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/SetLabelParam.vue +68 -0
  57. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/SetModelParam.vue +69 -0
  58. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Ckycmxtab.vue +107 -0
  59. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Dtzzylwl.vue +156 -0
  60. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Jjsjwl.vue +230 -0
  61. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Sjsl.vue +126 -0
  62. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zcxlj.vue +128 -0
  63. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zjq.vue +123 -0
  64. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zstp.vue +271 -0
  65. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zzylwl.vue +149 -0
  66. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/coms/ParamsData.vue +323 -0
  67. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/coms/ParamsDataNew.vue +336 -0
  68. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/coms/QqtEcharts.vue +137 -0
  69. package/src/plugins/app/znycpjxt/Ckycmx/Ckycrwgl/Ckycrwgl.vue +290 -0
  70. package/src/plugins/app/znycpjxt/CusTools/CodeApi.js +83 -0
  71. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/CodeEditor.md +36 -0
  72. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/CodeEditor.vue +227 -0
  73. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/PlugCodeEditor.vue +78 -0
  74. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/demo/basic.png +0 -0
  75. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/demo/basic.vue +27 -0
  76. package/src/plugins/app/znycpjxt/CusTools/DmbjForm.vue +76 -0
  77. package/src/plugins/app/znycpjxt/CusTools/DmfbForm.vue +351 -0
  78. package/src/plugins/app/znycpjxt/CusTools/GjForm.vue +206 -0
  79. package/src/plugins/app/znycpjxt/CusTools/Gjbjyfb.vue +200 -0
  80. package/src/plugins/app/znycpjxt/CusTools/ParamSelect.vue +222 -0
  81. package/src/plugins/app/znycpjxt/CusTools/ParamSelect2.vue +204 -0
  82. package/src/plugins/app/znycpjxt/CusTools/Zngjj.vue +105 -0
  83. package/src/plugins/app/znycpjxt/DataAnlyModel/DataAnlyModel.vue +134 -0
  84. package/src/plugins/app/znycpjxt/DataAnlyModel/Hgfx/HgfxEcharts.vue +98 -0
  85. package/src/plugins/app/znycpjxt/DataAnlyModel/Hgfx/HgfxTab.vue +73 -0
  86. package/src/plugins/app/znycpjxt/DataAnlyModel/Hgfx.vue +101 -0
  87. package/src/plugins/app/znycpjxt/DataAnlyModel/Jctj/JctjjgTab.vue +70 -0
  88. package/src/plugins/app/znycpjxt/DataAnlyModel/Jctj/Plzft.vue +154 -0
  89. package/src/plugins/app/znycpjxt/DataAnlyModel/Jctj.vue +118 -0
  90. package/src/plugins/app/znycpjxt/DataAnlyModel/Jlfx/JlfxImg.vue +80 -0
  91. package/src/plugins/app/znycpjxt/DataAnlyModel/Jlfx.vue +91 -0
  92. package/src/plugins/app/znycpjxt/DataAnlyModel/PCAfx/PcaTab.vue +161 -0
  93. package/src/plugins/app/znycpjxt/DataAnlyModel/PCAfx.vue +101 -0
  94. package/src/plugins/app/znycpjxt/DataAnlyModel/Qqt/QqtEcharts.vue +202 -0
  95. package/src/plugins/app/znycpjxt/DataAnlyModel/Qqt.vue +88 -0
  96. package/src/plugins/app/znycpjxt/DataAnlyModel/Xgxfx/XgxfxImg.vue +80 -0
  97. package/src/plugins/app/znycpjxt/DataAnlyModel/Xgxfx.vue +96 -0
  98. package/src/plugins/app/znycpjxt/DatasetMan/CreateDataset.vue +296 -0
  99. package/src/plugins/app/znycpjxt/DatasetMan/DatasetMan.vue +141 -0
  100. package/src/plugins/app/znycpjxt/DatasetMan/PreData.js +91 -0
  101. package/src/plugins/app/znycpjxt/DatasetMan/PreData.vue +545 -0
  102. package/src/plugins/app/znycpjxt/DatasetMan/PreDataApi.js +101 -0
  103. package/src/plugins/app/znycpjxt/DatasetMan/SelData.vue +186 -0
  104. package/src/plugins/app/znycpjxt/DatasetMan/SjTree.vue +130 -0
  105. package/src/plugins/app/znycpjxt/DatasetMan/Sjj.vue +478 -0
  106. package/src/plugins/app/znycpjxt/DatasetMan/Yclsjj.vue +445 -0
  107. package/src/plugins/app/znycpjxt/DatasetMan/Yssjj.vue +389 -0
  108. package/src/plugins/app/znycpjxt/DocList/DocList.vue +496 -0
  109. package/src/plugins/app/znycpjxt/DocList/unit/DocItem.vue +137 -0
  110. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Dchj.vue +107 -0
  111. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/GeophysicalAnomaly.vue +115 -0
  112. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Jxyt.vue +98 -0
  113. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Lbjs.vue +127 -0
  114. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Pjcjs.vue +103 -0
  115. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Qdjs.vue +103 -0
  116. package/src/plugins/app/znycpjxt/ExceptHandlModel/ExceptHandlModel.vue +163 -0
  117. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Cdjs.vue +102 -0
  118. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Czfx.vue +163 -0
  119. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/GetFormData.vue +343 -0
  120. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Hdpj.vue +100 -0
  121. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Pjtd.vue +90 -0
  122. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Qsfx.vue +109 -0
  123. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/ResultOnlyData.vue +121 -0
  124. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/ResultTable.vue +231 -0
  125. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/UniversalComputing.vue +139 -0
  126. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Xgxsjs.vue +93 -0
  127. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Xxsjs.vue +90 -0
  128. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Ycfj.vue +116 -0
  129. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Yhcl.vue +100 -0
  130. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/AnomalsGard.vue +91 -0
  131. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/Dqhxycht.vue +113 -0
  132. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/GeocAnomalies.vue +99 -0
  133. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/JgTableList.vue +203 -0
  134. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/Lszcl.vue +110 -0
  135. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/Ycxxjs.vue +116 -0
  136. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/GeoAnomalyExtraction.vue +108 -0
  137. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/coms/AttWeight.vue +99 -0
  138. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/coms/Ckdctq.vue +98 -0
  139. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/coms/LeftForm.vue +266 -0
  140. package/src/plugins/app/znycpjxt/ExceptHandlModel/ygyctq/Ygsbtq.vue +150 -0
  141. package/src/plugins/app/znycpjxt/ExceptHandlModel/ygyctq/Ygtxrh.vue +107 -0
  142. package/src/plugins/app/znycpjxt/ExceptHandlModel/ygyctq/ygyctq.vue +98 -0
  143. package/src/plugins/app/znycpjxt/Index/DataCard.vue +45 -0
  144. package/src/plugins/app/znycpjxt/Index/Index.vue +123 -0
  145. package/src/plugins/app/znycpjxt/Rzgl/Rzgl.vue +156 -0
  146. package/src/plugins/app/znycpjxt/coms/CmapColor.vue +70 -0
  147. package/src/plugins/app/znycpjxt/coms/CustomFileView.vue +343 -0
  148. package/src/plugins/app/znycpjxt/coms/CustomForm.vue +220 -0
  149. package/src/plugins/app/znycpjxt/coms/GrdView.vue +355 -0
  150. package/src/plugins/app/znycpjxt/coms/LeftForm.vue +195 -0
  151. package/src/plugins/app/znycpjxt/coms/MakeData.js +472 -0
  152. package/src/plugins/app/znycpjxt/coms/PreView.js +55 -0
  153. package/src/plugins/app/znycpjxt/coms/RightContent.vue +71 -0
  154. package/src/plugins/app/znycpjxt/coms/TableEarth.vue +259 -0
  155. package/src/plugins/app/znycpjxt/intellPred/ModelList.vue +200 -0
  156. package/src/plugins/app/znycpjxt/intellPred/coms/D3DrawGraph.js +634 -0
  157. package/src/plugins/app/znycpjxt/intellPred/coms/MineralGo.vue +249 -0
  158. package/src/plugins/app/znycpjxt/intellPred/coms/ModelCard.vue +298 -0
  159. package/src/plugins/app/znycpjxt/intellPred/coms/ModelEdit.vue +292 -0
  160. package/src/plugins/app/znycpjxt/intellPred/coms/ModelSpecif.vue +46 -0
  161. package/src/plugins/app/znycpjxt/intellPred/intellPred.vue +71 -0
  162. package/src/plugins/bf/BfApi.js +92 -0
  163. package/src/plugins/bf/BfColAdd.vue +78 -0
  164. package/src/plugins/bf/BfColEdit.vue +68 -0
  165. package/src/plugins/bf/BfColFilter.vue +112 -0
  166. package/src/plugins/bf/BfDataGroup.vue +80 -0
  167. package/src/plugins/bf/BfDataPreview.vue +118 -0
  168. package/src/plugins/bf/BfDataStat.vue +81 -0
  169. package/src/plugins/bf/BfDuplicateDel.vue +82 -0
  170. package/src/plugins/bf/BfProcCall.vue +82 -0
  171. package/src/plugins/bf/BfRunHis.vue +289 -0
  172. package/src/plugins/bf/BfRunParams.vue +94 -0
  173. package/src/plugins/bf/BfSaveFlow.vue +186 -0
  174. package/src/plugins/bf/BfSelFlow.vue +123 -0
  175. package/src/plugins/bf/BfTabCombine.vue +127 -0
  176. package/src/plugins/bf/BfTabJoin.vue +108 -0
  177. package/src/plugins/bf/BfTabMerge.vue +68 -0
  178. package/src/plugins/bf/BfTabReader.vue +126 -0
  179. package/src/plugins/bf/BfValFormat.vue +68 -0
  180. package/src/plugins/bf/BfValNumber.vue +68 -0
  181. package/src/plugins/bf/BfValProc.vue +78 -0
  182. package/src/plugins/bf/BfValSort.vue +78 -0
  183. package/src/plugins/bf/BiFlow.vue +1177 -0
  184. package/src/plugins/bf/IBfPlug.js +205 -0
  185. package/src/plugins/bf/coms/ColAdd.vue +75 -0
  186. package/src/plugins/bf/coms/ColEdit.vue +52 -0
  187. package/src/plugins/bf/coms/ColList.vue +91 -0
  188. package/src/plugins/bf/coms/DataGroup.vue +90 -0
  189. package/src/plugins/bf/coms/DataStat.vue +67 -0
  190. package/src/plugins/bf/coms/EditTable.vue +161 -0
  191. package/src/plugins/bf/coms/NodeTree.vue +105 -0
  192. package/src/plugins/bf/coms/PlugCmd.vue +95 -0
  193. package/src/plugins/bf/coms/RunParams.vue +68 -0
  194. package/src/plugins/bf/coms/TabCombine.vue +60 -0
  195. package/src/plugins/bf/coms/TabJoin.vue +69 -0
  196. package/src/plugins/bf/coms/ValFormat.vue +53 -0
  197. package/src/plugins/bf/coms/ValProc.vue +77 -0
  198. package/src/plugins/bf/coms/ValSort.vue +89 -0
  199. package/src/plugins/bf/parts/Icon.vue +105 -0
  200. package/src/plugins/bf/parts/Rect.vue +98 -0
  201. package/src/plugins/bf/parts/index.js +11 -0
  202. package/src/plugins/cxMixin/IAttBase.js +78 -0
  203. package/src/plugins/cxMixin/IAttDlg.js +45 -0
  204. package/src/plugins/cxMixin/IAttProc.js +98 -0
  205. package/src/plugins/cxMixin/IComBase.js +42 -0
  206. package/src/plugins/cxMixin/IContextMenu.js +74 -0
  207. package/src/plugins/cxMixin/IDataAcce.js +1106 -0
  208. package/src/plugins/cxMixin/IDataList.js +775 -0
  209. package/src/plugins/cxMixin/IDataMan.js +1670 -0
  210. package/src/plugins/cxMixin/IDataMan2.js +2561 -0
  211. package/src/plugins/cxMixin/IDataProc.js +379 -0
  212. package/src/plugins/cxMixin/IDatagrid.js +234 -0
  213. package/src/plugins/cxMixin/IEditableDg.js +477 -0
  214. package/src/plugins/cxMixin/IExpBase.js +51 -0
  215. package/src/plugins/cxMixin/IFormBase.js +29 -0
  216. package/src/plugins/cxMixin/IGridBpm.js +732 -0
  217. package/src/plugins/cxMixin/IGridData.js +109 -0
  218. package/src/plugins/cxMixin/IOperMore.js +323 -0
  219. package/src/plugins/cxMixin/IPlugBase.js +341 -0
  220. package/src/plugins/cxMixin/ISendCode.js +86 -0
  221. package/src/plugins/cxMixin/ISinglePage.js +112 -0
  222. package/src/plugins/cxMixin/ITags.js +81 -0
  223. package/src/plugins/cxe/CxeMap.vue +61 -0
  224. package/src/plugins/home/HeadNav.vue +194 -0
  225. package/src/plugins/home/Home.vue +59 -0
  226. package/src/plugins/home/HomePage.vue +237 -0
  227. package/src/plugins/home/Login.vue +139 -0
  228. package/src/plugins/zbcxCesium/coms/GraDrawBarWgt.vue +176 -0
  229. package/src/plugins/zbcxCesium/coms/baseMapSwitch/BaseMap.scss +42 -0
  230. package/src/plugins/zbcxCesium/coms/baseMapSwitch/BaseMap.vue +59 -0
  231. package/src/plugins/zbcxCesium/coms/dataPreview/DataPreview.vue +526 -0
  232. package/src/plugins/zbcxCesium/coms/dataPreview/DataPreviewPlug.vue +79 -0
  233. package/src/plugins/zbcxCesium/coms/dataPreview/ReadShpFile.js +42 -0
  234. package/src/plugins/zbcxCesium/coms/legend/Legend.vue +78 -0
  235. package/src/plugins/zbcxCesium/coms/popup/dialog-left-bg.png +0 -0
  236. package/src/plugins/zbcxCesium/coms/popup/index.js +88 -0
  237. package/src/plugins/zbcxCesium/coms/popup/index.vue +93 -0
  238. package/src/plugins/zbcxCesium/pub/LoadGeojson.js +44 -0
  239. package/src/plugins/zbcxCesium/pub/LoadModel.js +128 -0
  240. package/src/plugins/zbcxCesium/pub/LoadOgc.js +226 -0
  241. package/src/plugins/zbcxCesium/pub/Opacity.vue +139 -0
  242. package/src/plugins/zbcxCesium/pub/PubCxe.js +97 -0
  243. package/src/plugins/zbcxCesium/pub/SceneSet.vue +178 -0
  244. package/src/plugins/zbcxCesium/pub/ShowEffect.vue +216 -0
  245. package/src/plugins/zbcxCesium/pub/TMeasure.vue +122 -0
  246. package/src/plugins/zbcxCesium/pub/ToDefView3.vue +109 -0
  247. package/src/plugins/zbcxCesium/pub/getWmsGetCapabilities.js +127 -0
  248. package/src/plugins/zbcxCesium/utils/ShpToGeoJson.js +24 -0
  249. package/src/plugins/zbcxCesium/utils/WebProj4.js +32 -0
@@ -0,0 +1,355 @@
1
+ export default
2
+ {
3
+ data()
4
+ {
5
+ return {
6
+
7
+ }
8
+ },
9
+ methods: {
10
+ /**
11
+ * 缩小
12
+ */
13
+ reduceHeight()
14
+ {
15
+ let eye = window.Viewer.camera.positionCartographic
16
+ window.Viewer.camera.setView({ destination: Cesium.Cartesian3.fromRadians(eye.longitude, eye.latitude, eye.height - eye.height / 5) })
17
+ },
18
+
19
+ /**
20
+ * 放大
21
+ */
22
+ addHeight()
23
+ {
24
+ let eye = window.Viewer.camera.positionCartographic
25
+ window.Viewer.camera.setView({ destination: Cesium.Cartesian3.fromRadians(eye.longitude, eye.latitude, eye.height + eye.height / 5) })
26
+ },
27
+
28
+ loadDataPntAll(ret)
29
+ {
30
+ this.loadDataPnt(ret)
31
+ this.loadImportPnt(this.importData)
32
+ },
33
+
34
+ loadDataLineAll(ret)
35
+ {
36
+ this.loadDataLine(ret)
37
+ },
38
+
39
+ loadDataPolAll(ret)
40
+ {
41
+ this.loadDataPol(ret)
42
+ this.loadImportPol(this.importData)
43
+ },
44
+
45
+ /**
46
+ * 加载点数据
47
+ * @param {*} ret
48
+ */
49
+ loadDataPnt(ret)
50
+ {
51
+ if (ret[0].pnt)
52
+ {
53
+ let pnt = JSON.parse(ret[0].pnt)
54
+ this.pointsByDataBase = pnt
55
+ this.tool.addVector(pnt, 6, false, true)
56
+ let labels = pnt.map(i => ({ ...i, lat: i.lat }))
57
+ this.tool.addLabel(labels)
58
+ }
59
+ },
60
+
61
+ loadImportPnt(pnt)
62
+ {
63
+ // 根据bz属性分组
64
+ const group = this.groupByProp(pnt, 'bz', 'ASC')
65
+ const result = pnt.map(i =>
66
+ {
67
+ const coor = this.transformCoor(i.geom.coordinates, false)
68
+ const obj = { lng: coor[0], lat: coor[1], tag: 'layer-tree' }
69
+ // 通过bz属性取出组,始终取出第一个,取出透明度
70
+ const { tmd } = group[i.bz][0]
71
+ // 判断透明度属性值是否存在
72
+ const isExistTmd = tmd >= 0 && tmd !== ''
73
+ const color = Cesium.Color.fromCssColorString(isExistTmd ? `rgba(0, 0, 255, ${tmd})` : 'rgba(0, 0, 255, 1)')
74
+ obj.style = { color, outlineColor: color }
75
+ return obj
76
+ })
77
+ this.tool.addVector(result, 1, false, true)
78
+ },
79
+
80
+ loadImportLine(lines)
81
+ {
82
+ let lineCoor = []
83
+ const group = this.groupByProp(lines, 'bz', 'ASC')
84
+ for (let i = 0; i < lines.length; i++)
85
+ {
86
+ const item = lines[i]
87
+ const coordinates = item.geom.coordinates
88
+ let jwd = this.PublicMethods.getCxeCoor(coordinates.map(k => this.transformCoor(k, false)))
89
+ // 通过bz属性取出组,始终取出第一个,取出透明度
90
+ const { tmd } = group[item.bz][0]
91
+ // 判断透明度属性值是否存在
92
+ const isExistTmd = tmd >= 0 && tmd !== ''
93
+ const color = isExistTmd ? `rgba(0, 0, 255, ${tmd})` : 'rgba(0, 0, 255, 1)'
94
+
95
+ lineCoor.push({ jwd, tag: 'layer-tree', lineColor: color })
96
+ }
97
+ if (this.tool)
98
+ this.tool.addVector(lineCoor, 2, false, true)
99
+ else
100
+ window.tool.addVector(lineCoor, 2, false, true)
101
+ },
102
+
103
+ loadImportPol(pols)
104
+ {
105
+ // 根据 bz 属性分组
106
+ let group = this.groupByProp(pols, 'bz', 'ASC')
107
+ let polCoor = []
108
+
109
+ for (let i = 0; i < pols.length; i++)
110
+ {
111
+ const item = pols[i]
112
+ const geom = item.geom
113
+ const type = geom.type
114
+ const coordinates = geom.coordinates
115
+
116
+ // 获取组信息和透明度
117
+ const { tmd } = group[item.bz][0]
118
+ const isExistTmd = tmd >= 0 && tmd !== ''
119
+ const color = isExistTmd ? `rgba(0, 0, 255, ${tmd})` : 'rgba(0, 0, 255, 1)'
120
+
121
+ if (type === 'Polygon')
122
+ {
123
+ // 处理 Polygon 类型
124
+ let jwd = this.PublicMethods.getCxeCoor(coordinates[0].map(k => this.transformCoor(k, false)))
125
+ polCoor.push({ jwd, tag: 'layer-tree', fillColor: color })
126
+ }
127
+ else if (type === 'MultiPolygon')
128
+ {
129
+ // 处理 MultiPolygon 类型
130
+ for (let j = 0; j < coordinates.length; j++)
131
+ {
132
+ let polyCoords = coordinates[j]
133
+ for (let k = 0; k < polyCoords.length; k++)
134
+ {
135
+ let ring = polyCoords[k]
136
+ let jwd = this.PublicMethods.getCxeCoor(ring.map(l => this.transformCoor(l, false)))
137
+ polCoor.push({ jwd, tag: 'layer-tree', fillColor: color })
138
+ }
139
+ }
140
+ }
141
+ else
142
+ console.warn(`Unsupported geometry type: ${type}`)
143
+ }
144
+ if (this.tool)
145
+ this.tool.addVector(polCoor, 3, false, true)
146
+ else
147
+ window.tool.addVector(polCoor, 3, false, true)
148
+
149
+ // excel 数据,每个拐点都需要加标注
150
+ if (pols[0].datasource === 'excel')
151
+ {
152
+ const labels = JSON.parse(pols[0].conf).map(i => ({ lng: i.经度, lat: i.纬度, label: String(i.序号), tag: 'layer-tree' }))
153
+ window.tool.addLabel(labels.slice(0, -1))
154
+ }
155
+ },
156
+
157
+ // loadImportPol(pols)
158
+ // {
159
+ // // 根据bz属性分组
160
+ // let group = this.groupByProp(pols, 'bz', 'ASC')
161
+ // let polCoor = []
162
+ // for (let i = 0; i < pols.length; i++)
163
+ // {
164
+ // const item = pols[i]
165
+ // const coordinates = item.geom.coordinates
166
+ // let jwd = this.PublicMethods.getCxeCoor(coordinates[0].map(k => this.transformCoor(k, false)))
167
+ // // 通过bz属性取出组,始终取出第一个,取出透明度
168
+ // const { tmd } = group[item.bz][0]
169
+ // // 判断透明度属性是否存在
170
+ // const isExistTmd = tmd >= 0 && tmd !== ''
171
+ // const color = isExistTmd ? `rgba(0, 0, 255, ${tmd})` : 'rgba(0, 0, 255, 1)'
172
+ // polCoor.push({ jwd, tag: 'layer-tree', fillColor: color })
173
+ // }
174
+ // this.tool.addVector(polCoor, 3, false, true)
175
+ // },
176
+
177
+ /**
178
+ * 对数组对象根据某个属性值进行分组
179
+ * @param {Array} array 需要分组的数组对象
180
+ * @param {String} key 需要分组的属性名
181
+ * @param {'DESC' | 'ASC'} sort 排序方式,DESC为降序,ASC为升序,默认不排序
182
+ * @returns {Object<Array>} 分组后的结果——对象数组
183
+ */
184
+ groupByProp(array, key, sort)
185
+ {
186
+ if (!array.length) return array
187
+ const group = array.reduce((p, c) =>
188
+ {
189
+ const name = c[key];
190
+ (p[name] = p[name] || []).push(c)
191
+ return p
192
+ }, {})
193
+ if (sort === 'DESC')
194
+ for (let key in group) group[key].sort((a, b) => b.id - a.id)
195
+ else if (sort === 'ASC')
196
+ for (let key in group) group[key].sort((a, b) => a.id - b.id)
197
+ return group
198
+ },
199
+
200
+ /**
201
+ * 加载线数据
202
+ * @param {*} ret
203
+ */
204
+ loadDataLine(ret)
205
+ {
206
+ if (ret[0].line)
207
+ {
208
+ let line = JSON.parse(ret[0].line)
209
+ this.linesByDataBase = line
210
+ this.tool.addVector(line, 2, false, true)
211
+ this.tool.addLabel(line)
212
+ }
213
+ },
214
+
215
+ /**
216
+ * 加载面数据
217
+ * @param {*} ret
218
+ */
219
+ loadDataPol(ret)
220
+ {
221
+ if (ret[0].surface)
222
+ {
223
+ let pol = JSON.parse(ret[0].surface)
224
+ this.polsByDataBase = pol
225
+ this.tool.addVector(pol, 3, false, true)
226
+ this.tool.addLabel(pol)
227
+ }
228
+ },
229
+
230
+ async loadUploadData(type)
231
+ {
232
+ let importData = await cx.svr.data.query(11, 10131,
233
+ {
234
+ args:
235
+ [
236
+ ['glmajor', '=', 11, 'and'],
237
+ ['glminor', '=', 10008, 'and'],
238
+ ['prj_id', '=', $g.checkedPrj.id, 'and'],
239
+ ['bz', 'in', type, 'and']
240
+ ],
241
+ geometry: 1
242
+ })
243
+ let ret = importData.filter(i => type.includes(i.bz))
244
+ if (ret[0])
245
+ {
246
+ const pnt = ret.filter(i => i.geom.type === 'Point')
247
+ const line = ret.filter(i => i.geom.type === 'LineString')
248
+ const pol = ret.filter(i => ['Polygon', 'MultiPolygon'].includes(i.geom.type))
249
+ pnt.length && this.loadImportPnt(pnt)
250
+ line.length && this.loadImportLine(line)
251
+ pol.length && this.loadImportPol(pol)
252
+ }
253
+ },
254
+
255
+ clearVector()
256
+ {
257
+ this.tool.clear()
258
+ },
259
+
260
+ /**
261
+ * 坐标定位i
262
+ * @param {*} obj { lng: 113, lat: 33, alt: 10000 }
263
+ */
264
+ locatePos(obj)
265
+ {
266
+ this.tool.addVector([{ lng: obj.lng, lat: obj.lat }], 1, true, false)
267
+ this.tool.flyToPos(obj)
268
+ },
269
+
270
+ /**
271
+ * 地名定位i
272
+ * @param {*} obj {centery: 24.49571499 centerx: 98.8355523187, name: '龙陵县', …}
273
+ */
274
+ locateArea(obj)
275
+ {
276
+ let coors = obj.geom.coordinates[0][0]
277
+ let jwd = ''
278
+ coors.forEach(i =>
279
+ {
280
+ jwd += i.join(',') + ';'
281
+ })
282
+ this.tool.addVector([{ jwd }], 2, true, true)
283
+ this.tool.addLabel([{ lng: obj.centerx, lat: obj.centery, label: obj.name }])
284
+ },
285
+
286
+ /**
287
+ * 坐标转换
288
+ * @param {*} coor 坐标数组 [a, b]
289
+ * @param {*} bool true: 4326坐标系转其他坐标系 false: 其他坐标系转4326坐标系
290
+ * @returns 转换后的坐标 [c, d]
291
+ */
292
+ transformCoor(coor, bool)
293
+ {
294
+ if (!$g.checkedPrj.epsg) return coor
295
+ let val = $g.checkedPrj.epsg
296
+ if (bool)
297
+ return window.proj4('EPSG:4326', `EPSG:${val}`, coor)
298
+ return window.proj4(`EPSG:${val}`, 'EPSG:4326', coor)
299
+ },
300
+
301
+ /**
302
+ * 鼠标移动事件
303
+ * @param {} handler 句柄
304
+ */
305
+ initMouseMove(handler)
306
+ {
307
+ handler.setInputAction(e =>
308
+ {
309
+ if (e.startPosition && e.startPosition.x)
310
+ // 获取当前鼠标位置
311
+ {
312
+ const cartesian = this.Viewer.camera.pickEllipsoid(e.endPosition)
313
+ if (cartesian)
314
+ {
315
+ const cartographic = Cesium.Cartographic.fromCartesian(cartesian)
316
+ // 弧度转为角度(经纬度)
317
+ const lon = Cesium.Math.toDegrees(cartographic.longitude)
318
+ const lon1 = this.tool.decimalToDMS(lon)
319
+ const lat = Cesium.Math.toDegrees(cartographic.latitude)
320
+ const lat1 = this.tool.decimalToDMS(lat)
321
+ const coor = this.transformCoor([lon, lat], true)
322
+ const arr = document.getElementsByClassName('mouse-location')[0].innerHTML.split('\n')
323
+ document.getElementsByClassName('mouse-location')[0].innerHTML = '\n <span>经度:' + lon.toFixed(2) + '(' + lon1 + ')' + '</span>\n <span>纬度:' + lat.toFixed(2) + '(' + lat1 + ')' + '</span>\n' + '</br>\n <span>X:' + coor[0].toFixed(2) + '</span>\n <span>Y:' + coor[1].toFixed(2) + '</span>\n' + arr.at(-1)
324
+ }
325
+ }
326
+ }, Cesium.ScreenSpaceEventType.MOUSE_MOVE)
327
+ },
328
+
329
+ /**
330
+ * 删除临时绘制的要素
331
+ */
332
+ removeTempVector()
333
+ {
334
+ // 先删除临时记录,避免混淆
335
+ window.Viewer.layers.getLayers()[0].getOverlays().filter(i => i.att.mark === 'temp').forEach(j =>
336
+ {
337
+ window.Viewer.layers.getLayers()[0].removeOverlay(j)
338
+ })
339
+ },
340
+
341
+ // 数据预览定位
342
+ async locateLoadUploadData(ret, type)
343
+ {
344
+ if (ret[0])
345
+ {
346
+ const pnt = ret.filter(i => i.geom.type === 'Point')
347
+ const line = ret.filter(i => i.geom.type === 'LineString')
348
+ const pol = ret.filter(i => ['Polygon', 'MultiPolygon'].includes(i.geom.type))
349
+ pnt.length && this.loadImportPnt(pnt)
350
+ line.length && this.loadImportLine(line)
351
+ pol.length && this.loadImportPol(pol)
352
+ }
353
+ }
354
+ }
355
+ }