@xeokit/xeokit-sdk 2.5.2-beta-10 → 2.5.2-beta-13

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 (462) hide show
  1. package/dist/xeokit-sdk.cjs.js +146 -132
  2. package/dist/xeokit-sdk.es.js +146 -132
  3. package/dist/xeokit-sdk.es5.js +84 -84
  4. package/dist/xeokit-sdk.min.cjs.js +1 -1
  5. package/dist/xeokit-sdk.min.es.js +1 -1
  6. package/dist/xeokit-sdk.min.es5.js +1 -1
  7. package/package.json +1 -1
  8. package/src/src/extras/ContextMenu/ContextMenu.js +907 -0
  9. package/src/src/extras/ContextMenu/index.js +1 -0
  10. package/src/src/extras/MarqueePicker/MarqueePicker.js +352 -0
  11. package/src/src/extras/MarqueePicker/MarqueePickerMouseControl.js +174 -0
  12. package/src/src/extras/MarqueePicker/index.js +2 -0
  13. package/src/src/extras/PointerLens/PointerLens.js +312 -0
  14. package/src/src/extras/PointerLens/index.js +1 -0
  15. package/src/src/extras/collision/ObjectsKdTree3.js +149 -0
  16. package/src/src/extras/collision/index.js +1 -0
  17. package/src/src/extras/index.js +4 -0
  18. package/src/src/index.js +3 -0
  19. package/src/src/plugins/AngleMeasurementsPlugin/AngleMeasurement.js +731 -0
  20. package/src/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsControl.js +84 -0
  21. package/src/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsMouseControl.js +435 -0
  22. package/src/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsPlugin.js +406 -0
  23. package/src/src/plugins/AngleMeasurementsPlugin/index.js +3 -0
  24. package/src/src/plugins/AnnotationsPlugin/Annotation.js +368 -0
  25. package/src/src/plugins/AnnotationsPlugin/AnnotationsPlugin.js +583 -0
  26. package/src/src/plugins/AnnotationsPlugin/index.js +1 -0
  27. package/src/src/plugins/AxisGizmoPlugin/AxisGizmoPlugin.js +333 -0
  28. package/src/src/plugins/AxisGizmoPlugin/index.js +1 -0
  29. package/src/src/plugins/BCFViewpointsPlugin/BCFViewpointsPlugin.js +977 -0
  30. package/src/src/plugins/BCFViewpointsPlugin/index.js +1 -0
  31. package/src/src/plugins/CityJSONLoaderPlugin/CityJSONDefaultDataSource.js +29 -0
  32. package/src/src/plugins/CityJSONLoaderPlugin/CityJSONLoaderPlugin.js +751 -0
  33. package/src/src/plugins/CityJSONLoaderPlugin/index.js +1 -0
  34. package/src/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurement.js +963 -0
  35. package/src/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsControl.js +84 -0
  36. package/src/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsMouseControl.js +399 -0
  37. package/src/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsPlugin.js +505 -0
  38. package/src/src/plugins/DistanceMeasurementsPlugin/index.js +3 -0
  39. package/src/src/plugins/FaceAlignedSectionPlanesPlugin/FaceAlignedSectionPlanesControl.js +639 -0
  40. package/src/src/plugins/FaceAlignedSectionPlanesPlugin/FaceAlignedSectionPlanesPlugin.js +436 -0
  41. package/src/src/plugins/FaceAlignedSectionPlanesPlugin/Overview.js +247 -0
  42. package/src/src/plugins/FaceAlignedSectionPlanesPlugin/Plane.js +167 -0
  43. package/src/src/plugins/FaceAlignedSectionPlanesPlugin/index.js +1 -0
  44. package/src/src/plugins/FastNavPlugin/FastNavPlugin.js +429 -0
  45. package/src/src/plugins/FastNavPlugin/index.js +1 -0
  46. package/src/src/plugins/GLTFLoaderPlugin/GLTFDefaultDataSource.js +140 -0
  47. package/src/src/plugins/GLTFLoaderPlugin/GLTFLoaderPlugin.js +421 -0
  48. package/src/src/plugins/GLTFLoaderPlugin/GLTFSceneModelLoader.js +669 -0
  49. package/src/src/plugins/GLTFLoaderPlugin/index.js +2 -0
  50. package/src/src/plugins/LASLoaderPlugin/LASDefaultDataSource.js +58 -0
  51. package/src/src/plugins/LASLoaderPlugin/LASLoaderPlugin.js +563 -0
  52. package/src/src/plugins/LASLoaderPlugin/index.js +1 -0
  53. package/src/src/plugins/LASLoaderPlugin/loadLASHeader.js +183 -0
  54. package/src/src/plugins/NavCubePlugin/CubeTextureCanvas.js +290 -0
  55. package/src/src/plugins/NavCubePlugin/NavCubePlugin.js +753 -0
  56. package/src/src/plugins/NavCubePlugin/index.js +1 -0
  57. package/src/src/plugins/OBJLoaderPlugin/OBJLoaderPlugin.js +145 -0
  58. package/src/src/plugins/OBJLoaderPlugin/OBJSceneGraphLoader.js +777 -0
  59. package/src/src/plugins/OBJLoaderPlugin/index.js +1 -0
  60. package/src/src/plugins/STLLoaderPlugin/STLDefaultDataSource.js +33 -0
  61. package/src/src/plugins/STLLoaderPlugin/STLLoaderPlugin.js +274 -0
  62. package/src/src/plugins/STLLoaderPlugin/STLSceneGraphLoader.js +313 -0
  63. package/src/src/plugins/STLLoaderPlugin/index.js +2 -0
  64. package/src/src/plugins/SectionPlanesPlugin/Control.js +1328 -0
  65. package/src/src/plugins/SectionPlanesPlugin/Overview.js +249 -0
  66. package/src/src/plugins/SectionPlanesPlugin/Plane.js +169 -0
  67. package/src/src/plugins/SectionPlanesPlugin/SectionPlanesPlugin.js +404 -0
  68. package/src/src/plugins/SectionPlanesPlugin/index.js +1 -0
  69. package/src/src/plugins/SkyboxesPlugin/SkyboxesPlugin.js +134 -0
  70. package/src/src/plugins/SkyboxesPlugin/index.js +1 -0
  71. package/src/src/plugins/StoreyViewsPlugin/Storey.js +84 -0
  72. package/src/src/plugins/StoreyViewsPlugin/StoreyMap.js +57 -0
  73. package/src/src/plugins/StoreyViewsPlugin/StoreyViewsPlugin.js +773 -0
  74. package/src/src/plugins/StoreyViewsPlugin/index.js +1 -0
  75. package/src/src/plugins/TreeViewPlugin/RenderService.js +169 -0
  76. package/src/src/plugins/TreeViewPlugin/TreeViewNode.js +101 -0
  77. package/src/src/plugins/TreeViewPlugin/TreeViewPlugin.js +1370 -0
  78. package/src/src/plugins/TreeViewPlugin/index.js +1 -0
  79. package/src/src/plugins/ViewCullPlugin/ViewCullPlugin.js +295 -0
  80. package/src/src/plugins/ViewCullPlugin/index.js +1 -0
  81. package/src/src/plugins/WebIFCLoaderPlugin/WebIFCDefaultDataSource.js +58 -0
  82. package/src/src/plugins/WebIFCLoaderPlugin/WebIFCLoaderPlugin.js +942 -0
  83. package/src/src/plugins/WebIFCLoaderPlugin/index.js +1 -0
  84. package/src/src/plugins/XKTLoaderPlugin/XKTDefaultDataSource.js +95 -0
  85. package/src/src/plugins/XKTLoaderPlugin/XKTLoaderPlugin.js +1194 -0
  86. package/src/src/plugins/XKTLoaderPlugin/index.js +2 -0
  87. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV1.js +169 -0
  88. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV10.js +660 -0
  89. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV11.js +663 -0
  90. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV2.js +230 -0
  91. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV3.js +223 -0
  92. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV4.js +283 -0
  93. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV5.js +246 -0
  94. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV6.js +301 -0
  95. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV7.js +439 -0
  96. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV8.js +563 -0
  97. package/src/src/plugins/XKTLoaderPlugin/parsers/ParserV9.js +518 -0
  98. package/src/src/plugins/XKTLoaderPlugin/parsers/lib/pako.js +2 -0
  99. package/src/src/plugins/XML3DLoaderPlugin/XML3DLoaderPlugin.js +238 -0
  100. package/src/src/plugins/XML3DLoaderPlugin/XML3DSceneGraphLoader.js +1279 -0
  101. package/src/src/plugins/XML3DLoaderPlugin/index.js +1 -0
  102. package/src/src/plugins/XML3DLoaderPlugin/zipjs/.jshintrc +11 -0
  103. package/src/src/plugins/XML3DLoaderPlugin/zipjs/deflate.js +2060 -0
  104. package/src/src/plugins/XML3DLoaderPlugin/zipjs/inflate.js +2155 -0
  105. package/src/src/plugins/XML3DLoaderPlugin/zipjs/mime-types.js +1002 -0
  106. package/src/src/plugins/XML3DLoaderPlugin/zipjs/pako/codecs.js +64 -0
  107. package/src/src/plugins/XML3DLoaderPlugin/zipjs/z-worker.js +153 -0
  108. package/src/src/plugins/XML3DLoaderPlugin/zipjs/zip-ext.js +267 -0
  109. package/src/src/plugins/XML3DLoaderPlugin/zipjs/zip-fs.js +553 -0
  110. package/src/src/plugins/XML3DLoaderPlugin/zipjs/zip.js +991 -0
  111. package/src/src/plugins/XML3DLoaderPlugin/zipjs/zlib-asm/codecs.js +49 -0
  112. package/src/src/plugins/index.js +21 -0
  113. package/src/src/plugins/lib/culling/ObjectCullStates.js +208 -0
  114. package/src/src/plugins/lib/earcut.js +677 -0
  115. package/src/src/plugins/lib/html/Dot.js +179 -0
  116. package/src/src/plugins/lib/html/Label.js +174 -0
  117. package/src/src/plugins/lib/html/Wire.js +220 -0
  118. package/src/src/viewer/Configs.js +127 -0
  119. package/src/src/viewer/Plugin.js +233 -0
  120. package/src/src/viewer/Viewer.js +542 -0
  121. package/src/src/viewer/index.js +5 -0
  122. package/src/src/viewer/localization/LocaleService.js +475 -0
  123. package/src/src/viewer/metadata/IFCObjectDefaultColors.js +163 -0
  124. package/src/src/viewer/metadata/IFCObjectDefaults.js +17 -0
  125. package/src/src/viewer/metadata/MetaModel.js +414 -0
  126. package/src/src/viewer/metadata/MetaObject.js +223 -0
  127. package/src/src/viewer/metadata/MetaScene.js +336 -0
  128. package/src/src/viewer/metadata/Property.js +55 -0
  129. package/src/src/viewer/metadata/PropertySet.js +77 -0
  130. package/src/src/viewer/scene/Bitmap/Bitmap.js +473 -0
  131. package/src/src/viewer/scene/Bitmap/index.js +1 -0
  132. package/src/src/viewer/scene/CameraControl/CameraControl.js +1750 -0
  133. package/src/src/viewer/scene/CameraControl/lib/CameraUpdater.js +312 -0
  134. package/src/src/viewer/scene/CameraControl/lib/controllers/PanController.js +112 -0
  135. package/src/src/viewer/scene/CameraControl/lib/controllers/PickController.js +265 -0
  136. package/src/src/viewer/scene/CameraControl/lib/controllers/PivotController.js +384 -0
  137. package/src/src/viewer/scene/CameraControl/lib/handlers/KeyboardAxisViewHandler.js +122 -0
  138. package/src/src/viewer/scene/CameraControl/lib/handlers/KeyboardPanRotateDollyHandler.js +183 -0
  139. package/src/src/viewer/scene/CameraControl/lib/handlers/MouseMiscHandler.js +68 -0
  140. package/src/src/viewer/scene/CameraControl/lib/handlers/MousePanRotateDollyHandler.js +345 -0
  141. package/src/src/viewer/scene/CameraControl/lib/handlers/MousePickHandler.js +376 -0
  142. package/src/src/viewer/scene/CameraControl/lib/handlers/TouchPanRotateAndDollyHandler.js +288 -0
  143. package/src/src/viewer/scene/CameraControl/lib/handlers/TouchPickHandler.js +235 -0
  144. package/src/src/viewer/scene/Component.js +915 -0
  145. package/src/src/viewer/scene/Entity.js +502 -0
  146. package/src/src/viewer/scene/ImagePlane/ImagePlane.js +570 -0
  147. package/src/src/viewer/scene/ImagePlane/index.js +1 -0
  148. package/src/src/viewer/scene/LineSet/LineSet.js +163 -0
  149. package/src/src/viewer/scene/LineSet/index.js +1 -0
  150. package/src/src/viewer/scene/camera/Camera.js +912 -0
  151. package/src/src/viewer/scene/camera/CameraFlightAnimation.js +669 -0
  152. package/src/src/viewer/scene/camera/CameraPath.js +194 -0
  153. package/src/src/viewer/scene/camera/CameraPathAnimation.js +326 -0
  154. package/src/src/viewer/scene/camera/CustomProjection.js +149 -0
  155. package/src/src/viewer/scene/camera/Frustum.js +316 -0
  156. package/src/src/viewer/scene/camera/Ortho.js +286 -0
  157. package/src/src/viewer/scene/camera/Perspective.js +304 -0
  158. package/src/src/viewer/scene/camera/index.js +2 -0
  159. package/src/src/viewer/scene/canvas/Canvas.js +490 -0
  160. package/src/src/viewer/scene/canvas/Spinner.js +323 -0
  161. package/src/src/viewer/scene/constants/constants.js +371 -0
  162. package/src/src/viewer/scene/core.js +268 -0
  163. package/src/src/viewer/scene/geometry/Geometry.js +33 -0
  164. package/src/src/viewer/scene/geometry/ReadableGeometry.js +682 -0
  165. package/src/src/viewer/scene/geometry/VBOGeometry.js +319 -0
  166. package/src/src/viewer/scene/geometry/builders/buildBoxGeometry.js +238 -0
  167. package/src/src/viewer/scene/geometry/builders/buildBoxLinesGeometry.js +106 -0
  168. package/src/src/viewer/scene/geometry/builders/buildCylinderGeometry.js +271 -0
  169. package/src/src/viewer/scene/geometry/builders/buildGridGeometry.js +102 -0
  170. package/src/src/viewer/scene/geometry/builders/buildPlaneGeometry.js +168 -0
  171. package/src/src/viewer/scene/geometry/builders/buildSphereGeometry.js +161 -0
  172. package/src/src/viewer/scene/geometry/builders/buildTorusGeometry.js +172 -0
  173. package/src/src/viewer/scene/geometry/builders/buildVectorTextGeometry.js +1721 -0
  174. package/src/src/viewer/scene/geometry/builders/index.js +8 -0
  175. package/src/src/viewer/scene/geometry/index.js +4 -0
  176. package/src/src/viewer/scene/geometry/loaders/index.js +2 -0
  177. package/src/src/viewer/scene/geometry/loaders/load3DSGeometry.js +103 -0
  178. package/src/src/viewer/scene/geometry/loaders/loadOBJGeometry.js +130 -0
  179. package/src/src/viewer/scene/index.js +21 -0
  180. package/src/src/viewer/scene/input/Input.js +1333 -0
  181. package/src/src/viewer/scene/libs/k3d.js +1032 -0
  182. package/src/src/viewer/scene/lights/AmbientLight.js +175 -0
  183. package/src/src/viewer/scene/lights/CubeTexture.js +156 -0
  184. package/src/src/viewer/scene/lights/DirLight.js +314 -0
  185. package/src/src/viewer/scene/lights/Light.js +29 -0
  186. package/src/src/viewer/scene/lights/LightMap.js +77 -0
  187. package/src/src/viewer/scene/lights/PointLight.js +395 -0
  188. package/src/src/viewer/scene/lights/ReflectionMap.js +79 -0
  189. package/src/src/viewer/scene/lights/Shadow.js +138 -0
  190. package/src/src/viewer/scene/lights/index.js +5 -0
  191. package/src/src/viewer/scene/marker/Marker.js +383 -0
  192. package/src/src/viewer/scene/marker/SpriteMarker.js +356 -0
  193. package/src/src/viewer/scene/marker/index.js +2 -0
  194. package/src/src/viewer/scene/materials/EdgeMaterial.js +359 -0
  195. package/src/src/viewer/scene/materials/EmphasisMaterial.js +613 -0
  196. package/src/src/viewer/scene/materials/Fresnel.js +222 -0
  197. package/src/src/viewer/scene/materials/LambertMaterial.js +378 -0
  198. package/src/src/viewer/scene/materials/LinesMaterial.js +169 -0
  199. package/src/src/viewer/scene/materials/Material.js +39 -0
  200. package/src/src/viewer/scene/materials/MetallicMaterial.js +820 -0
  201. package/src/src/viewer/scene/materials/PhongMaterial.js +860 -0
  202. package/src/src/viewer/scene/materials/PointsMaterial.js +409 -0
  203. package/src/src/viewer/scene/materials/SpecularMaterial.js +807 -0
  204. package/src/src/viewer/scene/materials/Texture.js +513 -0
  205. package/src/src/viewer/scene/materials/index.js +8 -0
  206. package/src/src/viewer/scene/math/Frustum.js +118 -0
  207. package/src/src/viewer/scene/math/buildEdgeIndices.js +162 -0
  208. package/src/src/viewer/scene/math/geometryCompressionUtils.js +365 -0
  209. package/src/src/viewer/scene/math/index.js +3 -0
  210. package/src/src/viewer/scene/math/math.js +5386 -0
  211. package/src/src/viewer/scene/math/rtcCoords.js +139 -0
  212. package/src/src/viewer/scene/mementos/CameraMemento.js +200 -0
  213. package/src/src/viewer/scene/mementos/ModelMemento.js +263 -0
  214. package/src/src/viewer/scene/mementos/ObjectsMemento.js +259 -0
  215. package/src/src/viewer/scene/mementos/index.js +3 -0
  216. package/src/src/viewer/scene/mesh/Mesh.js +2202 -0
  217. package/src/src/viewer/scene/mesh/draw/DrawRenderer.js +996 -0
  218. package/src/src/viewer/scene/mesh/draw/DrawShaderSource.js +1570 -0
  219. package/src/src/viewer/scene/mesh/emphasis/EmphasisEdgesRenderer.js +259 -0
  220. package/src/src/viewer/scene/mesh/emphasis/EmphasisEdgesShaderSource.js +159 -0
  221. package/src/src/viewer/scene/mesh/emphasis/EmphasisFillRenderer.js +286 -0
  222. package/src/src/viewer/scene/mesh/emphasis/EmphasisFillShaderSource.js +262 -0
  223. package/src/src/viewer/scene/mesh/index.js +1 -0
  224. package/src/src/viewer/scene/mesh/occlusion/OcclusionRenderer.js +217 -0
  225. package/src/src/viewer/scene/mesh/occlusion/OcclusionShaderSource.js +157 -0
  226. package/src/src/viewer/scene/mesh/pick/PickMeshRenderer.js +223 -0
  227. package/src/src/viewer/scene/mesh/pick/PickMeshShaderSource.js +151 -0
  228. package/src/src/viewer/scene/mesh/pick/PickTriangleRenderer.js +200 -0
  229. package/src/src/viewer/scene/mesh/pick/PickTriangleShaderSource.js +124 -0
  230. package/src/src/viewer/scene/mesh/shadow/ShadowRenderer.js +214 -0
  231. package/src/src/viewer/scene/mesh/shadow/ShadowShaderSource.js +98 -0
  232. package/src/src/viewer/scene/metriqs/Metriqs.js +259 -0
  233. package/src/src/viewer/scene/model/ENTITY_FLAGS.js +21 -0
  234. package/src/src/viewer/scene/model/PerformanceModel.js +26 -0
  235. package/src/src/viewer/scene/model/RENDER_PASSES.js +34 -0
  236. package/src/src/viewer/scene/model/SceneModel.js +4018 -0
  237. package/src/src/viewer/scene/model/SceneModelEntity.js +715 -0
  238. package/src/src/viewer/scene/model/SceneModelMesh.js +341 -0
  239. package/src/src/viewer/scene/model/SceneModelTexture.js +38 -0
  240. package/src/src/viewer/scene/model/SceneModelTextureSet.js +59 -0
  241. package/src/src/viewer/scene/model/SceneModelTransform.js +404 -0
  242. package/src/src/viewer/scene/model/VBOSceneModel.js +26 -0
  243. package/src/src/viewer/scene/model/calculateUniquePositions.js +126 -0
  244. package/src/src/viewer/scene/model/compression.js +227 -0
  245. package/src/src/viewer/scene/model/dtx/BindableDataTexture.js +31 -0
  246. package/src/src/viewer/scene/model/dtx/lines/DTXLinesBuffer.js +27 -0
  247. package/src/src/viewer/scene/model/dtx/lines/DTXLinesLayer.js +891 -0
  248. package/src/src/viewer/scene/model/dtx/lines/DTXLinesState.js +46 -0
  249. package/src/src/viewer/scene/model/dtx/lines/DTXLinesTextureFactory.js +411 -0
  250. package/src/src/viewer/scene/model/dtx/lines/dataTextureRamStats.js +49 -0
  251. package/src/src/viewer/scene/model/dtx/lines/rebucketPositions.js +208 -0
  252. package/src/src/viewer/scene/model/dtx/lines/renderers/DTXLinesColorRenderer.js +389 -0
  253. package/src/src/viewer/scene/model/dtx/lines/renderers/DTXLinesRenderers.js +65 -0
  254. package/src/src/viewer/scene/model/dtx/triangles/DTXTrianglesLayer.js +1322 -0
  255. package/src/src/viewer/scene/model/dtx/triangles/lib/DTXTrianglesBuffer.js +46 -0
  256. package/src/src/viewer/scene/model/dtx/triangles/lib/DTXTrianglesState.js +250 -0
  257. package/src/src/viewer/scene/model/dtx/triangles/lib/DTXTrianglesTextureFactory.js +518 -0
  258. package/src/src/viewer/scene/model/dtx/triangles/lib/dataTextureRamStats.js +54 -0
  259. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesColorRenderer.js +619 -0
  260. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesDepthRenderer.js +464 -0
  261. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesEdgesColorRenderer.js +414 -0
  262. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesEdgesRenderer.js +422 -0
  263. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesNormalsRenderer.js +345 -0
  264. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesOcclusionRenderer.js +436 -0
  265. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesPickDepthRenderer.js +462 -0
  266. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesPickMeshRenderer.js +436 -0
  267. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesPickNormalsFlatRenderer.js +455 -0
  268. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesPickNormalsRenderer.js +440 -0
  269. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesRenderers.js +307 -0
  270. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesSilhouetteRenderer.js +465 -0
  271. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesSnapInitRenderer.js +466 -0
  272. package/src/src/viewer/scene/model/dtx/triangles/renderers/DTXTrianglesSnapRenderer.js +427 -0
  273. package/src/src/viewer/scene/model/index.js +5 -0
  274. package/src/src/viewer/scene/model/rebucketPositions.js +354 -0
  275. package/src/src/viewer/scene/model/vbo/ScratchMemory.js +63 -0
  276. package/src/src/viewer/scene/model/vbo/VBORenderer.js +646 -0
  277. package/src/src/viewer/scene/model/vbo/batching/lines/VBOBatchingLinesLayer.js +699 -0
  278. package/src/src/viewer/scene/model/vbo/batching/lines/lib/VBOBatchingLinesBuffer.js +19 -0
  279. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOBatchingLineSnapInitRenderer.js +316 -0
  280. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOBatchingLinesColorRenderer.js +114 -0
  281. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOBatchingLinesRenderers.js +99 -0
  282. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOBatchingLinesSilhouetteRenderer.js +124 -0
  283. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOBatchingLinesSnapInitRenderer.js +311 -0
  284. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOBatchingLinesSnapRenderer.js +309 -0
  285. package/src/src/viewer/scene/model/vbo/batching/lines/renderers/VBOSceneModelLineBatchingRenderer.js +24 -0
  286. package/src/src/viewer/scene/model/vbo/batching/points/VBOBatchingPointsBuffer.js +20 -0
  287. package/src/src/viewer/scene/model/vbo/batching/points/VBOBatchingPointsLayer.js +718 -0
  288. package/src/src/viewer/scene/model/vbo/batching/points/VBOBatchingPointsRenderer.js +24 -0
  289. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsColorRenderer.js +168 -0
  290. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsOcclusionRenderer.js +136 -0
  291. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsPickDepthRenderer.js +156 -0
  292. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsPickMeshRenderer.js +148 -0
  293. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsRenderers.js +144 -0
  294. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsShadowRenderer.js +107 -0
  295. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsSilhouetteRenderer.js +146 -0
  296. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsSnapInitRenderer.js +309 -0
  297. package/src/src/viewer/scene/model/vbo/batching/points/renderers/VBOBatchingPointsSnapRenderer.js +303 -0
  298. package/src/src/viewer/scene/model/vbo/batching/triangles/VBOBatchingTrianglesBuffer.js +24 -0
  299. package/src/src/viewer/scene/model/vbo/batching/triangles/VBOBatchingTrianglesLayer.js +1257 -0
  300. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesEdgesColorRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/EdgesColorRenderer.js} +6 -2
  301. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesEdgesRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/EdgesEmphasisRenderer.js} +6 -4
  302. package/src/src/viewer/scene/model/vbo/batching/triangles/renderers/EdgesRenderer.js +12 -0
  303. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesRenderers.js → src/viewer/scene/model/vbo/batching/triangles/renderers/Renderers.js} +45 -45
  304. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesBatchingRenderer.js} +4 -3
  305. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesColorRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesColorRenderer.js} +2 -2
  306. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesColorTextureRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesColorTextureRenderer.js} +2 -2
  307. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesDepthRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesDepthRenderer.js} +2 -2
  308. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesFlatColorRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesFlatColorRenderer.js} +2 -2
  309. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesNormalsRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesNormalsRenderer.js} +2 -2
  310. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesOcclusionRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesOcclusionRenderer.js} +2 -2
  311. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesPBRRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPBRRenderer.js} +2 -2
  312. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesPickDepthRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickDepthRenderer.js} +2 -2
  313. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesPickMeshRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickMeshRenderer.js} +2 -2
  314. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesPickNormalsFlatRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickNormalsFlatRenderer.js} +2 -2
  315. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesPickNormalsRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickNormalsRenderer.js} +2 -2
  316. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesShadowRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesShadowRenderer.js} +2 -2
  317. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesSilhouetteRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesSilhouetteRenderer.js} +3 -3
  318. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesSnapInitRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesSnapInitRenderer.js} +1 -1
  319. package/src/{viewer/scene/model/vbo/batching/triangles/renderers/VBOBatchingTrianglesSnapRenderer.js → src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesSnapRenderer.js} +1 -1
  320. package/src/src/viewer/scene/model/vbo/float16.js +760 -0
  321. package/src/src/viewer/scene/model/vbo/instancing/lines/VBOInstancingLinesLayer.js +704 -0
  322. package/src/src/viewer/scene/model/vbo/instancing/lines/renderers/VBOInstancingLinesColorRenderer.js +148 -0
  323. package/src/src/viewer/scene/model/vbo/instancing/lines/renderers/VBOInstancingLinesRenderer.js +26 -0
  324. package/src/src/viewer/scene/model/vbo/instancing/lines/renderers/VBOInstancingLinesRenderers.js +139 -0
  325. package/src/src/viewer/scene/model/vbo/instancing/lines/renderers/VBOInstancingLinesSilhouetteRenderer.js +127 -0
  326. package/src/src/viewer/scene/model/vbo/instancing/lines/renderers/VBOInstancingLinesSnapInitRenderer.js +331 -0
  327. package/src/src/viewer/scene/model/vbo/instancing/lines/renderers/VBOInstancingLinesSnapRenderer.js +316 -0
  328. package/src/src/viewer/scene/model/vbo/instancing/points/VBOInstancingPointsLayer.js +728 -0
  329. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsColorRenderer.js +174 -0
  330. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsDepthRenderer.js +156 -0
  331. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsOcclusionRenderer.js +149 -0
  332. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsPickDepthRenderer.js +170 -0
  333. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsPickMeshRenderer.js +152 -0
  334. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsRenderer.js +26 -0
  335. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsRenderers.js +174 -0
  336. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsShadowRenderer.js +119 -0
  337. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsSilhouetteRenderer.js +154 -0
  338. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsSnapInitRenderer.js +330 -0
  339. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingPointsSnapRenderer.js +311 -0
  340. package/src/src/viewer/scene/model/vbo/instancing/points/renderers/VBOInstancingTrianglesRenderer.js +150 -0
  341. package/src/src/viewer/scene/model/vbo/instancing/triangles/VBOInstancingTrianglesLayer.js +1190 -0
  342. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesEdgesColorRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/EdgesColorRenderer.js} +8 -4
  343. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesEdgesRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/EdgesEmphasisRenderer.js} +8 -5
  344. package/src/src/viewer/scene/model/vbo/instancing/triangles/renderers/EdgesRenderer.js +12 -0
  345. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesRenderers.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/Renderers.js} +45 -45
  346. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesColorRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesColorRenderer.js} +3 -3
  347. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesColorTextureRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesColorTextureRenderer.js} +2 -2
  348. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesDepthRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesDepthRenderer.js} +2 -2
  349. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesFlatColorRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesFlatColorRenderer.js} +2 -2
  350. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesFlatNormalsRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesFlatNormalsRenderer.js} +2 -2
  351. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOSceneModelTriangleInstancingRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesInstancingRenderer.js} +1 -1
  352. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesNormalsRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesNormalsRenderer.js} +2 -2
  353. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesOcclusionRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesOcclusionRenderer.js} +2 -2
  354. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesPBRRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPBRRenderer.js} +2 -2
  355. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesPickDepthRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickDepthRenderer.js} +2 -2
  356. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesPickMeshRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickMeshRenderer.js} +2 -2
  357. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesPickNormalsFlatRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickNormalsFlatRenderer.js} +2 -2
  358. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesPickNormalsRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickNormalsRenderer.js} +2 -2
  359. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesShadowRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesShadowRenderer.js} +2 -2
  360. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesSilhouetteRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesSilhouetteRenderer.js} +2 -2
  361. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesSnapInitRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesSnapInitRenderer.js} +1 -1
  362. package/src/{viewer/scene/model/vbo/instancing/triangles/renderers/VBOInstancingTrianglesSnapRenderer.js → src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesSnapRenderer.js} +1 -1
  363. package/src/src/viewer/scene/nodes/Node.js +1383 -0
  364. package/src/src/viewer/scene/nodes/index.js +1 -0
  365. package/src/src/viewer/scene/paths/CubicBezierCurve.js +194 -0
  366. package/src/src/viewer/scene/paths/Curve.js +183 -0
  367. package/src/src/viewer/scene/paths/Path.js +239 -0
  368. package/src/src/viewer/scene/paths/QuadraticBezierCurve.js +161 -0
  369. package/src/src/viewer/scene/paths/SplineCurve.js +133 -0
  370. package/src/src/viewer/scene/paths/index.js +5 -0
  371. package/src/src/viewer/scene/postfx/SAO.js +543 -0
  372. package/src/src/viewer/scene/scene/Scene.js +2802 -0
  373. package/src/src/viewer/scene/sectionPlane/SectionPlane.js +198 -0
  374. package/src/src/viewer/scene/sectionPlane/SectionPlaneCache.js +101 -0
  375. package/src/src/viewer/scene/sectionPlane/index.js +1 -0
  376. package/src/src/viewer/scene/skybox/Skybox.js +123 -0
  377. package/src/src/viewer/scene/skybox/index.js +1 -0
  378. package/src/src/viewer/scene/stats.js +44 -0
  379. package/src/src/viewer/scene/utils/Cache.js +29 -0
  380. package/src/src/viewer/scene/utils/FileLoader.js +161 -0
  381. package/src/src/viewer/scene/utils/Loader.js +55 -0
  382. package/src/src/viewer/scene/utils/LoadingManager.js +86 -0
  383. package/src/src/viewer/scene/utils/Map.js +45 -0
  384. package/src/src/viewer/scene/utils/Queue.js +56 -0
  385. package/src/src/viewer/scene/utils/WorkerPool.js +73 -0
  386. package/src/src/viewer/scene/utils/index.js +6 -0
  387. package/src/src/viewer/scene/utils/textureTranscoders/KTX2TextureTranscoder/KTX2TextureTranscoder.js +650 -0
  388. package/src/src/viewer/scene/utils/textureTranscoders/KTX2TextureTranscoder/index.js +1 -0
  389. package/src/src/viewer/scene/utils/textureTranscoders/TextureTranscoder.js +31 -0
  390. package/src/src/viewer/scene/utils/textureTranscoders/index.js +2 -0
  391. package/src/src/viewer/scene/utils.js +453 -0
  392. package/src/src/viewer/scene/viewport/Viewport.js +212 -0
  393. package/src/src/viewer/scene/webgl/ArrayBuf.js +121 -0
  394. package/src/src/viewer/scene/webgl/Attribute.js +23 -0
  395. package/src/src/viewer/scene/webgl/Drawable.js +270 -0
  396. package/src/src/viewer/scene/webgl/FrameContext.js +313 -0
  397. package/src/src/viewer/scene/webgl/PickResult.js +364 -0
  398. package/src/src/viewer/scene/webgl/Pickable.js +69 -0
  399. package/src/src/viewer/scene/webgl/Program.js +181 -0
  400. package/src/src/viewer/scene/webgl/RenderBuffer.js +378 -0
  401. package/src/src/viewer/scene/webgl/RenderBufferManager.js +34 -0
  402. package/src/src/viewer/scene/webgl/RenderFlags.js +203 -0
  403. package/src/src/viewer/scene/webgl/RenderState.js +40 -0
  404. package/src/src/viewer/scene/webgl/Renderer.js +1781 -0
  405. package/src/src/viewer/scene/webgl/Sampler.js +18 -0
  406. package/src/src/viewer/scene/webgl/Shader.js +49 -0
  407. package/src/src/viewer/scene/webgl/Texture2D.js +442 -0
  408. package/src/src/viewer/scene/webgl/convertConstant.js +244 -0
  409. package/src/src/viewer/scene/webgl/getExtension.js +32 -0
  410. package/src/src/viewer/scene/webgl/occlusion/OcclusionLayer.js +214 -0
  411. package/src/src/viewer/scene/webgl/occlusion/OcclusionTester.js +426 -0
  412. package/src/src/viewer/scene/webgl/sao/SAODepthLimitedBlurRenderer.js +324 -0
  413. package/src/src/viewer/scene/webgl/sao/SAOOcclusionRenderer.js +376 -0
  414. package/src/src/viewer/scene/webgl/webglEnums.js +61 -0
  415. package/src/src/viewer/scene/webglInfo.js +47 -0
  416. package/src/viewer/scene/model/SceneModel.js +1 -1
  417. package/src/viewer/scene/model/vbo/batching/triangles/VBOBatchingTrianglesLayer.js +1 -1
  418. package/src/viewer/scene/model/vbo/batching/triangles/renderers/EdgesColorRenderer.js +131 -0
  419. package/src/viewer/scene/model/vbo/batching/triangles/renderers/EdgesEmphasisRenderer.js +135 -0
  420. package/src/viewer/scene/model/vbo/batching/triangles/renderers/EdgesRenderer.js +12 -0
  421. package/src/viewer/scene/model/vbo/batching/triangles/renderers/Renderers.js +375 -0
  422. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesBatchingRenderer.js +34 -0
  423. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesColorRenderer.js +238 -0
  424. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesColorTextureRenderer.js +270 -0
  425. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesDepthRenderer.js +126 -0
  426. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesFlatColorRenderer.js +235 -0
  427. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesNormalsRenderer.js +139 -0
  428. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesOcclusionRenderer.js +125 -0
  429. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPBRRenderer.js +561 -0
  430. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickDepthRenderer.js +144 -0
  431. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickMeshRenderer.js +130 -0
  432. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickNormalsFlatRenderer.js +121 -0
  433. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesPickNormalsRenderer.js +131 -0
  434. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesShadowRenderer.js +107 -0
  435. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesSilhouetteRenderer.js +136 -0
  436. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesSnapInitRenderer.js +311 -0
  437. package/src/viewer/scene/model/vbo/batching/triangles/renderers/TrianglesSnapRenderer.js +308 -0
  438. package/src/viewer/scene/model/vbo/instancing/triangles/VBOInstancingTrianglesLayer.js +1 -1
  439. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/EdgesColorRenderer.js +136 -0
  440. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/EdgesEmphasisRenderer.js +137 -0
  441. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/EdgesRenderer.js +12 -0
  442. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/Renderers.js +376 -0
  443. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesColorRenderer.js +253 -0
  444. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesColorTextureRenderer.js +278 -0
  445. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesDepthRenderer.js +126 -0
  446. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesFlatColorRenderer.js +244 -0
  447. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesFlatNormalsRenderer.js +130 -0
  448. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesInstancingRenderer.js +29 -0
  449. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesNormalsRenderer.js +138 -0
  450. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesOcclusionRenderer.js +128 -0
  451. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPBRRenderer.js +561 -0
  452. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickDepthRenderer.js +149 -0
  453. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickMeshRenderer.js +136 -0
  454. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickNormalsFlatRenderer.js +130 -0
  455. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesPickNormalsRenderer.js +145 -0
  456. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesShadowRenderer.js +113 -0
  457. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesSilhouetteRenderer.js +139 -0
  458. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesSnapInitRenderer.js +342 -0
  459. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/TrianglesSnapRenderer.js +325 -0
  460. package/src/viewer/scene/webgl/Renderer.js +20 -19
  461. package/src/viewer/scene/model/vbo/batching/triangles/renderers/VBOSceneModelTriangleBatchingEdgesRenderer.js +0 -12
  462. package/src/viewer/scene/model/vbo/instancing/triangles/renderers/VBOSceneModelTriangleInstancingEdgesRenderer.js +0 -12
@@ -0,0 +1,404 @@
1
+ import {math} from "../../viewer/scene/math/math.js";
2
+ import {Plugin} from "../../viewer/Plugin.js";
3
+ import {SectionPlane} from "../../viewer/scene/sectionPlane/SectionPlane.js";
4
+ import {Control} from "./Control.js";
5
+ import {Overview} from "./Overview.js";
6
+
7
+ const tempAABB = math.AABB3();
8
+ const tempVec3 = math.vec3();
9
+
10
+ /**
11
+ * SectionPlanesPlugin is a {@link Viewer} plugin that manages {@link SectionPlane}s.
12
+ *
13
+ * [<img src="https://user-images.githubusercontent.com/83100/57724962-406e9a00-768c-11e9-9f1f-3d178a3ec11f.gif">](https://xeokit.github.io/xeokit-sdk/examples/#gizmos_SectionPlanesPlugin)
14
+ *
15
+ * [[Run this example](https://xeokit.github.io/xeokit-sdk/examples/#gizmos_SectionPlanesPlugin)]
16
+ *
17
+ * ## Overview
18
+ *
19
+ * * Use the SectionPlanesPlugin to
20
+ * create and edit {@link SectionPlane}s to slice portions off your models and reveal internal structures.
21
+ * * As shown in the screen capture above, SectionPlanesPlugin shows an overview of all your SectionPlanes (on the right, in
22
+ * this example).
23
+ * * Click a plane in the overview to activate a 3D control with which you can interactively
24
+ * reposition its SectionPlane in the main canvas.
25
+ * * Use {@lin BCFViewpointsPlugin} to save and load SectionPlanes in BCF viewpoints.
26
+ *
27
+ * ## Usage
28
+ *
29
+ * In the example below, we'll use a {@link GLTFLoaderPlugin} to load a model, and a SectionPlanesPlugin
30
+ * to slice it open with two {@link SectionPlane}s. We'll show the overview in the bottom right of the Viewer
31
+ * canvas. Finally, we'll programmatically activate the 3D editing control, so that we can use it to interactively
32
+ * reposition our second SectionPlane.
33
+ *
34
+ * ````JavaScript
35
+ * import {Viewer, GLTFLoaderPlugin, SectionPlanesPlugin} from "xeokit-sdk.es.js";
36
+ *
37
+ * // Create a Viewer and arrange its Camera
38
+ *
39
+ * const viewer = new Viewer({
40
+ * canvasId: "myCanvas"
41
+ * });
42
+ *
43
+ * viewer.camera.eye = [-5.02, 2.22, 15.09];
44
+ * viewer.camera.look = [4.97, 2.79, 9.89];
45
+ * viewer.camera.up = [-0.05, 0.99, 0.02];
46
+ *
47
+ *
48
+ * // Add a GLTFLoaderPlugin
49
+ *
50
+ * const gltfLoader = new GLTFLoaderPlugin(viewer);
51
+ *
52
+ * // Add a SectionPlanesPlugin, with overview visible
53
+ *
54
+ * const sectionPlanes = new SectionPlanesPlugin(viewer, {
55
+ * overviewCanvasID: "myOverviewCanvas",
56
+ * overviewVisible: true
57
+ * });
58
+ *
59
+ * // Load a model
60
+ *
61
+ * const model = gltfLoader.load({
62
+ * id: "myModel",
63
+ * src: "./models/gltf/schependomlaan/scene.gltf"
64
+ * });
65
+ *
66
+ * // Create a couple of section planes
67
+ * // These will be shown in the overview
68
+ *
69
+ * sectionPlanes.createSectionPlane({
70
+ * id: "mySectionPlane",
71
+ * pos: [1.04, 1.95, 9.74],
72
+ * dir: [1.0, 0.0, 0.0]
73
+ * });
74
+ *
75
+ * sectionPlanes.createSectionPlane({
76
+ * id: "mySectionPlane2",
77
+ * pos: [2.30, 4.46, 14.93],
78
+ * dir: [0.0, -0.09, -0.79]
79
+ * });
80
+ *
81
+ * // Show the SectionPlanePlugin's 3D editing gizmo,
82
+ * // to interactively reposition one of our SectionPlanes
83
+ *
84
+ * sectionPlanes.showControl("mySectionPlane2");
85
+ *
86
+ * const mySectionPlane2 = sectionPlanes.sectionPlanes["mySectionPlane2"];
87
+ *
88
+ * // Programmatically reposition one of our SectionPlanes
89
+ * // This also updates its position as shown in the overview gizmo
90
+ *
91
+ * mySectionPlane2.pos = [11.0, 6.0, -12];
92
+ * mySectionPlane2.dir = [0.4, 0.0, 0.5];
93
+ * ````
94
+ */
95
+ class SectionPlanesPlugin extends Plugin {
96
+
97
+ /**
98
+ * @constructor
99
+ * @param {Viewer} viewer The Viewer.
100
+ * @param {Object} cfg Plugin configuration.
101
+ * @param {String} [cfg.id="SectionPlanes"] Optional ID for this plugin, so that we can find it within {@link Viewer#plugins}.
102
+ * @param {String} [cfg.overviewCanvasId] ID of a canvas element to display the overview.
103
+ * @param {String} [cfg.overviewVisible=true] Initial visibility of the overview canvas.
104
+ */
105
+ constructor(viewer, cfg = {}) {
106
+
107
+ super("SectionPlanes", viewer);
108
+
109
+ this._freeControls = [];
110
+ this._sectionPlanes = viewer.scene.sectionPlanes;
111
+ this._controls = {};
112
+ this._shownControlId = null;
113
+
114
+ if (cfg.overviewCanvasId !== null && cfg.overviewCanvasId !== undefined) {
115
+
116
+ const overviewCanvas = document.getElementById(cfg.overviewCanvasId);
117
+
118
+ if (!overviewCanvas) {
119
+ this.warn("Can't find overview canvas: '" + cfg.overviewCanvasId + "' - will create plugin without overview");
120
+
121
+ } else {
122
+
123
+ this._overview = new Overview(this, {
124
+ overviewCanvas: overviewCanvas,
125
+ visible: cfg.overviewVisible,
126
+
127
+ onHoverEnterPlane: ((id) => {
128
+ this._overview.setPlaneHighlighted(id, true);
129
+ }),
130
+
131
+ onHoverLeavePlane: ((id) => {
132
+ this._overview.setPlaneHighlighted(id, false);
133
+ }),
134
+
135
+ onClickedPlane: ((id) => {
136
+ if (this.getShownControl() === id) {
137
+ this.hideControl();
138
+ return;
139
+ }
140
+ this.showControl(id);
141
+ const sectionPlane = this.sectionPlanes[id];
142
+ const sectionPlanePos = sectionPlane.pos;
143
+ tempAABB.set(this.viewer.scene.aabb);
144
+ math.getAABB3Center(tempAABB, tempVec3);
145
+ tempAABB[0] += sectionPlanePos[0] - tempVec3[0];
146
+ tempAABB[1] += sectionPlanePos[1] - tempVec3[1];
147
+ tempAABB[2] += sectionPlanePos[2] - tempVec3[2];
148
+ tempAABB[3] += sectionPlanePos[0] - tempVec3[0];
149
+ tempAABB[4] += sectionPlanePos[1] - tempVec3[1];
150
+ tempAABB[5] += sectionPlanePos[2] - tempVec3[2];
151
+ this.viewer.cameraFlight.flyTo({
152
+ aabb: tempAABB,
153
+ fitFOV: 65
154
+ });
155
+ }),
156
+
157
+ onClickedNothing: (() => {
158
+ this.hideControl();
159
+ })
160
+ });
161
+ }
162
+ }
163
+
164
+ this._onSceneSectionPlaneCreated = viewer.scene.on("sectionPlaneCreated", (sectionPlane) => {
165
+
166
+ // SectionPlane created, either via SectionPlanesPlugin#createSectionPlane(), or by directly
167
+ // instantiating a SectionPlane independently of SectionPlanesPlugin, which can be done
168
+ // by BCFViewpointsPlugin#loadViewpoint().
169
+
170
+ this._sectionPlaneCreated(sectionPlane);
171
+ });
172
+ }
173
+
174
+ /**
175
+ * Sets if the overview canvas is visible.
176
+ *
177
+ * @param {Boolean} visible Whether or not the overview canvas is visible.
178
+ */
179
+ setOverviewVisible(visible) {
180
+ if (this._overview) {
181
+ this._overview.setVisible(visible);
182
+ }
183
+ }
184
+
185
+ /**
186
+ * Gets if the overview canvas is visible.
187
+ *
188
+ * @return {Boolean} True when the overview canvas is visible.
189
+ */
190
+ getOverviewVisible() {
191
+ if (this._overview) {
192
+ return this._overview.getVisible();
193
+ }
194
+ }
195
+
196
+ /**
197
+ * Returns a map of the {@link SectionPlane}s created by this SectionPlanesPlugin.
198
+ *
199
+ * @returns {{String:SectionPlane}} A map containing the {@link SectionPlane}s, each mapped to its {@link SectionPlane#id}.
200
+ */
201
+ get sectionPlanes() {
202
+ return this._sectionPlanes;
203
+ }
204
+
205
+ /**
206
+ * Creates a {@link SectionPlane}.
207
+ *
208
+ * The {@link SectionPlane} will be registered by {@link SectionPlane#id} in {@link SectionPlanesPlugin#sectionPlanes}.
209
+ *
210
+ * @param {Object} params {@link SectionPlane} configuration.
211
+ * @param {String} [params.id] Unique ID to assign to the {@link SectionPlane}. Must be unique among all components in the {@link Viewer}'s {@link Scene}. Auto-generated when omitted.
212
+ * @param {Number[]} [params.pos=[0,0,0]] World-space position of the {@link SectionPlane}.
213
+ * @param {Number[]} [params.dir=[0,0,-1]] World-space vector indicating the orientation of the {@link SectionPlane}.
214
+ * @param {Boolean} [params.active=true] Whether the {@link SectionPlane} is initially active. Only clips while this is true.
215
+ * @returns {SectionPlane} The new {@link SectionPlane}.
216
+ */
217
+ createSectionPlane(params = {}) {
218
+
219
+ if (params.id !== undefined && params.id !== null && this.viewer.scene.components[params.id]) {
220
+ this.error("Viewer component with this ID already exists: " + params.id);
221
+ delete params.id;
222
+ }
223
+
224
+ // Note that SectionPlane constructor fires "sectionPlaneCreated" on the Scene,
225
+ // which SectionPlanesPlugin handles and calls #_sectionPlaneCreated to create gizmo and add to overview canvas.
226
+
227
+ const sectionPlane = new SectionPlane(this.viewer.scene, {
228
+ id: params.id,
229
+ pos: params.pos,
230
+ dir: params.dir,
231
+ active: true || params.active
232
+ });
233
+ return sectionPlane;
234
+ }
235
+
236
+ _sectionPlaneCreated(sectionPlane) {
237
+ const control = (this._freeControls.length > 0) ? this._freeControls.pop() : new Control(this);
238
+ control._setSectionPlane(sectionPlane);
239
+ control.setVisible(false);
240
+ this._controls[sectionPlane.id] = control;
241
+ if (this._overview) {
242
+ this._overview.addSectionPlane(sectionPlane);
243
+ }
244
+ sectionPlane.once("destroyed", () => {
245
+ this._sectionPlaneDestroyed(sectionPlane);
246
+ });
247
+ }
248
+
249
+ /**
250
+ * Inverts the direction of {@link SectionPlane#dir} on every existing SectionPlane.
251
+ *
252
+ * Inverts all SectionPlanes, including those that were not created with SectionPlanesPlugin.
253
+ */
254
+ flipSectionPlanes() {
255
+ const sectionPlanes = this.viewer.scene.sectionPlanes;
256
+ for (let id in sectionPlanes) {
257
+ const sectionPlane = sectionPlanes[id];
258
+ sectionPlane.flipDir();
259
+ }
260
+ }
261
+
262
+ /**
263
+ * Shows the 3D editing gizmo for a {@link SectionPlane}.
264
+ *
265
+ * @param {String} id ID of the {@link SectionPlane}.
266
+ */
267
+ showControl(id) {
268
+ const control = this._controls[id];
269
+ if (!control) {
270
+ this.error("Control not found: " + id);
271
+ return;
272
+ }
273
+ this.hideControl();
274
+ control.setVisible(true);
275
+ if (this._overview) {
276
+ this._overview.setPlaneSelected(id, true);
277
+ }
278
+ this._shownControlId = id;
279
+ }
280
+
281
+ /**
282
+ * Gets the ID of the {@link SectionPlane} that the 3D editing gizmo is shown for.
283
+ *
284
+ * Returns ````null```` when the editing gizmo is not shown.
285
+ *
286
+ * @returns {String} ID of the the {@link SectionPlane} that the 3D editing gizmo is shown for, if shown, else ````null````.
287
+ */
288
+ getShownControl() {
289
+ return this._shownControlId;
290
+ }
291
+
292
+ /**
293
+ * Hides the 3D {@link SectionPlane} editing gizmo if shown.
294
+ */
295
+ hideControl() {
296
+ for (var id in this._controls) {
297
+ if (this._controls.hasOwnProperty(id)) {
298
+ this._controls[id].setVisible(false);
299
+ if (this._overview) {
300
+ this._overview.setPlaneSelected(id, false);
301
+ }
302
+ }
303
+ }
304
+ this._shownControlId = null;
305
+ }
306
+
307
+ /**
308
+ * Destroys a {@link SectionPlane} created by this SectionPlanesPlugin.
309
+ *
310
+ * @param {String} id ID of the {@link SectionPlane}.
311
+ */
312
+ destroySectionPlane(id) {
313
+ var sectionPlane = this.viewer.scene.sectionPlanes[id];
314
+ if (!sectionPlane) {
315
+ this.error("SectionPlane not found: " + id);
316
+ return;
317
+ }
318
+ this._sectionPlaneDestroyed(sectionPlane);
319
+ sectionPlane.destroy();
320
+
321
+ if (id === this._shownControlId) {
322
+ this._shownControlId = null;
323
+ }
324
+ }
325
+
326
+ _sectionPlaneDestroyed(sectionPlane) {
327
+ if (this._overview) {
328
+ this._overview.removeSectionPlane(sectionPlane);
329
+ }
330
+ const control = this._controls[sectionPlane.id];
331
+ if (!control) {
332
+ return;
333
+ }
334
+ control.setVisible(false);
335
+ control._setSectionPlane(null);
336
+ delete this._controls[sectionPlane.id];
337
+ this._freeControls.push(control);
338
+ }
339
+
340
+ /**
341
+ * Destroys all {@link SectionPlane}s created by this SectionPlanesPlugin.
342
+ */
343
+ clear() {
344
+ const ids = Object.keys(this._sectionPlanes);
345
+ for (var i = 0, len = ids.length; i < len; i++) {
346
+ this.destroySectionPlane(ids[i]);
347
+ }
348
+ }
349
+
350
+ /**
351
+ * @private
352
+ */
353
+ send(name, value) {
354
+ switch (name) {
355
+
356
+ case "snapshotStarting": // Viewer#getSnapshot() about to take snapshot - hide controls
357
+ for (let id in this._controls) {
358
+ if (this._controls.hasOwnProperty(id)) {
359
+ this._controls[id].setCulled(true);
360
+ }
361
+ }
362
+ break;
363
+
364
+ case "snapshotFinished": // Viewer#getSnapshot() finished taking snapshot - show controls again
365
+ for (let id in this._controls) {
366
+ if (this._controls.hasOwnProperty(id)) {
367
+ this._controls[id].setCulled(false);
368
+ }
369
+ }
370
+ break;
371
+
372
+ case "clearSectionPlanes":
373
+ this.clear();
374
+ break;
375
+ }
376
+ }
377
+
378
+ /**
379
+ * Destroys this SectionPlanesPlugin.
380
+ *
381
+ * Also destroys each {@link SectionPlane} created by this SectionPlanesPlugin.
382
+ *
383
+ * Does not destroy the canvas the SectionPlanesPlugin was configured with.
384
+ */
385
+ destroy() {
386
+ this.clear();
387
+ if (this._overview) {
388
+ this._overview.destroy();
389
+ }
390
+ this._destroyFreeControls();
391
+ super.destroy();
392
+ }
393
+
394
+ _destroyFreeControls() {
395
+ var control = this._freeControls.pop();
396
+ while (control) {
397
+ control._destroy();
398
+ control = this._freeControls.pop();
399
+ }
400
+ this.viewer.scene.off(this._onSceneSectionPlaneCreated);
401
+ }
402
+ }
403
+
404
+ export {SectionPlanesPlugin}
@@ -0,0 +1 @@
1
+ export * from "./SectionPlanesPlugin.js";
@@ -0,0 +1,134 @@
1
+ import {Plugin} from "../../viewer/Plugin.js";
2
+ import {Skybox} from "../../viewer/scene/skybox/Skybox.js"
3
+
4
+ /**
5
+ * {@link Viewer} plugin that manages skyboxes
6
+ *
7
+ * @example
8
+ *
9
+ * // Create a Viewer
10
+ * const viewer = new Viewer({
11
+ * canvasId: "myCanvas"
12
+ * });
13
+ *
14
+ * // Add a GLTFModelsPlugin
15
+ * var gltfLoaderPlugin = new GLTFModelsPlugin(viewer, {
16
+ * id: "GLTFModels" // Default value
17
+ * });
18
+ *
19
+ * // Add a SkyboxesPlugin
20
+ * var skyboxesPlugin = new SkyboxesPlugin(viewer, {
21
+ * id: "Skyboxes" // Default value
22
+ * });
23
+ *
24
+ * // Load a glTF model
25
+ * const model = gltfLoaderPlugin.load({
26
+ * id: "myModel",
27
+ * src: "./models/gltf/mygltfmodel.gltf"
28
+ * });
29
+ *
30
+ * // Create three directional World-space lights. "World" means that they will appear as if part
31
+ * // of the world, instead of "View", where they move with the user's head.
32
+ *
33
+ * skyboxesPlugin.createLight({
34
+ * id: "keyLight",
35
+ * dir: [0.8, -0.6, -0.8],
36
+ * color: [1.0, 0.3, 0.3],
37
+ * intensity: 1.0,
38
+ * space: "world"
39
+ * });
40
+ *
41
+ * skyboxesPlugin.createLight({
42
+ * id: "fillLight",
43
+ * dir: [-0.8, -0.4, -0.4],
44
+ * color: [0.3, 1.0, 0.3],
45
+ * intensity: 1.0,
46
+ * space: "world"
47
+ * });
48
+ *
49
+ * skyboxesPlugin.createDirLight({
50
+ * id: "rimLight",
51
+ * dir: [0.2, -0.8, 0.8],
52
+ * color: [0.6, 0.6, 0.6],
53
+ * intensity: 1.0,
54
+ * space: "world"
55
+ * });
56
+ *
57
+ * @class SkyboxesPlugin
58
+ */
59
+ class SkyboxesPlugin extends Plugin {
60
+
61
+ constructor(viewer) {
62
+ super("skyboxes", viewer);
63
+ this.skyboxes = {};
64
+ }
65
+
66
+ /**
67
+ * @private
68
+ */
69
+ send(name, value) {
70
+ switch (name) {
71
+ case "clear":
72
+ this.clear();
73
+ break;
74
+ }
75
+ }
76
+
77
+ /**
78
+ Creates a skybox.
79
+
80
+ @param {String} id Unique ID to assign to the skybox.
81
+ @param {Object} params Skybox configuration.
82
+ @param {Boolean} [params.active=true] Whether the skybox plane is initially active. Only skyboxes while this is true.
83
+ @returns {Skybox} The new skybox.
84
+ */
85
+ createSkybox(id, params) {
86
+ if (this.viewer.scene.components[id]) {
87
+ this.error("Component with this ID already exists: " + id);
88
+ return this;
89
+ }
90
+ var skybox = new Skybox(this.viewer.scene, {
91
+ id: id,
92
+ pos: params.pos,
93
+ dir: params.dir,
94
+ active: true || params.active
95
+ });
96
+ this.skyboxes[id] = skybox;
97
+ return skybox;
98
+ }
99
+
100
+ /**
101
+ Destroys a skybox.
102
+ @param id
103
+ */
104
+ destroySkybox(id) {
105
+ var skybox = this.skyboxes[id];
106
+ if (!skybox) {
107
+ this.error("Skybox not found: " + id);
108
+ return;
109
+ }
110
+ skybox.destroy();
111
+ }
112
+
113
+ /**
114
+ Destroys all skyboxes.
115
+ */
116
+ clear() {
117
+ var ids = Object.keys(this.viewer.scene.skyboxes);
118
+ for (var i = 0, len = ids.length; i < len; i++) {
119
+ this.destroySkybox(ids[i]);
120
+ }
121
+ }
122
+
123
+ /**
124
+ * Destroys this plugin.
125
+ *
126
+ * Clears skyboxes from the Viewer first.
127
+ */
128
+ destroy() {
129
+ this.clear();
130
+ super.clear();
131
+ }
132
+ }
133
+
134
+ export {SkyboxesPlugin}
@@ -0,0 +1 @@
1
+ export * from "./SkyboxesPlugin.js";
@@ -0,0 +1,84 @@
1
+ /**
2
+ * @desc Information about an ````IfcBuildingStorey````.
3
+ *
4
+ * These are provided by a {@link StoreyViewsPlugin}.
5
+ */
6
+ class Storey {
7
+
8
+ /**
9
+ * @private
10
+ */
11
+ constructor(plugin, modelAABB, storeyAABB, modelId, storeyId, numObjects) {
12
+
13
+ /**
14
+ * The {@link StoreyViewsPlugin} this Storey belongs to.
15
+ *
16
+ * @property plugin
17
+ * @type {StoreyViewsPlugin}
18
+ */
19
+ this.plugin = plugin;
20
+
21
+ /**
22
+ * ID of the IfcBuildingStorey.
23
+ *
24
+ * This matches IDs of the IfcBuildingStorey's {@link MetaObject} and {@link Entity}.
25
+ *
26
+ * @property storeyId
27
+ * @type {String}
28
+ */
29
+ this.storeyId = storeyId;
30
+
31
+ /**
32
+ * ID of the model.
33
+ *
34
+ * This matches the ID of the {@link MetaModel} that contains the IfcBuildingStorey's {@link MetaObject}.
35
+ *
36
+ * @property modelId
37
+ * @type {String|Number}
38
+ */
39
+ this.modelId = modelId;
40
+
41
+ /**
42
+ * Axis-aligned World-space boundary of the {@link Entity}s that represent the IfcBuildingStorey.
43
+ *
44
+ * The boundary is a six-element Float32Array containing the min/max extents of the
45
+ * axis-aligned boundary, ie. ````[xmin, ymin, zmin, xmax, ymax, zmax]````
46
+ *
47
+ * @property storeyAABB
48
+ * @type {Number[]}
49
+ */
50
+ this.storeyAABB = storeyAABB.slice();
51
+
52
+ /**
53
+ * Axis-aligned World-space boundary of the {@link Entity}s that represent the IfcBuildingStorey.
54
+ *
55
+ * The boundary is a six-element Float32Array containing the min/max extents of the
56
+ * axis-aligned boundary, ie. ````[xmin, ymin, zmin, xmax, ymax, zmax]````
57
+ *
58
+ * @deprecated
59
+ * @property storeyAABB
60
+ * @type {Number[]}
61
+ */
62
+ this.aabb = this.storeyAABB;
63
+
64
+ /**
65
+ * Axis-aligned World-space boundary of the {@link Entity}s that represent the model.
66
+ *
67
+ * The boundary is a six-element Float32Array containing the min/max extents of the
68
+ * axis-aligned boundary, ie. ````[xmin, ymin, zmin, xmax, ymax, zmax]````
69
+ *
70
+ * @property modelAABB
71
+ * @type {Number[]}
72
+ */
73
+ this.modelAABB = modelAABB.slice();
74
+
75
+ /** Number of {@link Entity}s within the IfcBuildingStorey.
76
+ *
77
+ * @property numObjects
78
+ * @type {Number}
79
+ */
80
+ this.numObjects = numObjects;
81
+ }
82
+ }
83
+
84
+ export {Storey};
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @desc A 2D plan view image of an ````IfcBuildingStorey````.
3
+ *
4
+ * These are created by a {@link StoreyViewsPlugin}.
5
+ */
6
+ class StoreyMap {
7
+
8
+ /**
9
+ * @private
10
+ */
11
+ constructor(storeyId, imageData, format, width, height, padding) {
12
+
13
+ /**
14
+ * ID of the IfcBuildingStorey.
15
+ *
16
+ * This matches IDs of the IfcBuildingStorey's {@link MetaObject} and {@link Entity}.
17
+ *
18
+ * @property storeyId
19
+ * @type {String}
20
+ */
21
+ this.storeyId = storeyId;
22
+
23
+ /**
24
+ * Base64-encoded plan view image.
25
+ *
26
+ * @property imageData
27
+ * @type {String}
28
+ */
29
+ this.imageData = imageData;
30
+
31
+ /**
32
+ * The image format - "png" or "jpeg".
33
+ *
34
+ * @property format
35
+ * @type {String}
36
+ */
37
+ this.format = format;
38
+
39
+ /**
40
+ * Width of the image, in pixels.
41
+ *
42
+ * @property width
43
+ * @type {Number}
44
+ */
45
+ this.width = width;
46
+
47
+ /**
48
+ * Height of the image, in pixels.
49
+ *
50
+ * @property height
51
+ * @type {Number}
52
+ */
53
+ this.height = height;
54
+ }
55
+ }
56
+
57
+ export {StoreyMap};