csyjk 1.2.2 → 2.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (322) hide show
  1. package/{dist/app.js → app.js} +0 -0
  2. package/{dist/index.html → index.html} +0 -0
  3. package/package.json +5 -40
  4. package/{dist/style.css → style.css} +0 -0
  5. package/.babelrc +0 -7
  6. package/.idea/modules.xml +0 -8
  7. package/.idea/xx.iml +0 -12
  8. package/public/gltf.js +0 -2241
  9. package/public/index.html +0 -10
  10. package/src/index.js +0 -3
  11. package/src/lib/gltf/assets/check.jpg +0 -0
  12. package/src/lib/gltf/assets/iconfont/iconfont.css +0 -358
  13. package/src/lib/gltf/assets/iconfont/iconfont.eot +0 -0
  14. package/src/lib/gltf/assets/iconfont/iconfont.js +0 -1
  15. package/src/lib/gltf/assets/iconfont/iconfont.json +0 -604
  16. package/src/lib/gltf/assets/iconfont/iconfont.svg +0 -189
  17. package/src/lib/gltf/assets/iconfont/iconfont.ttf +0 -0
  18. package/src/lib/gltf/assets/iconfont/iconfont.woff +0 -0
  19. package/src/lib/gltf/assets/iconfont/iconfont.woff2 +0 -0
  20. package/src/lib/gltf/assets/yjkkit-sdk/index.js +0 -0
  21. package/src/lib/gltf/assets/yjkkit-sdk/package.json +0 -15
  22. package/src/lib/gltf/assets/yjkkit-sdk/src/extras/ContextMenu/ContextMenu.js +0 -863
  23. package/src/lib/gltf/assets/yjkkit-sdk/src/extras/ContextMenu/index.js +0 -1
  24. package/src/lib/gltf/assets/yjkkit-sdk/src/extras/index.js +0 -1
  25. package/src/lib/gltf/assets/yjkkit-sdk/src/index.js +0 -3
  26. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AngleMeasurementsPlugin/AngleMeasurement.js +0 -462
  27. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsControl.js +0 -279
  28. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsPlugin.js +0 -262
  29. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AngleMeasurementsPlugin/index.js +0 -1
  30. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AnnotationsPlugin/Annotation.js +0 -362
  31. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AnnotationsPlugin/AnnotationsPlugin.js +0 -575
  32. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AnnotationsPlugin/index.js +0 -1
  33. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AxisGizmoPlugin/AxisGizmoPlugin.js +0 -333
  34. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/AxisGizmoPlugin/index.js +0 -1
  35. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/BCFViewpointsPlugin/BCFViewpointsPlugin.js +0 -777
  36. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/BCFViewpointsPlugin/index.js +0 -1
  37. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurement.js +0 -525
  38. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsControl.js +0 -242
  39. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsPlugin.js +0 -297
  40. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/DistanceMeasurementsPlugin/index.js +0 -1
  41. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/FastNavPlugin/FastNavPlugin.js +0 -345
  42. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/FastNavPlugin/index.js +0 -1
  43. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/GLTFLoaderPlugin/GLTFDefaultDataSource.js +0 -122
  44. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/GLTFLoaderPlugin/GLTFLoaderPlugin.js +0 -462
  45. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/GLTFLoaderPlugin/GLTFPerformanceModelLoader.js +0 -508
  46. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/GLTFLoaderPlugin/GLTFSceneGraphLoader.js +0 -922
  47. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/GLTFLoaderPlugin/index.js +0 -2
  48. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/NavCubePlugin/CubeTextureCanvas.js +0 -273
  49. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/NavCubePlugin/NavCubePlugin.js +0 -687
  50. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/NavCubePlugin/index.js +0 -1
  51. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/OBJLoaderPlugin/OBJLoaderPlugin.js +0 -145
  52. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/OBJLoaderPlugin/OBJSceneGraphLoader.js +0 -777
  53. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/OBJLoaderPlugin/index.js +0 -1
  54. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/STLLoaderPlugin/STLDefaultDataSource.js +0 -33
  55. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/STLLoaderPlugin/STLLoaderPlugin.js +0 -273
  56. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/STLLoaderPlugin/STLSceneGraphLoader.js +0 -313
  57. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/STLLoaderPlugin/index.js +0 -2
  58. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SectionPlanesPlugin/Control.js +0 -1328
  59. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SectionPlanesPlugin/Overview.js +0 -249
  60. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SectionPlanesPlugin/Plane.js +0 -169
  61. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SectionPlanesPlugin/SectionPlanesPlugin.js +0 -403
  62. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SectionPlanesPlugin/index.js +0 -1
  63. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SkyboxesPlugin/SkyboxesPlugin.js +0 -134
  64. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/SkyboxesPlugin/index.js +0 -1
  65. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/StoreyViewsPlugin/IFCStoreyPlanObjectStates.js +0 -77
  66. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/StoreyViewsPlugin/Storey.js +0 -61
  67. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/StoreyViewsPlugin/StoreyMap.js +0 -57
  68. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/StoreyViewsPlugin/StoreyViewsPlugin.js +0 -822
  69. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/StoreyViewsPlugin/index.js +0 -1
  70. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/TreeViewPlugin/ModelTreeView.js +0 -888
  71. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/TreeViewPlugin/TreeViewNode.js +0 -88
  72. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/TreeViewPlugin/TreeViewPlugin.js +0 -624
  73. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/TreeViewPlugin/index.js +0 -1
  74. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/TreeViewPlugin/modelValidation.js +0 -87
  75. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/ViewCullPlugin/ViewCullPlugin.js +0 -295
  76. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/ViewCullPlugin/index.js +0 -1
  77. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/XKTDefaultDataSource.js +0 -78
  78. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/XKTLoaderPlugin.js +0 -847
  79. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/index.js +0 -2
  80. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV1.js +0 -167
  81. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV2.js +0 -228
  82. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV3.js +0 -220
  83. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV4.js +0 -279
  84. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV5.js +0 -244
  85. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV6.js +0 -301
  86. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV7.js +0 -426
  87. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/ParserV8.js +0 -479
  88. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XKTLoaderPlugin/parsers/lib/pako.js +0 -6818
  89. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/XML3DLoaderPlugin.js +0 -238
  90. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/XML3DSceneGraphLoader.js +0 -1279
  91. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/index.js +0 -1
  92. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/.jshintrc +0 -11
  93. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/deflate.js +0 -2060
  94. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/inflate.js +0 -2155
  95. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/mime-types.js +0 -1002
  96. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/pako/codecs.js +0 -64
  97. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/z-worker.js +0 -153
  98. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/zip-ext.js +0 -267
  99. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/zip-fs.js +0 -553
  100. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/zip.js +0 -991
  101. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/XML3DLoaderPlugin/zipjs/zlib-asm/codecs.js +0 -49
  102. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/index.js +0 -17
  103. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/lib/culling/ObjectCullStates.js +0 -205
  104. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/lib/html/Dot.js +0 -78
  105. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/lib/html/Label.js +0 -97
  106. package/src/lib/gltf/assets/yjkkit-sdk/src/plugins/lib/html/Wire.js +0 -95
  107. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/Plugin.js +0 -112
  108. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/Viewer.js +0 -372
  109. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/index.js +0 -3
  110. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/metadata/IFCObjectDefaultColors.js +0 -162
  111. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/metadata/IFCObjectDefaults.js +0 -39
  112. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/metadata/MetaModel.js +0 -145
  113. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/metadata/MetaObject.js +0 -215
  114. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/metadata/MetaScene.js +0 -311
  115. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/CameraControl.js +0 -1669
  116. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/cc.js +0 -0
  117. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/CameraUpdater.js +0 -312
  118. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/controllers/PanController.js +0 -112
  119. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/controllers/PickController.js +0 -193
  120. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/controllers/PivotController.js +0 -289
  121. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/cu.js +0 -0
  122. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/KeyboardAxisViewHandler.js +0 -122
  123. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/KeyboardPanRotateDollyHandler.js +0 -186
  124. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/MouseMiscHandler.js +0 -68
  125. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/MousePanRotateDollyHandler.js +0 -439
  126. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/MousePickHandler.js +0 -361
  127. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/TouchPanRotateAndDollyHandler.js +0 -258
  128. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/TouchPickHandler.js +0 -197
  129. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/CameraControl/lib/handlers/mouspan.js +0 -498
  130. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/Component.js +0 -908
  131. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/Entity.js +0 -475
  132. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/ImagePlane/ImagePlane.js +0 -570
  133. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/ImagePlane/index.js +0 -1
  134. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/PerformanceModel.js +0 -2623
  135. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/index.js +0 -1
  136. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/ENTITY_FLAGS.js +0 -21
  137. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/PerformanceMesh.js +0 -262
  138. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/PerformanceNode.js +0 -697
  139. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/RENDER_PASSES.js +0 -34
  140. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/ScratchMemory.js +0 -63
  141. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/compression.js +0 -183
  142. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesBatching/LinesBatchingBuffer.js +0 -33
  143. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesBatching/LinesBatchingLayer.js +0 -736
  144. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesBatching/LinesBatchingRenderers.js +0 -68
  145. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesBatching/renderers/LinesBatchingColorRenderer.js +0 -295
  146. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesBatching/renderers/LinesBatchingSilhouetteRenderer.js +0 -327
  147. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesInstancing/LinesInstancingLayer.js +0 -698
  148. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesInstancing/LinesInstancingRenderers.js +0 -68
  149. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesInstancing/renderers/LinesInstancingColorRenderer.js +0 -364
  150. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/linesInstancing/renderers/LinesInstancingSilhouetteRenderer.js +0 -356
  151. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/PointsBatchingBuffer.js +0 -33
  152. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/PointsBatchingLayer.js +0 -776
  153. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/PointsBatchingRenderers.js +0 -113
  154. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/renderers/PointsBatchingColorRenderer.js +0 -340
  155. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/renderers/PointsBatchingOcclusionRenderer.js +0 -312
  156. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/renderers/PointsBatchingPickDepthRenderer.js +0 -343
  157. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/renderers/PointsBatchingPickMeshRenderer.js +0 -331
  158. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/renderers/PointsBatchingShadowRenderer.js +0 -242
  159. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsBatching/renderers/PointsBatchingSilhouetteRenderer.js +0 -348
  160. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/PointsInstancingLayer.js +0 -737
  161. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/PointsInstancingRenderers.js +0 -143
  162. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingColorRenderer.js +0 -373
  163. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingDepthRenderer.js +0 -366
  164. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingOcclusionRenderer.js +0 -370
  165. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingPickDepthRenderer.js +0 -386
  166. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingPickMeshRenderer.js +0 -376
  167. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingShadowRenderer.js +0 -293
  168. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/pointsInstancing/renderers/PointsInstancingSilhouetteRenderer.js +0 -382
  169. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/TrianglesBatchingBuffer.js +0 -37
  170. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/TrianglesBatchingLayer.js +0 -1017
  171. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/TrianglesBatchingRenderers.js +0 -246
  172. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingColorQualityRenderer.js +0 -809
  173. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingColorRenderer.js +0 -504
  174. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingDepthRenderer.js +0 -297
  175. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingEdgesColorRenderer.js +0 -300
  176. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingEdgesRenderer.js +0 -322
  177. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingNormalsRenderer.js +0 -311
  178. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingOcclusionRenderer.js +0 -291
  179. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingPickDepthRenderer.js +0 -319
  180. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingPickMeshRenderer.js +0 -305
  181. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingPickNormalsRenderer.js +0 -300
  182. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingShadowRenderer.js +0 -242
  183. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesBatching/renderers/TrianglesBatchingSilhouetteRenderer.js +0 -323
  184. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/TrianglesInstancingLayer.js +0 -969
  185. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/TrianglesInstancingRenderers.js +0 -246
  186. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingColorQualityRenderer.js +0 -859
  187. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingColorRenderer.js +0 -557
  188. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingDepthRenderer.js +0 -341
  189. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingEdgesColorRenderer.js +0 -338
  190. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingEdgesRenderer.js +0 -356
  191. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingNormalsRenderer.js +0 -354
  192. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingOcclusionRenderer.js +0 -329
  193. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingPickDepthRenderer.js +0 -358
  194. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingPickMeshRenderer.js +0 -349
  195. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingPickNormalsRenderer.js +0 -363
  196. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingShadowRenderer.js +0 -284
  197. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/PerformanceModel/lib/layers/trianglesInstancing/renderers/TrianglesInstancingSilhouetteRenderer.js +0 -354
  198. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/Camera.js +0 -880
  199. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/CameraFlightAnimation.js +0 -669
  200. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/CameraPath.js +0 -194
  201. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/CameraPathAnimation.js +0 -326
  202. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/CustomProjection.js +0 -149
  203. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/Frustum.js +0 -316
  204. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/Ortho.js +0 -286
  205. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/Perspective.js +0 -302
  206. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/camera/index.js +0 -2
  207. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/canvas/Canvas.js +0 -464
  208. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/canvas/Spinner.js +0 -323
  209. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/core.js +0 -234
  210. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/Geometry.js +0 -33
  211. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/ReadableGeometry.js +0 -689
  212. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/VBOGeometry.js +0 -327
  213. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildBoxGeometry.js +0 -238
  214. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildBoxLinesGeometry.js +0 -106
  215. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildCylinderGeometry.js +0 -271
  216. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildGridGeometry.js +0 -102
  217. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildPlaneGeometry.js +0 -168
  218. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildSphereGeometry.js +0 -161
  219. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildTorusGeometry.js +0 -172
  220. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/buildVectorTextGeometry.js +0 -1721
  221. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/builders/index.js +0 -8
  222. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/index.js +0 -4
  223. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/loaders/index.js +0 -2
  224. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/loaders/load3DSGeometry.js +0 -103
  225. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/geometry/loaders/loadOBJGeometry.js +0 -130
  226. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/index.js +0 -18
  227. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/input/Input.js +0 -1475
  228. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/libs/canvas2image.js +0 -218
  229. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/libs/k3d.js +0 -1032
  230. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/AmbientLight.js +0 -175
  231. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/CubeTexture.js +0 -156
  232. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/DirLight.js +0 -314
  233. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/Light.js +0 -29
  234. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/LightMap.js +0 -77
  235. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/PointLight.js +0 -395
  236. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/ReflectionMap.js +0 -79
  237. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/Shadow.js +0 -138
  238. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/lights/index.js +0 -5
  239. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/marker/Marker.js +0 -382
  240. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/marker/index.js +0 -1
  241. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/EdgeMaterial.js +0 -359
  242. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/EmphasisMaterial.js +0 -577
  243. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/Fresnel.js +0 -222
  244. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/LambertMaterial.js +0 -378
  245. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/LinesMaterial.js +0 -169
  246. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/Material.js +0 -39
  247. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/MetallicMaterial.js +0 -820
  248. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/PhongMaterial.js +0 -860
  249. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/PointsMaterial.js +0 -320
  250. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/SpecularMaterial.js +0 -807
  251. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/Texture.js +0 -522
  252. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/materials/index.js +0 -8
  253. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/math/Frustum.js +0 -118
  254. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/math/buildEdgeIndices.js +0 -162
  255. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/math/geometryCompressionUtils.js +0 -353
  256. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/math/index.js +0 -1
  257. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/math/math.js +0 -5302
  258. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/math/rtcCoords.js +0 -132
  259. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mementos/CameraMemento.js +0 -200
  260. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mementos/ModelMemento.js +0 -272
  261. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mementos/ObjectsMemento.js +0 -259
  262. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mementos/index.js +0 -3
  263. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/Mesh.js +0 -2165
  264. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/draw/DrawRenderer.js +0 -978
  265. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/draw/DrawShaderSource.js +0 -1566
  266. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/emphasis/EmphasisEdgesRenderer.js +0 -249
  267. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/emphasis/EmphasisEdgesShaderSource.js +0 -163
  268. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/emphasis/EmphasisFillRenderer.js +0 -276
  269. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/emphasis/EmphasisFillShaderSource.js +0 -269
  270. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/index.js +0 -1
  271. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/occlusion/OcclusionRenderer.js +0 -207
  272. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/occlusion/OcclusionShaderSource.js +0 -156
  273. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/pick/PickMeshRenderer.js +0 -210
  274. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/pick/PickMeshShaderSource.js +0 -146
  275. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/pick/PickTriangleRenderer.js +0 -186
  276. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/pick/PickTriangleShaderSource.js +0 -120
  277. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/shadow/ShadowRenderer.js +0 -214
  278. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/mesh/shadow/ShadowShaderSource.js +0 -96
  279. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/metriqs/Metriqs.js +0 -259
  280. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/nodes/Node.js +0 -1356
  281. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/nodes/index.js +0 -1
  282. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/paths/CubicBezierCurve.js +0 -194
  283. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/paths/Curve.js +0 -183
  284. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/paths/Path.js +0 -239
  285. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/paths/QuadraticBezierCurve.js +0 -161
  286. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/paths/SplineCurve.js +0 -133
  287. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/paths/index.js +0 -5
  288. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/postfx/SAO.js +0 -547
  289. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/scene/Scene.js +0 -2481
  290. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/sectionPlane/SectionPlane.js +0 -194
  291. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/sectionPlane/index.js +0 -1
  292. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/skybox/Skybox.js +0 -119
  293. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/skybox/index.js +0 -1
  294. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/stats.js +0 -45
  295. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/utils/Map.js +0 -45
  296. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/utils/Queue.js +0 -56
  297. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/utils/index.js +0 -2
  298. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/utils.js +0 -452
  299. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/viewport/Viewport.js +0 -212
  300. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/ArrayBuf.js +0 -121
  301. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Attribute.js +0 -23
  302. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Drawable.js +0 -270
  303. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/FrameContext.js +0 -259
  304. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/PickResult.js +0 -317
  305. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Pickable.js +0 -69
  306. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Program.js +0 -179
  307. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/RenderBuffer.js +0 -315
  308. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/RenderFlags.js +0 -203
  309. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/RenderState.js +0 -40
  310. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Renderer.js +0 -1300
  311. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Sampler.js +0 -18
  312. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Shader.js +0 -49
  313. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/Texture2D.js +0 -217
  314. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/occlusion/OcclusionLayer.js +0 -214
  315. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/occlusion/OcclusionTester.js +0 -432
  316. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/sao/SAODepthLimitedBlurRenderer.js +0 -326
  317. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/sao/SAOOcclusionRenderer.js +0 -375
  318. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webgl/webglEnums.js +0 -61
  319. package/src/lib/gltf/assets/yjkkit-sdk/src/viewer/scene/webglInfo.js +0 -48
  320. package/src/lib/gltf/gltf.css +0 -392
  321. package/src/lib/gltf/gltf.js +0 -2241
  322. package/webpack.config.js +0 -70
@@ -1,863 +0,0 @@
1
- import {Map} from "../../viewer/scene/utils/Map.js";
2
-
3
- const idMap = new Map();
4
-
5
- /**
6
- * Internal data class that represents the state of a menu or a submenu.
7
- * @private
8
- */
9
- class Menu {
10
- constructor(id) {
11
- this.id = id;
12
- this.parentItem = null; // Set to an Item when this Menu is a submenu
13
- this.groups = [];
14
- this.menuElement = null;
15
- this.shown = false;
16
- this.mouseOver = 0;
17
- }
18
- }
19
-
20
- /**
21
- * Internal data class that represents a group of Items in a Menu.
22
- * @private
23
- */
24
- class Group {
25
- constructor() {
26
- this.items = [];
27
- }
28
- }
29
-
30
- /**
31
- * Internal data class that represents the state of a menu item.
32
- * @private
33
- */
34
- class Item {
35
- constructor(id, getTitle, doAction, getEnabled) {
36
- this.id = id;
37
- this.getTitle = getTitle;
38
- this.doAction = doAction;
39
- this.getEnabled = getEnabled;
40
- this.itemElement = null;
41
- this.subMenu = null;
42
- this.enabled = true;
43
- }
44
- }
45
-
46
- /**
47
- * @desc A customizable HTML context menu.
48
- *
49
- * [<img src="http://yjkkit.io/img/docs/ContextMenu/ContextMenu.gif">](https://yjkkit.github.io/yjkkit-sdk/examples/#ContextMenu_Canvas_TreeViewPlugin_Custom)
50
- *
51
- * * [[Run this example](https://yjkkit.github.io/yjkkit-sdk/examples/#ContextMenu_Canvas_TreeViewPlugin_Custom)]
52
- *
53
- * ## Overview
54
- *
55
- * * A pure JavaScript, lightweight context menu
56
- * * Dynamically configure menu items
57
- * * Dynamically enable or disable items
58
- * * Supports cascading sub-menus
59
- * * Configure custom style with custom CSS (see examples above)
60
- *
61
- * ## Usage
62
- *
63
- * In the example below we'll create a ````ContextMenu```` that pops up whenever we right-click on an {@link Entity} within
64
- * our {@link Scene}.
65
- *
66
- * First, we'll create the ````ContextMenu````, configuring it with a list of menu items.
67
- *
68
- * Each item has:
69
- *
70
- * * a ````title```` for the item,
71
- * * a ````doAction()```` callback to fire when the item's title is clicked, and
72
- * * an optional ````getEnabled()```` callback that indicates if the item should enabled in the menu or not.
73
- *
74
- * <br>
75
- *
76
- * The ````getEnabled()```` callbacks are invoked whenever the menu is shown. When an item's ````getEnabled()```` callback
77
- * returns ````true````, then the item is enabled and clickable. When it returns ````false````, then the item is disabled
78
- * and cannot be clicked. An item without a ````getEnabled()```` callback is always enabled and clickable.
79
- *
80
- * Note how the ````doAction()```` and ````getEnabled()```` callbacks accept a ````context````
81
- * object. That must be set on the ````ContextMenu```` before we're able to we show it. The context object can be anything. In this example,
82
- * we'll use the context object to provide the callbacks with the Entity that we right-clicked.
83
- *
84
- * We'll also initially enable the ````ContextMenu````.
85
- *
86
- * [[Run this example](https://yjkkit.github.io/yjkkit-sdk/examples/#ContextMenu_Canvas_Custom)]
87
- *
88
- * ````javascript
89
- * const canvasContextMenu = new ContextMenu({
90
- *
91
- * enabled: true,
92
- *
93
- * items: [
94
- * [
95
- * {
96
- * title: "Hide Object",
97
- * getEnabled: (context) => {
98
- * return context.entity.visible; // Can't hide entity if already hidden
99
- * },
100
- * doAction: function (context) {
101
- * context.entity.visible = false;
102
- * }
103
- * }
104
- * ],
105
- * [
106
- * {
107
- * title: "Select Object",
108
- * getEnabled: (context) => {
109
- * return (!context.entity.selected); // Can't select an entity that's already selected
110
- * },
111
- * doAction: function (context) {
112
- * context.entity.selected = true;
113
- * }
114
- * }
115
- * ],
116
- * [
117
- * {
118
- * title: "X-Ray Object",
119
- * getEnabled: (context) => {
120
- * return (!context.entity.xrayed); // Can't X-ray an entity that's already X-rayed
121
- * },
122
- * doAction: (context) => {
123
- * context.entity.xrayed = true;
124
- * }
125
- * }
126
- * ]
127
- * ]
128
- * });
129
- * ````
130
- *
131
- * Next, we'll make the ````ContextMenu```` appear whenever we right-click on an Entity. Whenever we right-click
132
- * on the canvas, we'll attempt to pick the Entity at those mouse coordinates. If we succeed, we'll feed the
133
- * Entity into ````ContextMenu```` via the context object, then show the ````ContextMenu````.
134
- *
135
- * From there, each ````ContextMenu```` item's ````getEnabled()```` callback will be invoked (if provided), to determine if the item should
136
- * be enabled. If we click an item, its ````doAction()```` callback will be invoked with our context object.
137
- *
138
- * Remember that we must set the context on our ````ContextMenu```` before we show it, otherwise it will log an error to the console,
139
- * and ignore our attempt to show it.
140
- *
141
- * ````javascript*
142
- * viewer.scene.canvas.canvas.oncontextmenu = (e) => { // Right-clicked on the canvas
143
- *
144
- * if (!objectContextMenu.enabled) {
145
- * return;
146
- * }
147
- *
148
- * var hit = viewer.scene.pick({ // Try to pick an Entity at the coordinates
149
- * canvasPos: [e.pageX, e.pageY]
150
- * });
151
- *
152
- * if (hit) { // Picked an Entity
153
- *
154
- * objectContextMenu.context = { // Feed entity to ContextMenu
155
- * entity: hit.entity
156
- * };
157
- *
158
- * objectContextMenu.show(e.pageX, e.pageY); // Show the ContextMenu
159
- * }
160
- *
161
- * e.preventDefault();
162
- * });
163
- * ````
164
- *
165
- * Note how we only show the ````ContextMenu```` if it's enabled. We can use that mechanism to switch between multiple
166
- * ````ContextMenu```` instances depending on what we clicked.
167
- *
168
- * ## Dynamic Item Titles
169
- *
170
- * To make an item dynamically regenerate its title text whenever we show the ````ContextMenu````, provide its title with a
171
- * ````getTitle()```` callback. The callback will fire each time you show ````ContextMenu````, which will dynamically
172
- * set the item title text.
173
- *
174
- * In the example below, we'll create a simple ````ContextMenu```` that allows us to toggle the selection of an object
175
- * via its first item, which changes text depending on whether we are selecting or deselecting the object.
176
- *
177
- * [[Run an example](https://yjkkit.github.io/yjkkit-sdk/examples/#ContextMenu_dynamicItemTitles)]
178
- *
179
- * ````javascript
180
- * const canvasContextMenu = new ContextMenu({
181
- *
182
- * enabled: true,
183
- *
184
- * items: [
185
- * [
186
- * {
187
- * getTitle: (context) => {
188
- * return (!context.entity.selected) ? "Select" : "Undo Select";
189
- * },
190
- * doAction: function (context) {
191
- * context.entity.selected = !context.entity.selected;
192
- * }
193
- * },
194
- * {
195
- * title: "Clear Selection",
196
- * getEnabled: function (context) {
197
- * return (context.viewer.scene.numSelectedObjects > 0);
198
- * },
199
- * doAction: function (context) {
200
- * context.viewer.scene.setObjectsSelected(context.viewer.scene.selectedObjectIds, false);
201
- * }
202
- * }
203
- * ]
204
- * ]
205
- * });
206
- * ````
207
- *
208
- * ## Sub-menus
209
- *
210
- * Each menu item can optionally have a sub-menu, which will appear when we hover over the item.
211
- *
212
- * In the example below, we'll create a much simpler ````ContextMenu```` that has only one item, called "Effects", which
213
- * will open a cascading sub-menu whenever we hover over that item.
214
- *
215
- * Note that our "Effects" item has no ````doAction```` callback, because an item with a sub-menu performs no
216
- * action of its own.
217
- *
218
- * [[Run this example](https://yjkkit.github.io/yjkkit-sdk/examples/#ContextMenu_subMenus)]
219
- *
220
- * ````javascript
221
- * const canvasContextMenu = new ContextMenu({
222
- * items: [ // Top level items
223
- * [
224
- * {
225
- * getTitle: (context) => {
226
- * return "Effects";
227
- * },
228
- *
229
- * items: [ // Sub-menu
230
- * [
231
- * {
232
- * getTitle: (context) => {
233
- * return (!context.entity.visible) ? "Show" : "Hide";
234
- * },
235
- * doAction: function (context) {
236
- * context.entity.visible = !context.entity.visible;
237
- * }
238
- * },
239
- * {
240
- * getTitle: (context) => {
241
- * return (!context.entity.selected) ? "Select" : "Undo Select";
242
- * },
243
- * doAction: function (context) {
244
- * context.entity.selected = !context.entity.selected;
245
- * }
246
- * },
247
- * {
248
- * getTitle: (context) => {
249
- * return (!context.entity.highlighted) ? "Highlight" : "Undo Highlight";
250
- * },
251
- * doAction: function (context) {
252
- * context.entity.highlighted = !context.entity.highlighted;
253
- * }
254
- * }
255
- * ]
256
- * ]
257
- * }
258
- * ]
259
- * ]
260
- * });
261
- * ````
262
- */
263
- class ContextMenu {
264
-
265
- /**
266
- * Creates a ````ContextMenu````.
267
- *
268
- * The ````ContextMenu```` will be initially hidden.
269
- *
270
- * @param {Object} [cfg] ````ContextMenu```` configuration.
271
- * @param {Object} [cfg.items] The context menu items. These can also be dynamically set on {@link ContextMenu#items}. See the class documentation for an example.
272
- * @param {Object} [cfg.context] The context, which is passed into the item callbacks. This can also be dynamically set on {@link ContextMenu#context}. This must be set before calling {@link ContextMenu#show}.
273
- * @param {Boolean} [cfg.enabled=true] Whether this ````ContextMenu```` is initially enabled. {@link ContextMenu#show} does nothing while this is ````false````.
274
- * @param {Boolean} [cfg.hideOnMouseDown=true] Whether this ````ContextMenu```` automatically hides whenever we mouse-down or tap anywhere in the page.
275
- */
276
- constructor(cfg = {}) {
277
-
278
- this._id = idMap.addItem();
279
- this._context = null;
280
- this._enabled = false; // True when the ContextMenu is enabled
281
- this._itemsCfg = []; // Items as given as configs
282
- this._rootMenu = null; // The root Menu in the tree
283
- this._menuList = []; // List of Menus
284
- this._menuMap = {}; // Menus mapped to their IDs
285
- this._itemList = []; // List of Items
286
- this._itemMap = {}; // Items mapped to their IDs
287
- this._shown = false; // True when the ContextMenu is visible
288
- this._nextId = 0;
289
-
290
- /**
291
- * Subscriptions to events fired at this ContextMenu.
292
- * @private
293
- */
294
- this._eventSubs = {};
295
-
296
- if (cfg.hideOnMouseDown !== false) {
297
- document.addEventListener("mousedown", (event) => {
298
- if (!event.target.classList.contains("yjkkit-context-menu-item")) {
299
- this.hide();
300
- }
301
- });
302
- }
303
-
304
- if (cfg.items) {
305
- this.items = cfg.items;
306
- }
307
-
308
- this.context = cfg.context;
309
- this.enabled = cfg.enabled !== false;
310
- this.hide();
311
- }
312
-
313
-
314
- /**
315
- Subscribes to an event fired at this ````ContextMenu````.
316
-
317
- @param {String} event The event
318
- @param {Function} callback Callback fired on the event
319
- */
320
- on(event, callback) {
321
- let subs = this._eventSubs[event];
322
- if (!subs) {
323
- subs = [];
324
- this._eventSubs[event] = subs;
325
- }
326
- subs.push(callback);
327
- }
328
-
329
- /**
330
- Fires an event at this ````ContextMenu````.
331
-
332
- @param {String} event The event type name
333
- @param {Object} value The event parameters
334
- */
335
- fire(event, value) {
336
- const subs = this._eventSubs[event];
337
- if (subs) {
338
- for (let i = 0, len = subs.length; i < len; i++) {
339
- subs[i](value);
340
- }
341
- }
342
- }
343
-
344
- /**
345
- * Sets the ````ContextMenu```` items.
346
- *
347
- * These can be updated dynamically at any time.
348
- *
349
- * See class documentation for an example.
350
- *
351
- * @type {Object[]}
352
- */
353
- set items(itemsCfg) {
354
- this._clear();
355
- this._itemsCfg = itemsCfg || [];
356
- this._parseItems(itemsCfg);
357
- this._createUI();
358
- }
359
-
360
- /**
361
- * Gets the ````ContextMenu```` items.
362
- *
363
- * @type {Object[]}
364
- */
365
- get items() {
366
- return this._itemsCfg;
367
- }
368
-
369
- /**
370
- * Sets whether this ````ContextMenu```` is enabled.
371
- *
372
- * Hides the menu when disabling.
373
- *
374
- * @type {Boolean}
375
- */
376
- set enabled(enabled) {
377
- enabled = (!!enabled);
378
- if (enabled === this._enabled) {
379
- return;
380
- }
381
- this._enabled = enabled;
382
- if (!this._enabled) {
383
- this.hide();
384
- }
385
- }
386
-
387
- /**
388
- * Gets whether this ````ContextMenu```` is enabled.
389
- *
390
- * {@link ContextMenu#show} does nothing while this is ````false````.
391
- *
392
- * @type {Boolean}
393
- */
394
- get enabled() {
395
- return this._enabled;
396
- }
397
-
398
- /**
399
- * Sets the ````ContextMenu```` context.
400
- *
401
- * The context can be any object that you need to be provides to the callbacks configured on {@link ContextMenu#items}.
402
- *
403
- * This must be set before calling {@link ContextMenu#show}.
404
- *
405
- * @type {Object}
406
- */
407
- set context(context) {
408
- this._context = context;
409
- }
410
-
411
- /**
412
- * Gets the ````ContextMenu```` context.
413
- *
414
- * @type {Object}
415
- */
416
- get context() {
417
- return this._context;
418
- }
419
-
420
- /**
421
- * Shows this ````ContextMenu```` at the given page coordinates.
422
- *
423
- * Does nothing when {@link ContextMenu#enabled} is ````false````.
424
- *
425
- * Logs error to console and does nothing if {@link ContextMenu#context} has not been set.
426
- *
427
- * Fires a "shown" event when shown.
428
- *
429
- * @param {Number} pageX Page X-coordinate.
430
- * @param {Number} pageY Page Y-coordinate.
431
- */
432
- show(pageX, pageY) {
433
- if (!this._context) {
434
- console.error("ContextMenu cannot be shown without a context - set context first");
435
- return;
436
- }
437
- if (!this._enabled) {
438
- return;
439
- }
440
- if (this._shown) {
441
- return;
442
- }
443
- this._hideAllMenus();
444
- this._updateItemsTitles();
445
- this._updateItemsEnabledStatus();
446
- this._showMenu(this._rootMenu.id, pageX, pageY);
447
- this._shown = true;
448
- this.fire("shown", {});
449
- }
450
-
451
- /**
452
- * Gets whether this ````ContextMenu```` is currently shown or not.
453
- *
454
- * @returns {Boolean} Whether this ````ContextMenu```` is shown.
455
- */
456
- get shown() {
457
- return this._shown;
458
- }
459
-
460
- /**
461
- * Hides this ````ContextMenu````.
462
- *
463
- * Fires a "hidden" event when hidden.
464
- */
465
- hide() {
466
- if (!this._enabled) {
467
- return;
468
- }
469
- if (!this._shown) {
470
- return;
471
- }
472
- this._hideAllMenus();
473
- this._shown = false;
474
- this.fire("hidden", {});
475
- }
476
-
477
- /**
478
- * Destroys this ````ContextMenu````.
479
- */
480
- destroy() {
481
- this._context = null;
482
- this._clear();
483
- if (this._id !== null) {
484
- idMap.removeItem(this._id);
485
- this._id = null;
486
- }
487
- }
488
-
489
- _clear() { // Destroys DOM elements, clears menu data
490
- for (let i = 0, len = this._menuList.length; i < len; i++) {
491
- const menu = this._menuList[i];
492
- const menuElement = menu.menuElement;
493
- menuElement.parentElement.removeChild(menuElement);
494
- }
495
- this._itemsCfg = [];
496
- this._rootMenu = null;
497
- this._menuList = [];
498
- this._menuMap = {};
499
- this._itemList = [];
500
- this._itemMap = {};
501
- }
502
-
503
- _parseItems(itemsCfg) { // Parses "items" config into menu data
504
-
505
- const visitItems = (itemsCfg) => {
506
-
507
- const menuId = this._getNextId();
508
- const menu = new Menu(menuId);
509
-
510
- for (let i = 0, len = itemsCfg.length; i < len; i++) {
511
-
512
- const itemsGroupCfg = itemsCfg[i];
513
-
514
- const group = new Group();
515
-
516
- menu.groups.push(group);
517
-
518
- for (let j = 0, lenj = itemsGroupCfg.length; j < lenj; j++) {
519
-
520
- const itemCfg = itemsGroupCfg[j];
521
- const subItemsCfg = itemCfg.items;
522
- const hasSubItems = (subItemsCfg && (subItemsCfg.length > 0));
523
- const itemId = this._getNextId();
524
-
525
- const getTitle = itemCfg.getTitle || (() => {
526
- return (itemCfg.title || "");
527
- });
528
-
529
- const doAction = itemCfg.doAction || itemCfg.callback || (() => {
530
- });
531
-
532
- const getEnabled = itemCfg.getEnabled || (() => {
533
- return true;
534
- });
535
-
536
- const item = new Item(itemId, getTitle, doAction, getEnabled);
537
-
538
- item.parentMenu = menu;
539
-
540
- group.items.push(item);
541
-
542
- if (hasSubItems) {
543
- const subMenu = visitItems(subItemsCfg);
544
- item.subMenu = subMenu;
545
- subMenu.parentItem = item;
546
- }
547
-
548
- this._itemList.push(item);
549
- this._itemMap[item.id] = item;
550
- }
551
- }
552
-
553
- this._menuList.push(menu);
554
- this._menuMap[menu.id] = menu;
555
-
556
- return menu;
557
- };
558
-
559
- this._rootMenu = visitItems(itemsCfg);
560
- }
561
-
562
- _getNextId() { // Returns a unique ID
563
- return "ContextMenu_" + this._id + "" + this._nextId++; // Start ID with alpha chars to make a valid DOM element selector
564
- }
565
-
566
- _createUI() { // Builds DOM elements for the entire menu tree
567
-
568
- const visitMenu = (menu) => {
569
-
570
- this._createMenuUI(menu);
571
-
572
- const groups = menu.groups;
573
- for (let i = 0, len = groups.length; i < len; i++) {
574
- const group = groups[i];
575
- const groupItems = group.items;
576
- for (let j = 0, lenj = groupItems.length; j < lenj; j++) {
577
- const item = groupItems[j];
578
- const subMenu = item.subMenu;
579
- if (subMenu) {
580
- visitMenu(subMenu);
581
- }
582
- }
583
- }
584
- };
585
-
586
- visitMenu(this._rootMenu);
587
- }
588
-
589
- _createMenuUI(menu) { // Builds DOM elements for a menu
590
-
591
- const groups = menu.groups;
592
- const html = [];
593
-
594
- /* html.push('<div class="yjkkit-context-menu ' + menu.id + '" style="z-index:300000; position: absolute;">'); */
595
- html.push('<div class="yjkkit-context-menu ' + menu.id + '" style="z-index:300000; position: fixed;">');
596
-
597
- html.push('<ul>');
598
-
599
- if (groups) {
600
-
601
- for (let i = 0, len = groups.length; i < len; i++) {
602
-
603
- const group = groups[i];
604
- const groupIdx = i;
605
- const groupLen = len;
606
- const groupItems = group.items;
607
-
608
- if (groupItems) {
609
-
610
- for (let j = 0, lenj = groupItems.length; j < lenj; j++) {
611
-
612
- const item = groupItems[j];
613
- const itemSubMenu = item.subMenu;
614
- const actionTitle = item.title || "";
615
-
616
- if (itemSubMenu) {
617
-
618
- html.push(
619
- '<li id="' + item.id + '" class="yjkkit-context-menu-item" style="' +
620
- ((groupIdx === groupLen - 1) || ((j < lenj - 1)) ? 'border-bottom: 0' : 'border-bottom: 1px solid black') +
621
- '">' +
622
- actionTitle +
623
- ' [MORE]' +
624
- '</li>');
625
-
626
- } else {
627
-
628
- html.push(
629
- '<li id="' + item.id + '" class="yjkkit-context-menu-item" style="' +
630
- ((groupIdx === groupLen - 1) || ((j < lenj - 1)) ? 'border-bottom: 0' : 'border-bottom: 1px solid black') +
631
- '">' +
632
- actionTitle +
633
- '</li>');
634
- }
635
- }
636
- }
637
- }
638
- }
639
-
640
- html.push('</ul>');
641
- html.push('</div>');
642
-
643
- const htmlString = html.join("");
644
-
645
- // document.body.insertAdjacentHTML('beforeend', htmlString);
646
- document.getElementById("myViewer").insertAdjacentHTML('beforeend', htmlString);
647
-
648
- const menuElement = document.querySelector("." + menu.id);
649
-
650
- menu.menuElement = menuElement;
651
-
652
- menuElement.style["border-radius"] = 4 + "px";
653
- menuElement.style.display = 'none';
654
- menuElement.style["z-index"] = 300000;
655
- menuElement.style.background = "white";
656
- menuElement.style.border = "1px solid black";
657
- menuElement.style["box-shadow"] = "0 4px 5px 0 gray";
658
- menuElement.oncontextmenu = (e) => {
659
- e.preventDefault();
660
- };
661
-
662
- // Bind event handlers
663
-
664
- const self = this;
665
-
666
- let lastSubMenu = null;
667
-
668
- if (groups) {
669
-
670
- for (let i = 0, len = groups.length; i < len; i++) {
671
-
672
- const group = groups[i];
673
- const groupItems = group.items;
674
-
675
- if (groupItems) {
676
-
677
- for (let j = 0, lenj = groupItems.length; j < lenj; j++) {
678
-
679
- const item = groupItems[j];
680
- const itemSubMenu = item.subMenu;
681
-
682
- item.itemElement = document.getElementById(item.id);
683
-
684
- if (!item.itemElement) {
685
- console.error("ContextMenu item element not found: " + item.id);
686
- continue;
687
- }
688
-
689
- item.itemElement.addEventListener("mouseenter", (event) => {
690
- event.preventDefault();
691
- if (item.enabled === false) {
692
- return;
693
- }
694
- const subMenu = item.subMenu;
695
- if (!subMenu) {
696
- if (lastSubMenu) {
697
- self._hideMenu(lastSubMenu.id);
698
- lastSubMenu = null;
699
- }
700
- return;
701
- }
702
- if (lastSubMenu && (lastSubMenu.id !== subMenu.id)) {
703
- self._hideMenu(lastSubMenu.id);
704
- lastSubMenu = null;
705
- }
706
-
707
- const itemElement = item.itemElement;
708
- const subMenuElement = subMenu.menuElement;
709
-
710
- const itemRect = itemElement.getBoundingClientRect();
711
- const menuRect = subMenuElement.getBoundingClientRect();
712
-
713
- const subMenuWidth = 200; // TODO
714
- const showOnLeft = ((itemRect.right + subMenuWidth) > window.innerWidth);
715
-
716
- if (showOnLeft) {
717
- self._showMenu(subMenu.id, itemRect.left - subMenuWidth, itemRect.top - 1);
718
- } else {
719
- self._showMenu(subMenu.id, itemRect.right - 5, itemRect.top - 1);
720
- }
721
-
722
- lastSubMenu = subMenu;
723
- });
724
-
725
- if (!itemSubMenu) {
726
-
727
- // Item without sub-menu
728
- // clicking item fires the item's action callback
729
-
730
- item.itemElement.addEventListener("click", (event) => {
731
- event.preventDefault();
732
- self.hide();
733
- if (!self._context) {
734
- return;
735
- }
736
- if (item.enabled === false) {
737
- return;
738
- }
739
- if (item.doAction) {
740
- item.doAction(self._context);
741
- }
742
- });
743
-
744
-
745
- item.itemElement.addEventListener("mouseenter", (event) => {
746
- event.preventDefault();
747
- if (item.enabled === false) {
748
- return;
749
- }
750
- if (item.doHover) {
751
- item.doHover(self._context);
752
- }
753
- });
754
-
755
- }
756
- }
757
- }
758
- }
759
- }
760
- }
761
-
762
- _updateItemsTitles() { // Dynamically updates the title of each Item to the result of Item#getTitle()
763
- if (!this._context) {
764
- return;
765
- }
766
- for (let i = 0, len = this._itemList.length; i < len; i++) {
767
- const item = this._itemList[i];
768
- const itemElement = item.itemElement;
769
- if (!itemElement) {
770
- continue;
771
- }
772
- const title = item.getTitle(this._context);
773
- if (item.subMenu) {
774
- itemElement.innerText = title;
775
- } else {
776
- itemElement.innerText = title;
777
- }
778
- }
779
- }
780
-
781
- _updateItemsEnabledStatus() { // Enables or disables each Item, depending on the result of Item#getEnabled()
782
- if (!this._context) {
783
- return;
784
- }
785
- for (let i = 0, len = this._itemList.length; i < len; i++) {
786
- const item = this._itemList[i];
787
- const itemElement = item.itemElement;
788
- if (!itemElement) {
789
- continue;
790
- }
791
- const getEnabled = item.getEnabled;
792
- if (!getEnabled) {
793
- continue;
794
- }
795
- const enabled = getEnabled(this._context);
796
- item.enabled = enabled;
797
- if (!enabled) {
798
- itemElement.classList.add("disabled");
799
- } else {
800
- itemElement.classList.remove("disabled");
801
- }
802
- }
803
- }
804
-
805
- _showMenu(menuId, pageX, pageY) { // Shows the given menu, at the specified page coordinates
806
- const menu = this._menuMap[menuId];
807
- if (!menu) {
808
- console.error("Menu not found: " + menuId);
809
- return;
810
- }
811
- if (menu.shown) {
812
- return;
813
- }
814
- const menuElement = menu.menuElement;
815
- if (menuElement) {
816
- this._showMenuElement(menuElement, pageX, pageY);
817
- menu.shown = true;
818
- }
819
- }
820
-
821
- _hideMenu(menuId) { // Hides the given menu
822
- const menu = this._menuMap[menuId];
823
- if (!menu) {
824
- console.error("Menu not found: " + menuId);
825
- return;
826
- }
827
- if (!menu.shown) {
828
- return;
829
- }
830
- const menuElement = menu.menuElement;
831
- if (menuElement) {
832
- this._hideMenuElement(menuElement);
833
- menu.shown = false;
834
- }
835
- }
836
-
837
- _hideAllMenus() {
838
- for (let i = 0, len = this._menuList.length; i < len; i++) {
839
- const menu = this._menuList[i];
840
- this._hideMenu(menu.id);
841
- }
842
- }
843
-
844
- _showMenuElement(menuElement, pageX, pageY) { // Shows the given menu element, at the specified page coordinates
845
- menuElement.style.display = 'block';
846
- const menuHeight = menuElement.offsetHeight;
847
- const menuWidth = menuElement.offsetWidth;
848
- if ((pageY + menuHeight) > window.innerHeight) {
849
- pageY = window.innerHeight - menuHeight;
850
- }
851
- if ((pageX + menuWidth) > window.innerWidth) {
852
- pageX = window.innerWidth - menuWidth;
853
- }
854
- menuElement.style.left = pageX + 'px';
855
- menuElement.style.top = pageY + 'px';
856
- }
857
-
858
- _hideMenuElement(menuElement) {
859
- menuElement.style.display = 'none';
860
- }
861
- }
862
-
863
- export {ContextMenu};