gs-bim-air 3.0.3 → 3.0.5

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 (391) hide show
  1. package/.git +1 -0
  2. package/README.md +20 -1
  3. package/docs/classes/CameraMouse.md +1 -1
  4. package/docs/classes/EarthCameraMouse3D.md +1 -1
  5. package/docs/classes/Process.md +3 -1
  6. package/docs/classes/ThirdPersonOperator.md +1 -1
  7. package/docs/classes/TreeNodeObject.md +12 -4
  8. package/docs/classes/Viewer.md +25 -21
  9. package/docs/namespaces/Animation/classes/MeadowEffect.md +14 -2
  10. package/docs/namespaces/Managers/classes/EffectManager.md +58 -16
  11. package/docs/namespaces/Managers/classes/ProjectManager.md +51 -1
  12. package/docs/namespaces/Managers/classes/RenderObjectManager.md +0 -104
  13. package/docs/namespaces/Managers/classes/SelectionManager.md +34 -5
  14. package/docs/namespaces/Managers/classes/StyleManager.md +34 -2
  15. package/lib/BimAir.common-report.html +2 -2
  16. package/lib/BimAir.common.js +2879 -2057
  17. package/lib/BimAir.css +8782 -8786
  18. package/lib/BimAir.umd-report.html +2 -2
  19. package/lib/BimAir.umd.js +2879 -2057
  20. package/lib/BimAir.umd.min-report.html +2 -2
  21. package/lib/BimAir.umd.min.js +3 -3
  22. package/package.json +1 -1
  23. package/public/js/longanWithoutShareArrayBuffer/longan.js +404 -332
  24. package/public/js/longanWithoutShareArrayBuffer/longan.wasm +0 -0
  25. package/public/js/shaders/screenSpaceCurvature.fragment.fx +1 -1
  26. package/public/js/shaders/shadersInclude/screenSpaceRayTrace.fx +1 -1
  27. package/public/js/shadersWGSL/shadersInclude/screenSpaceRayTrace.fx +1 -1
  28. package/src/api/cuttingService.ts +0 -55
  29. package/src/api/effectService.ts +0 -46
  30. package/src/api/file/fileService.ts +0 -21
  31. package/src/api/gisProjectService.ts +0 -129
  32. package/src/api/gsl/gslService.ts +0 -36
  33. package/src/api/indexedDB.ts +0 -212
  34. package/src/api/labelService.ts +0 -55
  35. package/src/api/longan/component-property.http +0 -157
  36. package/src/api/longan/longan-segment.http +0 -149
  37. package/src/api/longan/segment- geometry.http +0 -24
  38. package/src/api/longanModelApi.ts +0 -24
  39. package/src/api/markupService.ts +0 -61
  40. package/src/api/measureService.ts +0 -55
  41. package/src/api/modelService copy.ts +0 -265
  42. package/src/api/modelService.ts +0 -378
  43. package/src/api/modelVersion/convertorService.ts +0 -62
  44. package/src/api/modelVersion/model.http +0 -8
  45. package/src/api/modelVersion/model.ts +0 -72
  46. package/src/api/modelVersion/modelService.ts +0 -112
  47. package/src/api/modelVersion/version.ts +0 -15
  48. package/src/api/modelVersion/versionCode.ts +0 -4
  49. package/src/api/osgbApi.ts +0 -19
  50. package/src/api/pathRoamService.ts +0 -55
  51. package/src/api/project/project.http +0 -62
  52. package/src/api/projectService copy.ts +0 -32
  53. package/src/api/projectService.ts +0 -231
  54. package/src/api/renderObjectService.ts +0 -61
  55. package/src/api/userService.ts +0 -97
  56. package/src/api/viewPointService.ts +0 -62
  57. package/src/assets/icon.ts +0 -134
  58. package/src/assets/iconfont/demo.css +0 -539
  59. package/src/assets/iconfont/demo_index.html +0 -2675
  60. package/src/assets/iconfont/iconfont.css +0 -449
  61. package/src/assets/iconfont/iconfont.js +0 -1
  62. package/src/assets/iconfont/iconfont.json +0 -765
  63. package/src/assets/iconfont/iconfont.ttf +0 -0
  64. package/src/assets/iconfont/iconfont.woff +0 -0
  65. package/src/assets/iconfont/iconfont.woff2 +0 -0
  66. package/src/assets/images/DaylightBoxIcon.jpg +0 -0
  67. package/src/assets/images/TropicalSunnyDayIcon.jpg +0 -0
  68. package/src/assets/images/autumnSkyboxIcon.jpg +0 -0
  69. package/src/assets/images/cloudySkyboxIcon.jpg +0 -0
  70. package/src/assets/images/darkSkyboxIcon.jpg +0 -0
  71. package/src/assets/images/desertSkyboxIcon.jpg +0 -0
  72. package/src/assets/images/duskSkyboxIcon.jpg +0 -0
  73. package/src/assets/images/modelImg.png +0 -0
  74. package/src/assets/images/nightSkyboxIcon.jpg +0 -0
  75. package/src/assets/images/placeholder.jpg +0 -0
  76. package/src/assets/images/skyboxIcon.jpg +0 -0
  77. package/src/assets/images/sunnySkyboxIcon.jpg +0 -0
  78. package/src/assets/images/sunsetSkyboxIcon.jpg +0 -0
  79. package/src/assets/scss/dialog.scss +0 -47
  80. package/src/assets/scss/element-dark.scss +0 -1102
  81. package/src/assets/scss/element-variables.scss +0 -1113
  82. package/src/assets/scss/global.scss +0 -3
  83. package/src/assets/scss/gs-card.scss +0 -66
  84. package/src/assets/scss/gs-date-picker.scss +0 -14
  85. package/src/assets/scss/gs-input-dark.scss +0 -15
  86. package/src/assets/scss/gs-select-dropdown.scss +0 -37
  87. package/src/assets/scss/gs-table.scss +0 -37
  88. package/src/assets/scss/gs-tabs.scss +0 -32
  89. package/src/assets/scss/gs-tree-dark.scss +0 -26
  90. package/src/assets/scss/gs-tree.scss +0 -30
  91. package/src/assets/scss/intelligentScreen.scss +0 -1009
  92. package/src/assets/scss/scrollbar.scss +0 -14
  93. package/src/assets/scss/site-dark.scss +0 -53
  94. package/src/assets/scss/site-light.scss +0 -53
  95. package/src/assets/scss/site.scss +0 -54
  96. package/src/assets/scss/vuesaxCover.css +0 -15
  97. package/src/assets/svgs/camera.svg +0 -15
  98. package/src/assets/svgs/compass.svg +0 -14
  99. package/src/assets/svgs/compass.ts +0 -7
  100. package/src/assets/svgs/rotatePoint.svg +0 -8
  101. package/src/assets/svgs/rotatePoint.ts +0 -6
  102. package/src/assets/theme/common.scss +0 -1088
  103. package/src/assets/theme/dark/element-variables.scss +0 -71
  104. package/src/assets/theme/dark/styls.scss +0 -73
  105. package/src/assets/theme/gis/element-variables.scss +0 -72
  106. package/src/assets/theme/gis/styls.scss +0 -74
  107. package/src/assets/theme/handle.scss +0 -27
  108. package/src/assets/theme/primary/element-variables.scss +0 -71
  109. package/src/assets/theme/primary/styls.scss +0 -74
  110. package/src/assets/theme/themes.scss +0 -11
  111. package/src/assets/theme/tint/element-variables.scss +0 -71
  112. package/src/assets/theme/tint/styls.scss +0 -74
  113. package/src/axiosRequestExport.ts +0 -97
  114. package/src/components/el/tree/index.js +0 -8
  115. package/src/components/el/tree/src/model/node.js +0 -508
  116. package/src/components/el/tree/src/model/tree-store.js +0 -340
  117. package/src/components/el/tree/src/model/util.js +0 -27
  118. package/src/components/el/tree/src/tree-node.vue +0 -313
  119. package/src/components/el/tree/src/tree.vue +0 -580
  120. package/src/components/gs/gs-icon.vue +0 -65
  121. package/src/components/gs/gsButtonGroup/gs-button-group.vue +0 -77
  122. package/src/components/gs/gsButtonGroup/index.ts +0 -7
  123. package/src/components/gs/gsButtonIcon/gs-button-icon.vue +0 -285
  124. package/src/components/gs/gsButtonIcon/index.ts +0 -7
  125. package/src/components/gs/gsDialog/gs-dialog.vue +0 -128
  126. package/src/components/gs/gsDialog/index.ts +0 -7
  127. package/src/components/gs/gsDivider/gs-divider.vue +0 -34
  128. package/src/components/gs/gsDivider/index.ts +0 -7
  129. package/src/components/gs/gsTree/gs-property-tree.vue +0 -71
  130. package/src/components/gs/gsTree/index.ts +0 -7
  131. package/src/components/gs/gsTreeNode/gs-property-tree-node.vue +0 -158
  132. package/src/components/gs/gsTreeNode/index.ts +0 -7
  133. package/src/components/gs-animation-box.vue +0 -73
  134. package/src/components/gs-badge.vue +0 -40
  135. package/src/components/gs-button-bigIcon.vue +0 -102
  136. package/src/components/gs-button-icon-border.vue +0 -111
  137. package/src/components/gs-button-select-right.vue +0 -126
  138. package/src/components/gs-button-select.vue +0 -168
  139. package/src/components/gs-button-small.vue +0 -180
  140. package/src/components/gs-button-underline.vue +0 -66
  141. package/src/components/gs-button-wrapper.vue +0 -62
  142. package/src/components/gs-button.vue +0 -201
  143. package/src/components/gs-drag-left-right.vue +0 -175
  144. package/src/components/gs-input.vue +0 -63
  145. package/src/components/gs-panel-dark.vue +0 -176
  146. package/src/components/gs-right-menu.vue +0 -115
  147. package/src/components/gs-roll-list-slot.vue +0 -125
  148. package/src/components/gs-select-small.vue +0 -67
  149. package/src/components/gs-setting-wrapper.vue +0 -47
  150. package/src/components/gs-show-panel-down.vue +0 -131
  151. package/src/components/gs-show-panel.vue +0 -180
  152. package/src/components/gs-toolbar-item.vue +0 -72
  153. package/src/components/gs-tooltip.vue +0 -38
  154. package/src/components/gs-upload.vue +0 -225
  155. package/src/index.ts +0 -259
  156. package/src/install.ts +0 -35
  157. package/src/plugins/canvasDraw/canvasOperator.ts +0 -89
  158. package/src/plugins/canvasDraw/canvasViewer.ts +0 -120
  159. package/src/plugins/canvasDraw/index.ts +0 -319
  160. package/src/plugins/canvasDraw/keyEvent.ts +0 -86
  161. package/src/plugins/canvasDraw/lib/arrow.ts +0 -49
  162. package/src/plugins/canvasDraw/lib/color.ts +0 -3
  163. package/src/plugins/canvasDraw/lib/diameter.ts +0 -3
  164. package/src/plugins/canvasDraw/lib/editor.ts +0 -209
  165. package/src/plugins/canvasDraw/lib/ellipsis.ts +0 -14
  166. package/src/plugins/canvasDraw/lib/mosaic.ts +0 -31
  167. package/src/plugins/canvasDraw/lib/pen.ts +0 -36
  168. package/src/plugins/canvasDraw/lib/rectangle.ts +0 -13
  169. package/src/plugins/canvasDraw/lib/shape.ts +0 -42
  170. package/src/plugins/canvasDraw/lib/text.ts +0 -60
  171. package/src/plugins/canvasDraw/lib/tool.ts +0 -168
  172. package/src/plugins/element.ts +0 -180
  173. package/src/plugins/gsElement.ts +0 -14
  174. package/src/plugins/iconfont.ts +0 -3
  175. package/src/plugins/svgDraw/index.ts +0 -168
  176. package/src/plugins/svgDraw/svgViewer.ts +0 -86
  177. package/src/plugins/vuesax.ts +0 -16
  178. package/src/shims-fx.d.ts +0 -1
  179. package/src/shims-image.d.ts +0 -14
  180. package/src/shims-scss.d.ts +0 -2
  181. package/src/shims-tsx.d.ts +0 -13
  182. package/src/shims-vue.d.ts +0 -18
  183. package/src/shims-worker.d.ts +0 -8
  184. package/src/store/command.ts +0 -101
  185. package/src/store/index.ts +0 -156
  186. package/src/store/operator.ts +0 -25
  187. package/src/store/options.ts +0 -52
  188. package/src/store/panel.ts +0 -144
  189. package/src/store/structureTree.ts +0 -14
  190. package/src/store/toolbar.ts +0 -45
  191. package/src/typedocExport.ts +0 -288
  192. package/src/utils/canvas.ts +0 -40
  193. package/src/utils/color.ts +0 -17
  194. package/src/utils/cookie.ts +0 -187
  195. package/src/utils/copyText.ts +0 -16
  196. package/src/utils/dataFormat.ts +0 -3
  197. package/src/utils/dataUtility.ts +0 -73
  198. package/src/utils/date.ts +0 -23
  199. package/src/utils/dateUtility.ts +0 -5
  200. package/src/utils/deepClone.ts +0 -19
  201. package/src/utils/documentUtility.ts +0 -11
  202. package/src/utils/fileFormatTransform.ts +0 -42
  203. package/src/utils/fileType.ts +0 -97
  204. package/src/utils/fileUtility.ts +0 -208
  205. package/src/utils/forbiddenF12.ts +0 -11
  206. package/src/utils/global.ts +0 -6
  207. package/src/utils/httpUtility.ts +0 -18
  208. package/src/utils/index.ts +0 -26
  209. package/src/utils/md5.ts +0 -262
  210. package/src/utils/request.ts +0 -123
  211. package/src/utils/utility.ts +0 -204
  212. package/src/utils/uuid.ts +0 -9
  213. package/src/utils/window.ts +0 -22
  214. package/src/viewerWrapper/commands/commandBindComponent.vue +0 -405
  215. package/src/viewerWrapper/commands/commandComponent.ts +0 -180
  216. package/src/viewerWrapper/commands/commandSelect.ts +0 -7
  217. package/src/viewerWrapper/commands/createMeadow/commandCreateMeadow.ts +0 -84
  218. package/src/viewerWrapper/commands/createWall/commandCreateWall.ts +0 -231
  219. package/src/viewerWrapper/commands/createWall/createWall.vue +0 -120
  220. package/src/viewerWrapper/commands/multiPoint/multiPointCommand.ts +0 -228
  221. package/src/viewerWrapper/commands/showCollision/commandShowCollision.ts +0 -404
  222. package/src/viewerWrapper/commands/showCollision/showCollision.vue +0 -222
  223. package/src/viewerWrapper/commands/showComponentCut/commandShowComponentCut.ts +0 -31
  224. package/src/viewerWrapper/commands/showComponentCut/showComponentCut.vue +0 -138
  225. package/src/viewerWrapper/commands/showCut/showAxisCut/commandShowAxisCut.ts +0 -129
  226. package/src/viewerWrapper/commands/showCut/showAxisCut/showAxisCut.vue +0 -100
  227. package/src/viewerWrapper/commands/showCut/showBoxCut/commandShowBoxCut.ts +0 -129
  228. package/src/viewerWrapper/commands/showCut/showBoxCut/showBoxCut.vue +0 -228
  229. package/src/viewerWrapper/commands/showCut/showElavationCut/commandShowElevationCut.ts +0 -100
  230. package/src/viewerWrapper/commands/showCut/showElavationCut/showElevationCut.vue +0 -123
  231. package/src/viewerWrapper/commands/showCut/showElementCut/commandShowElementCut.ts +0 -108
  232. package/src/viewerWrapper/commands/showCut/showElementCut/showElementCut.vue +0 -185
  233. package/src/viewerWrapper/commands/showDrawingItem/commandShowDrawingItem.ts +0 -215
  234. package/src/viewerWrapper/commands/showDrawingItem/showDrawingItem.vue +0 -65
  235. package/src/viewerWrapper/commands/showEditLabel/commandShowEditLabel.ts +0 -48
  236. package/src/viewerWrapper/commands/showEditLabel/lib/image.ts +0 -136
  237. package/src/viewerWrapper/commands/showEditLabel/lib/label.ts +0 -56
  238. package/src/viewerWrapper/commands/showEditLabel/lib/leadtext.ts +0 -130
  239. package/src/viewerWrapper/commands/showEditLabel/lib/location.ts +0 -86
  240. package/src/viewerWrapper/commands/showEditLabel/showEditLabel.vue +0 -359
  241. package/src/viewerWrapper/commands/showEditStyle/commandShowEditStyle.ts +0 -358
  242. package/src/viewerWrapper/commands/showEditStyle/showEditStyle.vue +0 -339
  243. package/src/viewerWrapper/commands/showFirstPersonRoam/commandShowFirstPersonRoam.ts +0 -215
  244. package/src/viewerWrapper/commands/showFirstPersonRoam/showFirstPersonRoam.vue +0 -56
  245. package/src/viewerWrapper/commands/showMarkup/commandShowMarkup.ts +0 -200
  246. package/src/viewerWrapper/commands/showMarkup/lib/arrow.ts +0 -342
  247. package/src/viewerWrapper/commands/showMarkup/lib/elliptic.ts +0 -331
  248. package/src/viewerWrapper/commands/showMarkup/lib/markup.ts +0 -35
  249. package/src/viewerWrapper/commands/showMarkup/lib/rectangle.ts +0 -335
  250. package/src/viewerWrapper/commands/showMarkup/lib/text.ts +0 -317
  251. package/src/viewerWrapper/commands/showMarkup/lib/waveRectangle.ts +0 -334
  252. package/src/viewerWrapper/commands/showMarkup/showMarkup.vue +0 -203
  253. package/src/viewerWrapper/commands/showMeasure/commandShowMeasure.ts +0 -104
  254. package/src/viewerWrapper/commands/showMeasure/lib/angle.ts +0 -387
  255. package/src/viewerWrapper/commands/showMeasure/lib/area.ts +0 -103
  256. package/src/viewerWrapper/commands/showMeasure/lib/distance.ts +0 -314
  257. package/src/viewerWrapper/commands/showMeasure/lib/elevation.ts +0 -164
  258. package/src/viewerWrapper/commands/showMeasure/lib/measure.ts +0 -48
  259. package/src/viewerWrapper/commands/showMeasure/lib/minDistance.ts +0 -398
  260. package/src/viewerWrapper/commands/showMeasure/lib/point.ts +0 -211
  261. package/src/viewerWrapper/commands/showMeasure/lib/slope.ts +0 -203
  262. package/src/viewerWrapper/commands/showMeasure/lib/volume.ts +0 -113
  263. package/src/viewerWrapper/commands/showMeasure/showMeasure.vue +0 -415
  264. package/src/viewerWrapper/commands/showModelExplosion/commandShowModelExplosion.ts +0 -271
  265. package/src/viewerWrapper/commands/showModelExplosion/commandShowProModelExplosion.ts +0 -410
  266. package/src/viewerWrapper/commands/showModelExplosion/showModelExplosion.vue +0 -63
  267. package/src/viewerWrapper/commands/showModelExplosion/showProModelExplosion.vue +0 -382
  268. package/src/viewerWrapper/commands/showMove/commandShowMove.ts +0 -55
  269. package/src/viewerWrapper/commands/showMove/showMove.vue +0 -116
  270. package/src/viewerWrapper/commands/showPathRoam/commandShowPathRoam.ts +0 -405
  271. package/src/viewerWrapper/commands/showPathRoam/showPathRoam.vue +0 -573
  272. package/src/viewerWrapper/commands/showProjection/commandShowProjection.ts +0 -353
  273. package/src/viewerWrapper/commands/showProjection/showProjection.vue +0 -75
  274. package/src/viewerWrapper/commands/showSlicePanel/commandShowSlicePanel.ts +0 -658
  275. package/src/viewerWrapper/commands/showSlicePanel/showSlicePanel.vue +0 -190
  276. package/src/viewerWrapper/commands/showThirdPersonRoam/commandShowThirdPersonRoam.ts +0 -196
  277. package/src/viewerWrapper/commands/showThirdPersonRoam/showThirdPersonRoam.vue +0 -57
  278. package/src/viewerWrapper/commands/showViewPlanItem/commandShowViewPlanItem.ts +0 -374
  279. package/src/viewerWrapper/commands/showViewPlanItem/showViewPlanItem.vue +0 -75
  280. package/src/viewerWrapper/components/bottomToolbar/componentOperate/componentOperate.ts +0 -77
  281. package/src/viewerWrapper/components/bottomToolbar/componentOperate/componentOperate.vue +0 -36
  282. package/src/viewerWrapper/components/bottomToolbar/cut/cut.ts +0 -110
  283. package/src/viewerWrapper/components/bottomToolbar/cut/cut.vue +0 -21
  284. package/src/viewerWrapper/components/bottomToolbar/indexToolbar.ts +0 -446
  285. package/src/viewerWrapper/components/bottomToolbar/indexToolbar.vue +0 -181
  286. package/src/viewerWrapper/components/bottomToolbar/info/info.ts +0 -60
  287. package/src/viewerWrapper/components/bottomToolbar/info/info.vue +0 -30
  288. package/src/viewerWrapper/components/bottomToolbar/label/label.ts +0 -39
  289. package/src/viewerWrapper/components/bottomToolbar/label/label.vue +0 -17
  290. package/src/viewerWrapper/components/bottomToolbar/markup/markup.ts +0 -48
  291. package/src/viewerWrapper/components/bottomToolbar/markup/markup.vue +0 -72
  292. package/src/viewerWrapper/components/bottomToolbar/measure/measure.ts +0 -39
  293. package/src/viewerWrapper/components/bottomToolbar/measure/measure.vue +0 -20
  294. package/src/viewerWrapper/components/bottomToolbar/roam/roam.ts +0 -243
  295. package/src/viewerWrapper/components/bottomToolbar/roam/roam.vue +0 -135
  296. package/src/viewerWrapper/components/bottomToolbar/sceneEffect/sceneEffect.ts +0 -132
  297. package/src/viewerWrapper/components/bottomToolbar/sceneEffect/sceneEffect.vue +0 -63
  298. package/src/viewerWrapper/components/bottomToolbar/sceneOperate/sceneOperate.ts +0 -158
  299. package/src/viewerWrapper/components/bottomToolbar/sceneOperate/sceneOperate.vue +0 -72
  300. package/src/viewerWrapper/components/bottomToolbar/toolbar.ts +0 -49
  301. package/src/viewerWrapper/components/bottomToolbar/toolbar.vue +0 -74
  302. package/src/viewerWrapper/components/bottomToolbar/viewModel/viewModel.ts +0 -157
  303. package/src/viewerWrapper/components/bottomToolbar/viewModel/viewModel.vue +0 -54
  304. package/src/viewerWrapper/components/frameRate/frameRate.ts +0 -34
  305. package/src/viewerWrapper/components/frameRate/frameRate.vue +0 -14
  306. package/src/viewerWrapper/components/leftToolbar/components/showRoam/showRoam.ts +0 -59
  307. package/src/viewerWrapper/components/leftToolbar/components/viewPoint/viewPointPanel.ts +0 -65
  308. package/src/viewerWrapper/components/leftToolbar/toolbar.ts +0 -246
  309. package/src/viewerWrapper/components/leftToolbar/toolbar.vue +0 -124
  310. package/src/viewerWrapper/components/rightToolbar/toolbar.ts +0 -210
  311. package/src/viewerWrapper/components/rightToolbar/toolbar.vue +0 -78
  312. package/src/viewerWrapper/module/addModel.ts +0 -55
  313. package/src/viewerWrapper/module/addRotatePointSVG.ts +0 -74
  314. package/src/viewerWrapper/module/createMenu.tsx +0 -163
  315. package/src/viewerWrapper/module/findModelId.ts +0 -24
  316. package/src/viewerWrapper/module/getRelatedIds.ts +0 -59
  317. package/src/viewerWrapper/module/removeModel.ts +0 -8
  318. package/src/viewerWrapper/module/saveModel.ts +0 -32
  319. package/src/viewerWrapper/module/setModelColor.ts +0 -11
  320. package/src/viewerWrapper/module/translateModel.ts +0 -12
  321. package/src/viewerWrapper/panels/backgroundEffect/backgroundEffectPanel.ts +0 -24
  322. package/src/viewerWrapper/panels/backgroundEffect/interfaceBackgroundEffectPanel.vue +0 -370
  323. package/src/viewerWrapper/panels/collision/collisionItemPanel.ts +0 -316
  324. package/src/viewerWrapper/panels/collision/collisionPanel.ts +0 -127
  325. package/src/viewerWrapper/panels/collision/interfaceCollisionItemPanel.vue +0 -219
  326. package/src/viewerWrapper/panels/collision/interfaceCollisionPanel.vue +0 -816
  327. package/src/viewerWrapper/panels/componentBlink/componentBlinkPanel.ts +0 -68
  328. package/src/viewerWrapper/panels/componentBlink/interfaceComponentBlinkPanel.vue +0 -140
  329. package/src/viewerWrapper/panels/componentInfo/componentInfoPanel.ts +0 -27
  330. package/src/viewerWrapper/panels/componentInfo/interfaceComponentInfoPanel.vue +0 -98
  331. package/src/viewerWrapper/panels/drawing/drawingPanel.ts +0 -105
  332. package/src/viewerWrapper/panels/drawing/interfaceDrawingPanel.vue +0 -126
  333. package/src/viewerWrapper/panels/effectPanels/componentEmissive/componentEmissivePanel.ts +0 -80
  334. package/src/viewerWrapper/panels/effectPanels/componentEmissive/interfaceComponentEmissivePanel.vue +0 -114
  335. package/src/viewerWrapper/panels/effectPanels/electricWall/electricWallPanel.ts +0 -65
  336. package/src/viewerWrapper/panels/effectPanels/electricWall/interfaceElectricWallEffectPanel.vue +0 -109
  337. package/src/viewerWrapper/panels/effectPanels/heatMap/heatMapEffectPanel.ts +0 -87
  338. package/src/viewerWrapper/panels/effectPanels/hemisphereScan/hemisphereScanCommand.ts +0 -17
  339. package/src/viewerWrapper/panels/effectPanels/hemisphereScan/hemisphereScanPanel.ts +0 -75
  340. package/src/viewerWrapper/panels/effectPanels/hemisphereScan/interfaceHemisphereScanPanel.vue +0 -159
  341. package/src/viewerWrapper/panels/effectPanels/particleEffect/interfaceParticleEffectPanel.vue +0 -242
  342. package/src/viewerWrapper/panels/effectPanels/particleEffect/particleEffectCommand.ts +0 -17
  343. package/src/viewerWrapper/panels/effectPanels/particleEffect/particleEffectPanel.ts +0 -86
  344. package/src/viewerWrapper/panels/effectPanels/radarScanEffect/interfaceRadarScanEffectPanel.vue +0 -164
  345. package/src/viewerWrapper/panels/effectPanels/radarScanEffect/radarScanEffectCommand.ts +0 -17
  346. package/src/viewerWrapper/panels/effectPanels/radarScanEffect/radarScanEffectPanel.ts +0 -89
  347. package/src/viewerWrapper/panels/effectPanels/spotLight/interfaceSpotLightEffectPanel.vue +0 -134
  348. package/src/viewerWrapper/panels/effectPanels/spotLight/spotLightEffectCommand.ts +0 -17
  349. package/src/viewerWrapper/panels/effectPanels/spotLight/spotLightEffectPanel.ts +0 -79
  350. package/src/viewerWrapper/panels/effectPanels/videoFusion/interfaceVideoFusionPanel.vue +0 -208
  351. package/src/viewerWrapper/panels/effectPanels/videoFusion/videoEffectCommand.ts +0 -17
  352. package/src/viewerWrapper/panels/effectPanels/videoFusion/videoFusionPanel.ts +0 -82
  353. package/src/viewerWrapper/panels/frameRate/frameRatePanel.ts +0 -29
  354. package/src/viewerWrapper/panels/frameRate/interfaceFrameRatePanel.vue +0 -102
  355. package/src/viewerWrapper/panels/index.ts +0 -40
  356. package/src/viewerWrapper/panels/info/infoPanel.ts +0 -30
  357. package/src/viewerWrapper/panels/info/interfaceInfoPanel.vue +0 -191
  358. package/src/viewerWrapper/panels/markup/interfaceMarkupPanel.vue +0 -234
  359. package/src/viewerWrapper/panels/markup/markupPanel.ts +0 -54
  360. package/src/viewerWrapper/panels/operationInfo/interfaceOperationInfoPanel.vue +0 -80
  361. package/src/viewerWrapper/panels/operationInfo/operationInfoPanel.ts +0 -25
  362. package/src/viewerWrapper/panels/panel.ts +0 -126
  363. package/src/viewerWrapper/panels/panelBindComponent.vue +0 -355
  364. package/src/viewerWrapper/panels/position/interfacePositionPanel.vue +0 -240
  365. package/src/viewerWrapper/panels/position/positionPanel.ts +0 -64
  366. package/src/viewerWrapper/panels/projection/interfaceProjectionPanel.vue +0 -80
  367. package/src/viewerWrapper/panels/projection/projectionPanel.ts +0 -426
  368. package/src/viewerWrapper/panels/property/interfacePropertyPanel.vue +0 -322
  369. package/src/viewerWrapper/panels/property/panes/propertyPanel.vue +0 -971
  370. package/src/viewerWrapper/panels/property/propertyPanel.ts +0 -82
  371. package/src/viewerWrapper/panels/scene/interfaceScenePanel.vue +0 -264
  372. package/src/viewerWrapper/panels/scene/scenePanel.ts +0 -133
  373. package/src/viewerWrapper/panels/setting/interfaceSettingPanel.vue +0 -909
  374. package/src/viewerWrapper/panels/setting/settingPanel.ts +0 -32
  375. package/src/viewerWrapper/panels/snapshoot/interfaceSnapshootPanel.vue +0 -213
  376. package/src/viewerWrapper/panels/snapshoot/snapshootPanel.ts +0 -80
  377. package/src/viewerWrapper/panels/structureTree/interfaceStructureTree.ts +0 -92
  378. package/src/viewerWrapper/panels/structureTree/interfaceStructureTree.vue +0 -147
  379. package/src/viewerWrapper/panels/structureTree/panes/structureTree.ts +0 -1124
  380. package/src/viewerWrapper/panels/structureTree/panes/structureTree.vue +0 -227
  381. package/src/viewerWrapper/panels/structureTree/structureTree.ts +0 -54
  382. package/src/viewerWrapper/panels/structureTree/structureTreeBus.ts +0 -4
  383. package/src/viewerWrapper/panels/transparency/interfaceTransparencyPanel.vue +0 -197
  384. package/src/viewerWrapper/panels/transparency/transparencyPanel.ts +0 -25
  385. package/src/viewerWrapper/panels/viewPlan/interfaceViewPlanPanel.vue +0 -133
  386. package/src/viewerWrapper/panels/viewPlan/viewPlanPanel.ts +0 -97
  387. package/src/viewerWrapper/panels/viewPoint/interfaceViewPointPanel.vue +0 -241
  388. package/src/viewerWrapper/panels/viewPoint/viewPointPanel.ts +0 -350
  389. package/src/viewerWrapper/viewerWrapper.ts +0 -238
  390. package/src/viewerWrapper/viewerWrapper.vue +0 -166
  391. package//347/216/257/345/242/203/346/226/207/346/241/243//345/270/270/350/247/201/351/227/256/351/242/230.md +0 -1
@@ -1,187 +0,0 @@
1
- export function setCookie(name: string, value: string, second?: number) {
2
- let seconds = second ? second : 7 * 24 * 60 * 60; // 此 cookie 将被保存的天数
3
- const date = new Date();
4
- // 将秒数转为毫秒,并添加到当前时间
5
- date.setTime(date.getTime() + seconds * 1000);
6
-
7
- // 编码 value 并拼接 Cookie 字符串
8
- const encodedValue = encodeURIComponent(value);
9
- let cookie = `${name}=${encodedValue};`;
10
- cookie += `expires=${date.toUTCString()};`;
11
- cookie += "path=/;"; // 确保全站可用
12
- cookie += "SameSite=Lax;"; // 推荐添加 SameSite 属性
13
-
14
- // 如果是 HTTPS 环境,可添加 Secure 标记
15
- // if (location.protocol === 'https:') cookie += "Secure;";
16
-
17
- document.cookie = cookie;
18
- }
19
-
20
- export function setCookieByExpire(name: string, value: string, expire: number) {
21
- const date = new Date();
22
- // 将秒数转为毫秒,并添加到当前时间
23
- date.setTime(date.getTime() + expire);
24
-
25
- // 编码 value 并拼接 Cookie 字符串
26
- const encodedValue = encodeURIComponent(value);
27
- let cookie = `${name}=${encodedValue};`;
28
- cookie += `expires=${date.toUTCString()};`;
29
- cookie += "path=/;"; // 确保全站可用
30
- cookie += "SameSite=Lax;"; // 推荐添加 SameSite 属性
31
-
32
- // 如果是 HTTPS 环境,可添加 Secure 标记
33
- // if (location.protocol === 'https:') cookie += "Secure;";
34
-
35
- document.cookie = cookie;
36
- }
37
-
38
- export function getCookie(name?: string): string | { [key: string]: string } | null {
39
- // 获取当前所有 Cookie 并分割成键值对数组
40
- const cookies = document.cookie.split("; ");
41
-
42
- // 如果没有 Cookie,直接返回 null 或空对象
43
- if (cookies.length === 0) {
44
- return name ? null : {};
45
- }
46
-
47
- // 解析所有 Cookie 到对象中
48
- const cookieObj: { [key: string]: string } = {};
49
- for (const cookie of cookies) {
50
- const [cookieName, ...cookieValueParts] = cookie.split("=");
51
- const decodedName = decodeURIComponent(cookieName.trim());
52
- const decodedValue = decodeURIComponent(cookieValueParts.join("=")); // 处理值中包含等号的情况
53
- cookieObj[decodedName] = decodedValue;
54
- }
55
-
56
- // 根据是否传入 name 参数返回对应结果
57
- return name ? cookieObj[name] ?? null : cookieObj;
58
- }
59
-
60
- export function deleteCookie(name: string) {
61
- setCookie(name, "", -1);
62
- }
63
-
64
- export class UserCookie {
65
- public static getInstance(): UserCookie {
66
- if (this._instance == null) {
67
- this._instance = new UserCookie();
68
- }
69
- return this._instance;
70
- }
71
- private static _instance: UserCookie;
72
- prefix: string = "Gs";
73
-
74
- _name: string = this.prefix + "UserName";
75
- _id: string = this.prefix + "UserId";
76
- _account: string = this.prefix + "Account";
77
-
78
- // _role = this.prefix + "UserRole"
79
- _projectId: string = this.prefix + "ProjectId";
80
- _projectName: string = this.prefix + "ProjectName";
81
- _token: string = this.prefix + "Token";
82
- _key: string = this.prefix + "Key";
83
- _secret: string = this.prefix + "Secret";
84
-
85
- expire: number = 24 * 60 * 60 * 1000;
86
-
87
- get name() {
88
- let name = getCookie(this._name);
89
- return name as string;
90
- }
91
-
92
- set name(name) {
93
- setCookieByExpire(this._name, name, this.expire);
94
- }
95
-
96
- get id() {
97
- let id = getCookie(this._id) as string;
98
- return id;
99
- }
100
-
101
- set id(id: string) {
102
- setCookieByExpire(this._id, id, this.expire);
103
- }
104
-
105
- get account() {
106
- let account = getCookie(this._account);
107
- return account as string;
108
- }
109
-
110
- set account(account: string) {
111
- setCookieByExpire(this._account, account, this.expire);
112
- }
113
-
114
- get projectId() {
115
- let projectId = getCookie(this._projectId);
116
- return projectId as string;
117
- }
118
-
119
- set projectId(projectId: string) {
120
- setCookieByExpire(this._projectId, projectId, this.expire);
121
- }
122
-
123
- get projectName() {
124
- let projectName = getCookie(this._projectName);
125
- return projectName as string;
126
- }
127
-
128
- set projectName(projectName: string) {
129
- setCookieByExpire(this._projectName, projectName, this.expire);
130
- }
131
-
132
- get token() {
133
- let token = getCookie(this._token);
134
- return token as string;
135
- }
136
-
137
- set token(token: string) {
138
- setCookieByExpire(this._token, token, this.expire);
139
- }
140
-
141
- get key() {
142
- let key = getCookie(this._key);
143
- return key as string;
144
- }
145
-
146
- set key(key: string) {
147
- setCookieByExpire(this._key, key, this.expire);
148
- }
149
-
150
- get secret() {
151
- let secret = getCookie(this._secret);
152
- return secret as string;
153
- }
154
-
155
- set secret(secret: string) {
156
- setCookieByExpire(this._secret, secret, this.expire);
157
- }
158
-
159
- // projectId(projectId?) {
160
- // if (projectId) {
161
- // setCookie(this._projectId, projectId);
162
- // }
163
- // return getCookie(this._projectId)
164
-
165
- // }
166
-
167
- login(name: string, id: string) {
168
- setCookie(this._name, name, 7);
169
- setCookie(this._id, id, 7);
170
- // setCookie(this._role, role, 7);
171
- }
172
-
173
- logout() {
174
- deleteCookie(this._name);
175
- deleteCookie(this._id);
176
- // deleteCookie(this._role)
177
- }
178
-
179
- // role() {
180
- // let role = getCookie(this._role)
181
- // return role
182
- // }
183
-
184
- isLogin() {
185
- return getCookie(this._name) && getCookie(this._id);
186
- }
187
- }
@@ -1,16 +0,0 @@
1
- /**
2
- * @param {String} text 需要复制的内容
3
- * @return {Boolean} 复制成功:true或者复制失败:false 执行完函数后,按ctrl + v试试
4
- */
5
- // export function copyText(text) {
6
- // var textareaC = document.createElement('textarea');
7
- // textareaC.setAttribute('readonly', 'readonly'); //设置只读属性防止手机上弹出软键盘
8
- // textareaC.value = text;
9
- // document.body.appendChild(textareaC); //将textarea添加为body子元素
10
- // textareaC.select();
11
- // // var res = document.execCommand('copy');
12
- // let res = navigator.clipboard.writeText(value)
13
- // document.body.removeChild(textareaC);//移除DOM元素
14
- // console.log("复制成功");
15
- // return res;
16
- // }
@@ -1,3 +0,0 @@
1
- export function prefixZero(num, n) {
2
- return (Array(n).join("0") + num).slice(-n);
3
- }
@@ -1,73 +0,0 @@
1
- interface Data {
2
- name: string;
3
- [properName: string]: any;
4
- }
5
-
6
- export function search(dataArr: Data[], str: string) {
7
- let newArr = [];
8
- if (str === "") {
9
- return dataArr;
10
- }
11
- for (let i = 0, len = dataArr.length; i < len; i++) {
12
- if (
13
- (dataArr[i].name &&
14
- dataArr[i].name.toLowerCase().indexOf(str.toLowerCase()) !== -1) ||
15
- (dataArr[i].id &&
16
- dataArr[i].id.toLowerCase().indexOf(str.toLowerCase()) !== -1)
17
- ) {
18
- newArr.push(dataArr[i]);
19
- }
20
- }
21
- return newArr;
22
- }
23
-
24
- export function isExist(dataArr: Data[], str: string) {
25
- let b = false;
26
-
27
- for (let i = 0, len = dataArr.length; i < len; i++) {
28
- if (dataArr[i].name === str) {
29
- b = true;
30
- }
31
- }
32
- return b;
33
- }
34
-
35
- export function enumToArray(enumObject) {
36
- let array = [];
37
- let enumObjectKeys = Object.keys(enumObject);
38
- for (let i = 0; i < enumObjectKeys.length; i++) {
39
- array.push(enumObject[enumObjectKeys[i]]);
40
- }
41
- return array;
42
- }
43
-
44
- export function unique(arr) {
45
- let obj = {};
46
- return arr.filter((item, index) => {
47
- // 防止key重复
48
- let newItem = item + JSON.stringify(item);
49
- return Object.prototype.hasOwnProperty.call(obj, newItem)
50
- ? false
51
- : (obj[newItem] = true);
52
- });
53
- }
54
-
55
- export function uniqueByProperty(arr, property) {
56
- let obj = {};
57
- return arr.filter((item, index) => {
58
- if (item) {
59
- // 防止key重复
60
- let newItem = item[property];
61
- return Object.prototype.hasOwnProperty.call(obj, newItem)
62
- ? false
63
- : (obj[newItem] = true);
64
- } else {
65
- return false;
66
- }
67
- });
68
- }
69
-
70
- // 二维转三维
71
- export function flatten(arr) {
72
- return [].concat(...arr.map((x) => (Array.isArray(x) ? flatten(x) : x)));
73
- }
package/src/utils/date.ts DELETED
@@ -1,23 +0,0 @@
1
- export function dateFormat(dateOrigin: any, fmt: string) {
2
- let date = new Date(dateOrigin)
3
- let o = {
4
- "M+": date.getMonth() + 1, //月份
5
- "D+": date.getDate(), //日
6
- "h+": date.getHours(), //小时
7
- "m+": date.getMinutes(), //分
8
- "s+": date.getSeconds(), //秒
9
- "q+": Math.floor((date.getMonth() + 3) / 3), //季度
10
- "S": date.getMilliseconds() //毫秒
11
- };
12
- if (/(Y+)/.test(fmt)) {
13
- fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
14
- }
15
- for (let k in o) {
16
- if (new RegExp("(" + k + ")").test(fmt)) {
17
- fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ?
18
- (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
19
- }
20
- }
21
- return fmt;
22
- }
23
-
@@ -1,5 +0,0 @@
1
- // 定义一个深拷贝函数 接收目标target参数
2
- export function structureDate(date) {
3
- let d = new Date(date);
4
- return `${d.getDate()}-${d.getMonth() + 1}-${d.getFullYear()}`;
5
- }
@@ -1,19 +0,0 @@
1
- // export function recursionDeepClone(obj) {
2
- // // 判断是否为对象
3
- // if (typeof obj !== "object" || obj === null) {
4
- // return obj; // 基本类型和 null 直接返回
5
- // }
6
-
7
- // // 创建一个新的对象或数组,根据原对象类型
8
- // const clone = Array.isArray(obj) ? [] : {};
9
-
10
- // // 遍历原对象的所有属性
11
- // for (let key in obj) {
12
- // if (Object.prototype.hasOwnProperty.call(obj, key)) {
13
- // // 递归深克隆嵌套对象或数组
14
- // clone[key] = recursionDeepClone(obj[key]);
15
- // }
16
- // }
17
-
18
- // return clone;
19
- // }
@@ -1,11 +0,0 @@
1
- export function isFullscreen() {
2
- return document.fullscreenElement ? true : false;
3
- }
4
-
5
- export function fullScreenToggle() {
6
- if (isFullscreen()) {
7
- return document.exitFullscreen();
8
- } else {
9
- return document.documentElement.requestFullscreen();
10
- }
11
- }
@@ -1,42 +0,0 @@
1
- let arrayBufferToBase64 = (res, type?) => {
2
- let binary = "";
3
- let bytes = new Uint8Array(res);
4
- let len = bytes.byteLength;
5
- for (let i = 0; i < len; i++) {
6
- binary += String.fromCharCode(bytes[i]);
7
- }
8
- let base64 = `data:image/${type || "png"};base64,${window.btoa(binary)}`;
9
- return base64;
10
- };
11
-
12
- let base64ToBlob = (urlData, type) => {
13
- let arr = urlData.split(",");
14
- let mine = arr[0].match(/:(.*?);/)[1] || type;
15
- // 去掉url的头,并转化为byte
16
- let bytes = window.atob(arr[1]);
17
- // 处理异常,将ascii码小于0的转化为大于0
18
- let ab = new ArrayBuffer(bytes.length);
19
- // 生成视图(直接针对内存): 8位无符号整数,长度1个字节
20
- let ia = new Uint8Array(ab);
21
- for (let i = 0; i < bytes.length; i++) {
22
- ia[i] = bytes.charCodeAt(i);
23
- }
24
- return new Blob([ab], { type: mine });
25
- };
26
- let base64ToFile = (urlData, fileName) => {
27
- if (typeof urlData != "string") {
28
- return;
29
- }
30
- let arr: any = urlData.split(",");
31
- let type = arr[0].match(/:(.*?);/)[1];
32
- let fileExt = type.split("/")[1];
33
- let bstr = atob(arr[1]);
34
- let n = bstr.length;
35
- let u8arr = new Uint8Array(n);
36
- while (n--) {
37
- u8arr[n] = bstr.charCodeAt(n);
38
- }
39
- return new File([u8arr], fileName, { type });
40
- };
41
-
42
- export { arrayBufferToBase64, base64ToBlob, base64ToFile };
@@ -1,97 +0,0 @@
1
- export default class FileType {
2
- static word = "doc-docx-dotx-dot-dotm";
3
- static excel = "xls-xlsx-xlsm-xlm-xlsb";
4
- static ppt = "ppt-pptx-pps-ppsx-potx-pot-pptm-potm-ppsm";
5
- static video = "avi-mov-rmvb-rm-flv-mp4-3gp";
6
- static image = "jpg-jpeg-png-gif-bmp";
7
-
8
- static lightModel = "gsl-sz-gsz";
9
- static originModel = "rvt-zip-fbx-FBX-Fbx-nwd-nwc-CATPart-dwg-DWG-Dwg";
10
- static revit = "rvt";
11
- static catia = "zip-CATPart";
12
- static catiaPart = "CATPart";
13
- static catiaZip = "zip";
14
- static naviswork = "nwd-nwc";
15
- static fbx = "fbx-FBX-Fbx";
16
- static dwg = "dwg-DWG-Dwg";
17
- static zip = "zip";
18
-
19
- public static acceptFileType(fileTypeString: string) {
20
- return "." + fileTypeString.replace(/-/g, ",.") + ",";
21
- }
22
-
23
- public static filePostfix(fileName: string) {
24
- let fileNameArr = fileName.split(".");
25
- return fileNameArr[fileNameArr.length - 1];
26
- }
27
-
28
- public static isWord(fileName: string): boolean {
29
- let type = this.filePostfix(fileName);
30
- return this.word.split("-").some((item) => item === type);
31
- }
32
-
33
- public static isExcel(fileName: string): boolean {
34
- let type = this.filePostfix(fileName);
35
- return this.excel.split("-").some((item) => item === type);
36
- }
37
-
38
- public static isPpt(fileName: string): boolean {
39
- let type = this.filePostfix(fileName);
40
- return this.ppt.split("-").some((item) => item === type);
41
- }
42
-
43
- public static isVideo(fileName: string): boolean {
44
- let type = this.filePostfix(fileName);
45
- return this.video.split("-").some((item) => item === type);
46
- }
47
-
48
- public static isImage(fileName: string): boolean {
49
- let type = this.filePostfix(fileName);
50
- return this.image.split("-").some((item) => item === type);
51
- }
52
-
53
- public static isLightModel(fileName: string): boolean {
54
- let type = this.filePostfix(fileName);
55
- return this.lightModel.split("-").some((item) => item === type);
56
- }
57
-
58
- public static isOriginModel(fileName: string): boolean {
59
- let type = this.filePostfix(fileName);
60
- return this.originModel.split("-").some((item) => item === type);
61
- }
62
-
63
- public static isCatia(fileName: string): boolean {
64
- let type = this.filePostfix(fileName);
65
- return this.catia.split("-").some((item) => item === type);
66
- }
67
-
68
- public static isCatiaZip(fileName: string): boolean {
69
- let type = this.filePostfix(fileName);
70
- return this.catiaZip.split("-").some((item) => item === type);
71
- }
72
-
73
- public static isCatiaPart(fileName: string): boolean {
74
- let type = this.filePostfix(fileName);
75
- return this.catiaPart.split("-").some((item) => item === type);
76
- }
77
-
78
- public static isRevit(fileName: string): boolean {
79
- let type = this.filePostfix(fileName);
80
- return this.revit.split("-").some((item) => item === type);
81
- }
82
-
83
- public static isNaviswork(fileName: string): boolean {
84
- let type = this.filePostfix(fileName);
85
- return this.naviswork.split("-").some((item) => item === type);
86
- }
87
-
88
- public static isFbx(fileName: string): boolean {
89
- let type = this.filePostfix(fileName);
90
- return this.fbx.split("-").some((item) => item === type);
91
- }
92
-
93
- public static isDwg(fileName: string): boolean {
94
- let type = this.filePostfix(fileName);
95
- return this.dwg.split("-").some((item) => item === type);
96
- }
97
- }
@@ -1,208 +0,0 @@
1
- import axios from "../axiosRequestExport";
2
-
3
- /**
4
- * @deprecated 下载文件
5
- * @param {string} url
6
- * @param {string} filename
7
- */
8
- let handleFileDownload = (url, filename) => {
9
- // 创建 a 标签
10
- let a = document.createElement("a");
11
- a.href = url;
12
- a.download = filename;
13
- a.click();
14
- };
15
-
16
- /**
17
- * @deprecated 处理 pdf url,使其不在浏览器打开
18
- * @param {string} url
19
- */
20
- export function handlePdfLink(url, filename) {
21
- fetch(url, {
22
- method: "get",
23
- // responseType: 'arraybuffer',
24
- })
25
- .then((res) => {
26
- if (res.status !== 200) {
27
- return res.json();
28
- }
29
- return res.arrayBuffer();
30
- })
31
- .then((blobRes) => {
32
- // 生成 Blob 对象,设置 type 等信息
33
- const e = new Blob([blobRes], {
34
- type: "application/octet-stream",
35
- // 'Content-Disposition': 'attachment'
36
- });
37
- // 将 Blob 对象转为 url
38
- const link = window.URL.createObjectURL(e);
39
- handleFileDownload(link, filename);
40
- })
41
- .catch((err) => {
42
- console.error(err);
43
- });
44
- }
45
-
46
- /**
47
- * 获取文件的Base64
48
- * @param file {File} 文件
49
- * @param callback {Function} 回调函数,参数为获取到的base64
50
- */
51
- export function fileToBase64(file) {
52
- return new Promise((resolve) => {
53
- const fileReader = new FileReader();
54
- fileReader.readAsDataURL(file);
55
- fileReader.onload = (e) => {
56
- let data = e.target.result;
57
- let name = file.name;
58
- resolve({ data, name });
59
- };
60
- });
61
- }
62
-
63
- export function fileToArrayBuffer(file) {
64
- return new Promise((resolve) => {
65
- const fileReader = new FileReader();
66
- fileReader.readAsArrayBuffer(file);
67
- fileReader.onload = (e) => {
68
- let data = e.target.result;
69
- let name = file.name;
70
- resolve({ data, name });
71
- };
72
- });
73
- }
74
-
75
- export function compressImage(base64Data, compressRatio = 0.5): Promise<string> {
76
- // 目的是为了拿到 图片的宽高,方便渲染canvas的时候定义画布大小
77
- return new Promise((resolve, reject) => {
78
- const img = new Image();
79
- img.src = base64Data;
80
- // document.body.append(img);
81
- img.onload = function () {
82
- const canvas = document.createElement("canvas");
83
- const ctx = canvas.getContext("2d");
84
-
85
- let width, height;
86
- if (img.width > img.height) {
87
- width = 200;
88
- height = (200 * img.height) / img.width;
89
- } else {
90
- width = (200 * img.width) / img.height;
91
- height = 200;
92
- }
93
- canvas.width = width;
94
- canvas.height = height;
95
- ctx.drawImage(img, 0, 0, width, height); // 图片,裁剪的x,裁剪的y,宽,高
96
- const dataURL = canvas.toDataURL("image/png", compressRatio); // 第一个参数:文件类型,第二个参数:输出图片的质量 0-1
97
- // console.log(dataURL, 'dataURL');
98
- resolve(dataURL);
99
- };
100
- });
101
- }
102
-
103
- // export function imagePathToImageData(path) {
104
- // let canvas = document.createElement("canvas");
105
- // let img = document.createElement("img");
106
- // let context = canvas.getContext("2d");
107
- // img.src = path;
108
- // return new Promise<ImageData>((resolve) => {
109
- // img.onload = (e) => {
110
- // canvas.width = img.width;
111
- // canvas.height = img.height;
112
- // // 将图片按像素写入画布
113
- // context.drawImage(img, 0, 0, img.width, img.height);
114
- // // 读取图片像素信息
115
- // let image = context.getImageData(0, 0, img.width, img.height);
116
- // resolve(image);
117
- // };
118
- // });
119
- // }
120
-
121
- export function imagePathToBlob(path) {
122
- let canvas = document.createElement("canvas");
123
- let img = document.createElement("img");
124
- let context = canvas.getContext("2d");
125
- return new Promise<Blob>((resolve) => {
126
- img.src = path;
127
- img.crossOrigin = "*";
128
- img.onload = (e) => {
129
- canvas.width = img.width;
130
- canvas.height = img.height;
131
- // 将图片按像素写入画布
132
- context.drawImage(img, 0, 0, img.width, img.height);
133
- // 读取图片像素信息
134
- canvas.toBlob(
135
- (blob) => {
136
- // get content as JPEG blob
137
- // here the image is a blob
138
- resolve(blob);
139
- },
140
- "image/png",
141
- 1
142
- );
143
- };
144
- // })
145
- });
146
- }
147
-
148
- export function imagePathToImageData(path) {
149
- let canvas = document.createElement("canvas");
150
- let img = document.createElement("img");
151
- let context = canvas.getContext("2d");
152
- return new Promise<ImageData>((resolve) => {
153
- img.src = path;
154
- img.crossOrigin = "*";
155
- img.onload = (e) => {
156
- canvas.width = img.width;
157
- canvas.height = img.height;
158
- // 将图片按像素写入画布
159
- context.drawImage(img, 0, 0, img.width, img.height);
160
- // 读取图片像素信息
161
- let image = context.getImageData(0, 0, img.width, img.height);
162
- resolve(image);
163
- };
164
- // })
165
- });
166
- }
167
-
168
- export function imageDataToSrc(data, width, height): string {
169
- let canvas = document.createElement("canvas");
170
- let context = canvas.getContext("2d");
171
- canvas.height = height;
172
- canvas.width = width;
173
- let imagedata = new ImageData(new Uint8ClampedArray(data), width, height);
174
- context.putImageData(imagedata, 0, 0);
175
- return canvas.toDataURL("image/jpg");
176
- }
177
-
178
- export function threeChannelToFourChannel(imagedata): Uint8Array {
179
- let count = imagedata.length / 3;
180
- let length = count * 4;
181
- let array = new Uint8Array(length);
182
-
183
- for (let i = 0; i < count; i++) {
184
- array[i * 4] = imagedata[i * 3];
185
- array[i * 4 + 1] = imagedata[i * 3 + 1];
186
- array[i * 4 + 2] = imagedata[i * 3 + 2];
187
- array[i * 4 + 3] = 255;
188
- }
189
-
190
- return array;
191
- }
192
-
193
- export function downloadBlob(data, fileName): Promise<void> {
194
- return new Promise((resolve, reject) => {
195
- const blob = new Blob([data]);
196
- const reader = new FileReader();
197
- reader.readAsDataURL(blob);
198
- reader.onload = (e) => {
199
- const a = document.createElement("a");
200
- a.download = fileName;
201
- a.href = e.target.result as string;
202
- document.body.appendChild(a);
203
- a.click();
204
- document.body.removeChild(a);
205
- resolve();
206
- };
207
- });
208
- }