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,68 +0,0 @@
1
- import Panel from "../panel";
2
- import { Viewer } from "gs-bim-air-core/gsDevFx/viewer";
3
- import { FlashingEffect } from "gs-bim-air-core/sdk/animation";
4
-
5
- import * as Panels from "gs-bim-air-core/panels";
6
-
7
- export default class ComponentBlinkPanel extends Panels.ComponentBlinkPanel {
8
- typeName = "ComponentBlinkPanel";
9
-
10
- effect: FlashingEffect;
11
- panelComponent: Panel;
12
- constructor(viewer: Viewer) {
13
- super(viewer);
14
- }
15
-
16
- public show(): void {
17
- if (!this.panelComponent) {
18
- this.panelComponent = new Panel(this, () => import("./interfaceComponentBlinkPanel.vue"));
19
- }
20
- this.panelComponent.show();
21
- super.show();
22
- }
23
-
24
- public hide(): void {
25
- // this.effect.dispose();
26
- // this.effect = null;
27
- this.panelComponent.hide();
28
- super.hide();
29
- }
30
-
31
- // create(duration: number, color: number[]) {
32
- // let components = this.viewer.selectionManager.selectedObjects.map((item) => {
33
- // return { modelId: item.modelId, code: item.componentId };
34
- // });
35
- // this.viewer.selectionManager.clearSelectionAndHighlight();
36
- // if (this.effect) {
37
- // this.removeEffect();
38
- // }
39
- // return this.viewer
40
- // .loadEffect<FlashingEffect>({
41
- // type: "flashing",
42
- // name: "构件闪烁",
43
- // components,
44
-
45
- // options: {
46
- // duration,
47
- // color,
48
- // },
49
- // })
50
- // .then((effect) => {
51
- // this.effect = effect;
52
- // return this.effect;
53
- // });
54
- // }
55
-
56
- // removeEffect() {
57
- // this.effect.dispose();
58
- // this.effect = null;
59
- // }
60
-
61
- // saveEffect() {
62
- // return this.viewer.effectManager.addEffect(this.effect);
63
- // }
64
-
65
- // editEffect() {
66
- // return this.viewer.effectManager.editEffect(this.effect);
67
- // }
68
- }
@@ -1,140 +0,0 @@
1
- <template>
2
- <div class="interfaceComponentBlinkPanel">
3
- <div class="block">
4
- <el-form :model="blinkForm">
5
- <el-form-item label="闪烁时长:">
6
- <el-input type="number" v-model="blinkForm.binkSecond" size="mini">
7
- <template slot="append">s</template>
8
- </el-input>
9
- </el-form-item>
10
- <el-form-item label="闪烁颜色:">
11
- <el-color-picker
12
- show-alpha
13
- color-format="hex"
14
- size="small"
15
- v-model="blinkForm.color"
16
- @change="colorChange"></el-color-picker>
17
- </el-form-item>
18
- <!-- <el-form-item label="间隔时长:">
19
- <el-input type="number" v-model="blinkForm.gapSecond" size="mini">
20
- <template slot="append">s</template>
21
- </el-input>
22
- </el-form-item> -->
23
- </el-form>
24
- </div>
25
- <div class="bottom">
26
- <el-button @click="cancelClick">取消</el-button>
27
- <el-button type="primary" @click="applyClick">应用</el-button>
28
- </div>
29
- </div>
30
- </template>
31
- <script lang="ts">
32
- import { Viewer } from "gs-bim-air-core/gsDevFx/viewer";
33
- import { Vue, Component, Prop, Inject } from "vue-property-decorator";
34
- import store from "../../../store";
35
- import ComponentBlinkPanel from "./componentBlinkPanel";
36
- @Component({})
37
- export default class InterfaceComponentBlinkPanel extends Vue {
38
- @Prop() componentData;
39
- @Inject() getViewer;
40
-
41
- get viewer(): Viewer {
42
- return this.getViewer();
43
- }
44
-
45
- blinkForm = {
46
- binkSecond: 1,
47
- gapSecond: 0,
48
- color: "#ffff0080",
49
- };
50
-
51
- colorChange(val) {
52
- console.log("color", val);
53
- }
54
-
55
- cancelClick() {
56
- this.viewer.panelManager.getPanelByName<ComponentBlinkPanel>("ComponentBlinkPanel").hide();
57
- this.viewer.panelManager.getPanelByName<ComponentBlinkPanel>("ComponentBlinkPanel").removeEffect();
58
- }
59
-
60
- applyClick() {
61
- let color = this.blinkForm.color
62
- .replace("rgba(", "")
63
- .replace(")", "")
64
- .split(",")
65
- .map((item) => Number(item));
66
- this.viewer.panelManager
67
- .getPanelByName<ComponentBlinkPanel>("ComponentBlinkPanel")
68
- .create(this.blinkForm.binkSecond, color);
69
- }
70
-
71
- saveClick() {
72
- if (!this.viewer.panelManager.getPanelByName<ComponentBlinkPanel>("ComponentBlinkPanel").effect) {
73
- this.applyClick();
74
- }
75
- this.viewer.panelManager
76
- .getPanelByName<ComponentBlinkPanel>("ComponentBlinkPanel")
77
- .saveEffect()
78
- .then(() => {
79
- store.commit("toolbar/setLeftToolbarCurrentSelectedMenu", "showScene");
80
- this.viewer.panelManager.getPanelByName<ComponentBlinkPanel>("ComponentBlinkPanel").hide();
81
- });
82
- }
83
-
84
- setData() {
85
- this.$emit("setData", {
86
- icon: "goujianshanshuo",
87
- title: "构件闪烁",
88
- bottom: "10px",
89
- right: "10px",
90
- width: "340px",
91
- });
92
- }
93
-
94
- mounted() {
95
- this.setData();
96
- }
97
- }
98
- </script>
99
- <style lang="scss" scoped>
100
- @import "../../../assets/scss/site";
101
- .interfaceComponentBlinkPanel {
102
- height: 100%;
103
- .block {
104
- padding: 15px;
105
- height: calc(100% - 77px);
106
- overflow-y: auto;
107
- text-align: left;
108
-
109
- :deep(.el-input-group) {
110
- .el-input-group__prepend,
111
- .el-input-group__append {
112
- padding: 0 10px;
113
- background: rgba(255, 255, 255, 0.2);
114
- border-color: transparent;
115
- color: #fff;
116
- }
117
- &.el-input-group--prepend {
118
- .el-input__inner {
119
- border-radius: 0 5px 5px 0;
120
- }
121
- }
122
- &.el-input-group--append {
123
- .el-input__inner {
124
- border-radius: 5px 0 0 5px;
125
- &:focus {
126
- border-right: none;
127
- }
128
- }
129
- }
130
- }
131
- }
132
-
133
- .bottom {
134
- display: flex;
135
- justify-content: flex-end;
136
- border-top: 1px solid #464646;
137
- padding: 10px 15px;
138
- }
139
- }
140
- </style>
@@ -1,27 +0,0 @@
1
- import PanelStore from "../panel";
2
- import Panel from "gs-bim-air-core/panels/panel";
3
- import store from "../../../store";
4
- import { Viewer } from "gs-bim-air-core/gsDevFx/viewer";
5
-
6
- export default class ComponentInfoPanel extends Panel {
7
- typeName = "ComponentInfoPanel";
8
- panelComponent: PanelStore;
9
- constructor(viewer: Viewer) {
10
- super(viewer);
11
- }
12
-
13
- show() {
14
- if (!this.panelComponent) {
15
-
16
- this.panelComponent = new PanelStore(this, () => import("./interfaceComponentInfoPanel.vue"));
17
- }
18
- this.panelComponent.show();
19
- super.show();
20
- // this.createImage()
21
- }
22
-
23
- hide() {
24
- this.panelComponent.hide();
25
- super.hide();
26
- }
27
- }
@@ -1,98 +0,0 @@
1
- <template>
2
- <div class="ShowInfo">
3
- <div class="main">
4
- <div class="input-row">
5
- <span>构件面积:</span>
6
- <span>{{ area }}</span>
7
- </div>
8
- <div class="input-row">
9
- <span>构件体积:</span>
10
- <span>{{ volume }}</span>
11
- </div>
12
- </div>
13
-
14
- <div class="bottom">
15
- <el-button type="primary" @click="update">刷新</el-button>
16
- </div>
17
- </div>
18
- </template>
19
-
20
- <script lang="ts">
21
- import { Viewer } from "gs-bim-air-core/gsDevFx/viewer";
22
- import { Component, Inject, Prop, Vue } from "vue-property-decorator";
23
- import Longan, { Geometry, HLODComponent, List, MeshRendererComponent, Segment } from "gs-longan";
24
- import { HLODMeshMapComponent } from "gs-bim-air-core/gsDevFx/propertyComponents/hlodMeshMapComponent";
25
- import { ClusterNode } from "gs-bim-air-core/gsDevFx/objects/clusterNode";
26
-
27
- @Component({
28
- components: {},
29
- })
30
- export default class ShowComponentInfo extends Vue {
31
- @Prop() componentData;
32
-
33
- @Inject() getViewer;
34
-
35
- area = "";
36
- volume = "";
37
-
38
- get viewer(): Viewer {
39
- return this.getViewer();
40
- }
41
-
42
- update() {}
43
-
44
- setData() {
45
- this.$emit("setData", {
46
- icon: "goujianxinxi",
47
- title: "构件信息",
48
- bottom: "10px",
49
- right: "10px",
50
- });
51
- }
52
-
53
- mounted() {
54
- this.setData();
55
- }
56
- }
57
- </script>
58
-
59
- <style lang="scss" scoped>
60
- @import "../../../assets/scss/site";
61
- .ShowInfo {
62
- color: white;
63
- // min-width: 300px;
64
- height: 100%;
65
- font-size: 14px;
66
-
67
- .main {
68
- padding: 10px 0;
69
- height: calc(100% - 46px);
70
- box-sizing: border-box;
71
- overflow: auto;
72
- .input-row {
73
- padding: 5px 0;
74
- text-align: left;
75
-
76
- span {
77
- display: inline-block;
78
-
79
- &:first-child {
80
- width: 100px;
81
- text-align: right;
82
- }
83
-
84
- &:last-child {
85
- padding-left: 20px;
86
- }
87
- }
88
- }
89
- }
90
-
91
- .bottom {
92
- display: flex;
93
- justify-content: flex-end;
94
- border-top: 1px solid rgba(255, 255, 255, 0.15);
95
- padding: 10px 15px;
96
- }
97
- }
98
- </style>
@@ -1,105 +0,0 @@
1
- import Panel from "../panel";
2
-
3
- import * as Longan from "gs-longan";
4
- import { threeChannelToFourChannel, imageDataToSrc } from "../../../utils/fileUtility";
5
- import { Viewer } from "gs-bim-air-core/gsDevFx/viewer";
6
- import { modelService } from "../../../api/modelService";
7
-
8
- interface Drawings {
9
- Name: string;
10
- Items: { Name: string; Path: string; Image: string }[];
11
- }
12
-
13
- import * as Panels from "gs-bim-air-core/panels";
14
-
15
- export default class DrawingPanel extends Panels.DrawingPanel {
16
- // lightmodel = null;
17
-
18
- panelComponent: Panel;
19
- constructor(viewer: Viewer) {
20
- super(viewer);
21
- // this.componentData = [];
22
- }
23
-
24
- show() {
25
- if (!this.panelComponent) {
26
- this.panelComponent = new Panel(this, () => import("./interfaceDrawingPanel.vue"));
27
- }
28
- this.panelComponent.show();
29
-
30
- // this.componentData = [];
31
- // // this.lightmodel = this.viewer.process.findRenderObject("LightModel");
32
- // // this.getDrawingList(this.lightmodel.segment);
33
- // super.show();
34
- // console.log("this.viewer.modelIds", this.viewer.modelIds);
35
- // this.viewer.modelIds.forEach((modelId) => {
36
- // modelService.getResource(modelId, "/Extensions/2d-drawings.json").then((data: Drawings) => {
37
- // data.Items.forEach((item) => {
38
- // this.componentData.push({
39
- // modelId,
40
- // name: item.Name,
41
- // image: item.Image,
42
- // path: item.Path,
43
- // });
44
- // });
45
- // });
46
- // });
47
- }
48
-
49
- hide() {
50
- // this.lightmodel = null;
51
- // this.componentData = [];
52
- this.panelComponent.hide();
53
- super.hide();
54
- }
55
-
56
- // getDrawingList(segment: Longan.Segment) {
57
- // if (segment.subsegmentExists("main/二维图纸")) {
58
- // let darwingSegment = segment.subsegment("main/二维图纸");
59
- // let subs = darwingSegment.subsegments;
60
- // if (subs.count > 0) {
61
- // for (let i = 0; i < subs.count; i++) {
62
- // let sub = subs.items[i];
63
- // let drawing = new Drawing();
64
- // drawing.name = sub.name;
65
- // drawing.segment = sub;
66
- // let geometries = sub.geometries;
67
- // for (let j = 0; j < geometries.count; j++) {
68
- // let geometry = geometries.items[j];
69
- // if (geometry.typeName === "Image") {
70
- // let image = geometry as Longan.Image;
71
- // if (image.externalLoad && image.id) {
72
- // // let url = this.viewer.getAsynImageAction.url + image.id;
73
- // let url = image.id;
74
- // fetch(url).then((response) => {
75
- // response.blob().then((blob) => {
76
- // blob.arrayBuffer().then((buffer) => {
77
- // if (image.format === "rgb") {
78
- // let imageData = threeChannelToFourChannel(new Uint8Array(buffer));
79
- // drawing.imageSrc = imageDataToSrc(imageData, image.size.width, image.size.height);
80
- // this.componentData.push(drawing);
81
- // }
82
- // });
83
- // });
84
- // });
85
- // } else {
86
- // let imageData = image.data;
87
- // if (image.format === "rgb") {
88
- // imageData = threeChannelToFourChannel(imageData);
89
- // }
90
- // drawing.imageSrc = imageDataToSrc(imageData, image.size.width, image.size.height);
91
- // this.componentData.push(drawing);
92
- // }
93
- // }
94
- // }
95
- // }
96
- // }
97
- // }
98
- // }
99
- }
100
-
101
- // export class Drawing {
102
- // imageSrc: string;
103
- // name: string;
104
- // segment: Longan.Segment;
105
- // }
@@ -1,126 +0,0 @@
1
- <template>
2
- <div class="showDrawing">
3
- <div class="twoD-threeD-wrapper">
4
- <div class="item" v-for="(item, index) in drawingList" :key="index" @click="showDrawingClick(item)">
5
- <img :src="'data:image/png;base64,' + item.image" />
6
- <div class="mask"></div>
7
- <span>{{ item.name }}</span>
8
- </div>
9
- </div>
10
- </div>
11
- </template>
12
-
13
- <script lang="ts">
14
- import { Component, Inject, Prop, Vue } from "vue-property-decorator";
15
- import CommandShowDrawingItem from "../../commands/showDrawingItem/commandShowDrawingItem";
16
-
17
- @Component({
18
- components: {},
19
- })
20
- export default class InterfaceDrawingPanel extends Vue {
21
- @Prop() componentData;
22
- @Inject() getViewer;
23
- defaultPanelData = {};
24
- currentCommand: CommandShowDrawingItem = null;
25
-
26
- get viewer() {
27
- return this.getViewer();
28
- }
29
-
30
- get drawingList() {
31
- return this.componentData || this.defaultPanelData;
32
- }
33
-
34
- setData() {
35
- this.$emit("setData", {
36
- title: "二维图纸",
37
- bottom: "20px",
38
- right: "20px",
39
- height: "500px",
40
- width: "260px",
41
- });
42
- }
43
-
44
- mounted() {
45
- this.setData();
46
- }
47
-
48
- showDrawingClick(item) {
49
- this.currentCommand = this.viewer.process.commandManager.currentCommand;
50
- if (this.currentCommand.typeName !== "CommandShowDrawingItem") {
51
- this.currentCommand = new CommandShowDrawingItem();
52
- this.viewer.process.commandManager.execute(this.currentCommand);
53
- }
54
- setTimeout(() => {
55
- this.currentCommand.switchDrawing(item);
56
- }, 200);
57
- }
58
- }
59
- </script>
60
-
61
- <style lang="scss" scoped>
62
- @import "../../../assets/scss/site";
63
- @import "../../../assets/theme/handle";
64
-
65
- .showDrawing {
66
- color: $gs-primary-fontColor;
67
- background-color: $gs-primary-background2;
68
- display: flex;
69
- height: 100%;
70
- }
71
-
72
- .add-icon-wrapper {
73
- width: 40px;
74
- margin: auto;
75
-
76
- i {
77
- margin: auto;
78
- cursor: pointer;
79
- font-size: 25px;
80
- padding: 10px 0;
81
- }
82
- }
83
-
84
- .twoD-threeD-wrapper {
85
- position: absolute;
86
- top: 10px;
87
- bottom: 0;
88
- //width: 250px;
89
- flex: 1;
90
- overflow: auto;
91
- overflow-x: hidden;
92
-
93
- .item {
94
- padding: 0 10px 0 10px;
95
- position: relative;
96
- width: 230px;
97
- height: 140px;
98
-
99
- img {
100
- width: 100%;
101
- height: 100%;
102
- //width: 230px;
103
- //height: 140px;
104
- mask-image: linear-gradient(0deg, transparent, #a5a5a5 50%);
105
- }
106
-
107
- span {
108
- position: absolute;
109
- bottom: 20px;
110
- left: 20px;
111
- }
112
-
113
- .button-wrapper {
114
- display: inline-block;
115
- position: absolute;
116
- bottom: 10px;
117
- right: 20px;
118
-
119
- i {
120
- cursor: pointer;
121
- padding: 10px;
122
- }
123
- }
124
- }
125
- }
126
- </style>
@@ -1,80 +0,0 @@
1
- import PanelStore from "../../panel";
2
- import Panel from "gs-bim-air-core/panels/panel";
3
- import { Viewer } from "gs-bim-air-core/gsDevFx/viewer";
4
- import { FlashingEffect } from "gs-bim-air-core/sdk/animation";
5
- import { EmissiveEffectOption } from "gs-bim-air-core/sdk/animation/emissiveEffect/emissiveEffect";
6
- import emissiveEffect from "gs-bim-air-core/sdk/animation/emissiveEffect/emissiveEffect";
7
-
8
- export default class ComponentEmissivePanel extends Panel {
9
- typeName: string = "ComponentEmissivePanel";
10
- effect: emissiveEffect;
11
- panelComponent: PanelStore;
12
- constructor(viewer: Viewer) {
13
- super(viewer);
14
- }
15
-
16
- public show(): void {
17
- // this.panelComponent = new PanelStore(this, () => import("./interfaceComponentEmissivePanel.vue"));
18
- if (!this.panelComponent) {
19
- this.panelComponent = new PanelStore(this, () => import("./interfaceComponentEmissivePanel.vue"));
20
- }
21
- this.panelComponent.show();
22
- super.show();
23
- }
24
-
25
- hide() {
26
- this.panelComponent.hide();
27
- super.hide();
28
- }
29
-
30
- hexToRgb(hex) {
31
- // 移除开头的 # 符号
32
- hex = hex.replace("#", "");
33
- // 提取红、绿、蓝分量
34
- const r = parseInt(hex.substring(0, 2), 16);
35
- const g = parseInt(hex.substring(2, 4), 16);
36
- const b = parseInt(hex.substring(4, 6), 16);
37
- // 返回 RGB 数组
38
- return new Float32Array([r, g, b, 1]);
39
- }
40
-
41
- create(emissiveForm: { name: string; emissiveRank: number; emissiveRadius: number; color: string }) {
42
- let components = this.viewer.selectionManager.selectedObjects.map((item) => {
43
- return { modelId: item.modelId, code: item.componentId };
44
- });
45
- this.viewer.selectionManager.clearSelectionAndHighlight();
46
-
47
- let options: EmissiveEffectOption["options"] = {
48
- // components: components,
49
- color: Array.from(this.hexToRgb(emissiveForm.color)),
50
- radius: emissiveForm.emissiveRadius,
51
- strength: emissiveForm.emissiveRank,
52
- // components,
53
- };
54
-
55
- this.viewer
56
- .loadEffect<emissiveEffect>({
57
- name: emissiveForm.name,
58
- type: "emissive",
59
- options: options,
60
- components,
61
- })
62
- .then((effect) => {
63
- this.effect = effect;
64
- return this.effect;
65
- });
66
- }
67
-
68
- removeEffect() {
69
- this.effect.dispose();
70
- this.effect = null;
71
- }
72
-
73
- saveEffect() {
74
- return this.viewer.effectManager.addEffect(this.effect);
75
- }
76
-
77
- editEffect() {
78
- return this.viewer.effectManager.editEffect(this.effect);
79
- }
80
- }