@mlightcad/cad-simple-viewer 1.5.5 → 1.5.7

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/LICENSE +1 -1
  2. package/README.md +69 -1
  3. package/dist/{index.js → cad-simple-viewer.js} +34247 -29923
  4. package/dist/cad-simple-viewer.umd.cjs +913 -0
  5. package/dist/dxf-parser-worker.js +2091 -0
  6. package/dist/libredwg-parser-worker.js +5388 -5122
  7. package/dist/mtext-renderer-worker.js +3061 -2858
  8. package/lib/app/AcApContext.d.ts.map +1 -1
  9. package/lib/app/AcApContext.js +15 -2
  10. package/lib/app/AcApContext.js.map +1 -1
  11. package/lib/app/AcApDocManager.d.ts +63 -0
  12. package/lib/app/AcApDocManager.d.ts.map +1 -1
  13. package/lib/app/AcApDocManager.js +195 -23
  14. package/lib/app/AcApDocManager.js.map +1 -1
  15. package/lib/app/AcApDocument.d.ts +81 -0
  16. package/lib/app/AcApDocument.d.ts.map +1 -1
  17. package/lib/app/AcApDocument.js +154 -0
  18. package/lib/app/AcApDocument.js.map +1 -1
  19. package/lib/app/AcApLayerSessionState.d.ts +15 -0
  20. package/lib/app/AcApLayerSessionState.d.ts.map +1 -0
  21. package/lib/app/AcApLayerSessionState.js +2 -0
  22. package/lib/app/AcApLayerSessionState.js.map +1 -0
  23. package/lib/app/AcApOpenFileDialog.d.ts +35 -0
  24. package/lib/app/AcApOpenFileDialog.d.ts.map +1 -0
  25. package/lib/app/AcApOpenFileDialog.js +192 -0
  26. package/lib/app/AcApOpenFileDialog.js.map +1 -0
  27. package/lib/app/AcApWebworkerReadiness.d.ts +18 -0
  28. package/lib/app/AcApWebworkerReadiness.d.ts.map +1 -0
  29. package/lib/app/AcApWebworkerReadiness.js +126 -0
  30. package/lib/app/AcApWebworkerReadiness.js.map +1 -0
  31. package/lib/app/AcDbOpenDatabaseOptions.d.ts +29 -0
  32. package/lib/app/AcDbOpenDatabaseOptions.d.ts.map +1 -1
  33. package/lib/app/AcDbOpenDatabaseOptions.js +10 -1
  34. package/lib/app/AcDbOpenDatabaseOptions.js.map +1 -1
  35. package/lib/app/index.d.ts +4 -0
  36. package/lib/app/index.d.ts.map +1 -1
  37. package/lib/app/index.js +3 -0
  38. package/lib/app/index.js.map +1 -1
  39. package/lib/command/AcApCacheFontCmd.d.ts +25 -0
  40. package/lib/command/AcApCacheFontCmd.d.ts.map +1 -0
  41. package/lib/command/AcApCacheFontCmd.js +142 -0
  42. package/lib/command/AcApCacheFontCmd.js.map +1 -0
  43. package/lib/command/AcApOpenCmd.d.ts +3 -22
  44. package/lib/command/AcApOpenCmd.d.ts.map +1 -1
  45. package/lib/command/AcApOpenCmd.js +3 -22
  46. package/lib/command/AcApOpenCmd.js.map +1 -1
  47. package/lib/command/AcApRedoCmd.d.ts +10 -0
  48. package/lib/command/AcApRedoCmd.d.ts.map +1 -0
  49. package/lib/command/AcApRedoCmd.js +85 -0
  50. package/lib/command/AcApRedoCmd.js.map +1 -0
  51. package/lib/command/AcApSysVarCmd.d.ts.map +1 -1
  52. package/lib/command/AcApSysVarCmd.js +5 -11
  53. package/lib/command/AcApSysVarCmd.js.map +1 -1
  54. package/lib/command/AcApUndoCmd.d.ts +10 -0
  55. package/lib/command/AcApUndoCmd.d.ts.map +1 -0
  56. package/lib/command/AcApUndoCmd.js +85 -0
  57. package/lib/command/AcApUndoCmd.js.map +1 -0
  58. package/lib/command/convert/AcApPngConvertor.d.ts +1 -1
  59. package/lib/command/convert/AcApPngConvertor.d.ts.map +1 -1
  60. package/lib/command/convert/AcApPngConvertor.js +5 -2
  61. package/lib/command/convert/AcApPngConvertor.js.map +1 -1
  62. package/lib/command/draw/AcApArcCmd.d.ts.map +1 -1
  63. package/lib/command/draw/AcApArcCmd.js +2 -5
  64. package/lib/command/draw/AcApArcCmd.js.map +1 -1
  65. package/lib/command/draw/AcApEllipseCmd.d.ts.map +1 -1
  66. package/lib/command/draw/AcApEllipseCmd.js +14 -9
  67. package/lib/command/draw/AcApEllipseCmd.js.map +1 -1
  68. package/lib/command/draw/AcApHatchCmd.d.ts +1 -1
  69. package/lib/command/draw/AcApLineCmd.d.ts.map +1 -1
  70. package/lib/command/draw/AcApLineCmd.js +8 -2
  71. package/lib/command/draw/AcApLineCmd.js.map +1 -1
  72. package/lib/command/draw/AcApMLineCmd.d.ts.map +1 -1
  73. package/lib/command/draw/AcApMLineCmd.js +4 -2
  74. package/lib/command/draw/AcApMLineCmd.js.map +1 -1
  75. package/lib/command/draw/AcApPolygonCmd.d.ts.map +1 -1
  76. package/lib/command/draw/AcApPolygonCmd.js +2 -5
  77. package/lib/command/draw/AcApPolygonCmd.js.map +1 -1
  78. package/lib/command/draw/AcApPolylineCmd.d.ts.map +1 -1
  79. package/lib/command/draw/AcApPolylineCmd.js +3 -0
  80. package/lib/command/draw/AcApPolylineCmd.js.map +1 -1
  81. package/lib/command/draw/AcApRectCmd.d.ts +6 -0
  82. package/lib/command/draw/AcApRectCmd.d.ts.map +1 -1
  83. package/lib/command/draw/AcApRectCmd.js +12 -10
  84. package/lib/command/draw/AcApRectCmd.js.map +1 -1
  85. package/lib/command/draw/AcApSplineCmd.d.ts.map +1 -1
  86. package/lib/command/draw/AcApSplineCmd.js +2 -0
  87. package/lib/command/draw/AcApSplineCmd.js.map +1 -1
  88. package/lib/command/draw/AcApXLineCmd.d.ts.map +1 -1
  89. package/lib/command/draw/AcApXLineCmd.js +1 -1
  90. package/lib/command/draw/AcApXLineCmd.js.map +1 -1
  91. package/lib/command/index.d.ts +3 -0
  92. package/lib/command/index.d.ts.map +1 -1
  93. package/lib/command/index.js +3 -0
  94. package/lib/command/index.js.map +1 -1
  95. package/lib/command/layer/AcApLayerCmd.d.ts +3 -194
  96. package/lib/command/layer/AcApLayerCmd.d.ts.map +1 -1
  97. package/lib/command/layer/AcApLayerCmd.js +64 -398
  98. package/lib/command/layer/AcApLayerCmd.js.map +1 -1
  99. package/lib/command/layer/AcApLayerCurCmd.d.ts +2 -34
  100. package/lib/command/layer/AcApLayerCurCmd.d.ts.map +1 -1
  101. package/lib/command/layer/AcApLayerCurCmd.js +18 -77
  102. package/lib/command/layer/AcApLayerCurCmd.js.map +1 -1
  103. package/lib/command/layer/AcApLayerDelCmd.d.ts +2 -32
  104. package/lib/command/layer/AcApLayerDelCmd.d.ts.map +1 -1
  105. package/lib/command/layer/AcApLayerDelCmd.js +26 -169
  106. package/lib/command/layer/AcApLayerDelCmd.js.map +1 -1
  107. package/lib/command/layer/AcApLayerFreezeCmd.d.ts +2 -16
  108. package/lib/command/layer/AcApLayerFreezeCmd.d.ts.map +1 -1
  109. package/lib/command/layer/AcApLayerFreezeCmd.js +32 -54
  110. package/lib/command/layer/AcApLayerFreezeCmd.js.map +1 -1
  111. package/lib/command/layer/AcApLayerIsoCmd.d.ts +2 -31
  112. package/lib/command/layer/AcApLayerIsoCmd.d.ts.map +1 -1
  113. package/lib/command/layer/AcApLayerIsoCmd.js +19 -198
  114. package/lib/command/layer/AcApLayerIsoCmd.js.map +1 -1
  115. package/lib/command/layer/AcApLayerLockCmd.d.ts +2 -40
  116. package/lib/command/layer/AcApLayerLockCmd.d.ts.map +1 -1
  117. package/lib/command/layer/AcApLayerLockCmd.js +18 -65
  118. package/lib/command/layer/AcApLayerLockCmd.js.map +1 -1
  119. package/lib/command/layer/AcApLayerMutationCmd.d.ts +13 -0
  120. package/lib/command/layer/AcApLayerMutationCmd.d.ts.map +1 -0
  121. package/lib/command/layer/AcApLayerMutationCmd.js +42 -0
  122. package/lib/command/layer/AcApLayerMutationCmd.js.map +1 -0
  123. package/lib/command/layer/AcApLayerOffCmd.d.ts +2 -9
  124. package/lib/command/layer/AcApLayerOffCmd.d.ts.map +1 -1
  125. package/lib/command/layer/AcApLayerOffCmd.js +32 -43
  126. package/lib/command/layer/AcApLayerOffCmd.js.map +1 -1
  127. package/lib/command/layer/AcApLayerOnCmd.d.ts +2 -22
  128. package/lib/command/layer/AcApLayerOnCmd.d.ts.map +1 -1
  129. package/lib/command/layer/AcApLayerOnCmd.js +8 -62
  130. package/lib/command/layer/AcApLayerOnCmd.js.map +1 -1
  131. package/lib/command/layer/AcApLayerPCmd.d.ts +2 -75
  132. package/lib/command/layer/AcApLayerPCmd.d.ts.map +1 -1
  133. package/lib/command/layer/AcApLayerPCmd.js +6 -165
  134. package/lib/command/layer/AcApLayerPCmd.js.map +1 -1
  135. package/lib/command/layer/AcApLayerThawCmd.d.ts +2 -29
  136. package/lib/command/layer/AcApLayerThawCmd.d.ts.map +1 -1
  137. package/lib/command/layer/AcApLayerThawCmd.js +8 -74
  138. package/lib/command/layer/AcApLayerThawCmd.js.map +1 -1
  139. package/lib/command/layer/AcApLayerUnisoCmd.d.ts +2 -44
  140. package/lib/command/layer/AcApLayerUnisoCmd.d.ts.map +1 -1
  141. package/lib/command/layer/AcApLayerUnisoCmd.js +10 -122
  142. package/lib/command/layer/AcApLayerUnisoCmd.js.map +1 -1
  143. package/lib/command/layer/AcApLayerUnlockCmd.d.ts +2 -40
  144. package/lib/command/layer/AcApLayerUnlockCmd.d.ts.map +1 -1
  145. package/lib/command/layer/AcApLayerUnlockCmd.js +18 -65
  146. package/lib/command/layer/AcApLayerUnlockCmd.js.map +1 -1
  147. package/lib/command/modify/AcApCopyCmd.d.ts +12 -0
  148. package/lib/command/modify/AcApCopyCmd.d.ts.map +1 -1
  149. package/lib/command/modify/AcApCopyCmd.js +67 -177
  150. package/lib/command/modify/AcApCopyCmd.js.map +1 -1
  151. package/lib/command/modify/AcApCopyPreviewJig.d.ts +21 -0
  152. package/lib/command/modify/AcApCopyPreviewJig.d.ts.map +1 -0
  153. package/lib/command/modify/AcApCopyPreviewJig.js +61 -0
  154. package/lib/command/modify/AcApCopyPreviewJig.js.map +1 -0
  155. package/lib/command/modify/AcApEraseCmd.d.ts +0 -6
  156. package/lib/command/modify/AcApEraseCmd.d.ts.map +1 -1
  157. package/lib/command/modify/AcApEraseCmd.js +11 -38
  158. package/lib/command/modify/AcApEraseCmd.js.map +1 -1
  159. package/lib/command/modify/AcApHideObjectsCmd.d.ts +0 -7
  160. package/lib/command/modify/AcApHideObjectsCmd.d.ts.map +1 -1
  161. package/lib/command/modify/AcApHideObjectsCmd.js +1 -8
  162. package/lib/command/modify/AcApHideObjectsCmd.js.map +1 -1
  163. package/lib/command/modify/AcApMoveCmd.d.ts +0 -6
  164. package/lib/command/modify/AcApMoveCmd.d.ts.map +1 -1
  165. package/lib/command/modify/AcApMoveCmd.js +26 -105
  166. package/lib/command/modify/AcApMoveCmd.js.map +1 -1
  167. package/lib/command/modify/AcApMovePreviewJig.d.ts +18 -0
  168. package/lib/command/modify/AcApMovePreviewJig.d.ts.map +1 -0
  169. package/lib/command/modify/AcApMovePreviewJig.js +45 -0
  170. package/lib/command/modify/AcApMovePreviewJig.js.map +1 -0
  171. package/lib/command/modify/AcApOffsetCmd.d.ts.map +1 -1
  172. package/lib/command/modify/AcApOffsetCmd.js +14 -37
  173. package/lib/command/modify/AcApOffsetCmd.js.map +1 -1
  174. package/lib/command/modify/AcApRotateCmd.d.ts +2 -2
  175. package/lib/command/modify/AcApRotateCmd.d.ts.map +1 -1
  176. package/lib/command/modify/AcApRotateCmd.js +38 -204
  177. package/lib/command/modify/AcApRotateCmd.js.map +1 -1
  178. package/lib/command/modify/AcApRotatePreviewJig.d.ts +47 -0
  179. package/lib/command/modify/AcApRotatePreviewJig.d.ts.map +1 -0
  180. package/lib/command/modify/AcApRotatePreviewJig.js +97 -0
  181. package/lib/command/modify/AcApRotatePreviewJig.js.map +1 -0
  182. package/lib/command/modify/AcApUnisolateObjectsCmd.d.ts.map +1 -1
  183. package/lib/command/modify/AcApUnisolateObjectsCmd.js +3 -3
  184. package/lib/command/modify/AcApUnisolateObjectsCmd.js.map +1 -1
  185. package/lib/editor/command/AcEdCommand.d.ts +24 -0
  186. package/lib/editor/command/AcEdCommand.d.ts.map +1 -1
  187. package/lib/editor/command/AcEdCommand.js +71 -5
  188. package/lib/editor/command/AcEdCommand.js.map +1 -1
  189. package/lib/editor/global/AcEdUiColor.d.ts +13 -13
  190. package/lib/editor/global/AcEdUiColor.d.ts.map +1 -1
  191. package/lib/editor/global/AcEdUiColor.js +21 -20
  192. package/lib/editor/global/AcEdUiColor.js.map +1 -1
  193. package/lib/editor/global/eventBus.d.ts +16 -2
  194. package/lib/editor/global/eventBus.d.ts.map +1 -1
  195. package/lib/editor/global/eventBus.js.map +1 -1
  196. package/lib/editor/grip/AcEdGripAppearance.d.ts +18 -0
  197. package/lib/editor/grip/AcEdGripAppearance.d.ts.map +1 -0
  198. package/lib/editor/grip/AcEdGripAppearance.js +30 -0
  199. package/lib/editor/grip/AcEdGripAppearance.js.map +1 -0
  200. package/lib/editor/grip/AcEdGripEditSession.d.ts +29 -0
  201. package/lib/editor/grip/AcEdGripEditSession.d.ts.map +1 -0
  202. package/lib/editor/grip/AcEdGripEditSession.js +83 -0
  203. package/lib/editor/grip/AcEdGripEditSession.js.map +1 -0
  204. package/lib/editor/grip/AcEdGripHandle.d.ts +21 -0
  205. package/lib/editor/grip/AcEdGripHandle.d.ts.map +1 -0
  206. package/lib/editor/grip/AcEdGripHandle.js +62 -0
  207. package/lib/editor/grip/AcEdGripHandle.js.map +1 -0
  208. package/lib/editor/grip/AcEdGripManager.d.ts +171 -0
  209. package/lib/editor/grip/AcEdGripManager.d.ts.map +1 -0
  210. package/lib/editor/grip/AcEdGripManager.js +376 -0
  211. package/lib/editor/grip/AcEdGripManager.js.map +1 -0
  212. package/lib/editor/grip/AcEdGripPolicy.d.ts +6 -0
  213. package/lib/editor/grip/AcEdGripPolicy.d.ts.map +1 -0
  214. package/lib/editor/grip/AcEdGripPolicy.js +30 -0
  215. package/lib/editor/grip/AcEdGripPolicy.js.map +1 -0
  216. package/lib/editor/grip/AcEdGripPreviewJig.d.ts +21 -0
  217. package/lib/editor/grip/AcEdGripPreviewJig.d.ts.map +1 -0
  218. package/lib/editor/grip/AcEdGripPreviewJig.js +73 -0
  219. package/lib/editor/grip/AcEdGripPreviewJig.js.map +1 -0
  220. package/lib/editor/grip/index.d.ts +5 -0
  221. package/lib/editor/grip/index.d.ts.map +1 -0
  222. package/lib/editor/grip/index.js +5 -0
  223. package/lib/editor/grip/index.js.map +1 -0
  224. package/lib/editor/index.d.ts +1 -0
  225. package/lib/editor/index.d.ts.map +1 -1
  226. package/lib/editor/index.js +1 -0
  227. package/lib/editor/index.js.map +1 -1
  228. package/lib/editor/input/AcEdBatchPreview.d.ts +96 -0
  229. package/lib/editor/input/AcEdBatchPreview.d.ts.map +1 -0
  230. package/lib/editor/input/AcEdBatchPreview.js +125 -0
  231. package/lib/editor/input/AcEdBatchPreview.js.map +1 -0
  232. package/lib/editor/input/AcEdCursorManager.d.ts.map +1 -1
  233. package/lib/editor/input/AcEdCursorManager.js +2 -2
  234. package/lib/editor/input/AcEdCursorManager.js.map +1 -1
  235. package/lib/editor/input/AcEdOsnapResolver.d.ts +34 -0
  236. package/lib/editor/input/AcEdOsnapResolver.d.ts.map +1 -0
  237. package/lib/editor/input/AcEdOsnapResolver.js +117 -0
  238. package/lib/editor/input/AcEdOsnapResolver.js.map +1 -0
  239. package/lib/editor/input/AcEdPreviewJig.d.ts +1 -1
  240. package/lib/editor/input/AcEdPreviewJig.d.ts.map +1 -1
  241. package/lib/editor/input/AcEdPreviewJig.js +14 -0
  242. package/lib/editor/input/AcEdPreviewJig.js.map +1 -1
  243. package/lib/editor/input/AcEdSelectionPreviewJig.d.ts +109 -0
  244. package/lib/editor/input/AcEdSelectionPreviewJig.d.ts.map +1 -0
  245. package/lib/editor/input/AcEdSelectionPreviewJig.js +185 -0
  246. package/lib/editor/input/AcEdSelectionPreviewJig.js.map +1 -0
  247. package/lib/editor/input/handler/AcEdAngleHandler.d.ts +2 -1
  248. package/lib/editor/input/handler/AcEdAngleHandler.d.ts.map +1 -1
  249. package/lib/editor/input/handler/AcEdAngleHandler.js +6 -0
  250. package/lib/editor/input/handler/AcEdAngleHandler.js.map +1 -1
  251. package/lib/editor/input/handler/AcEdInputHandler.d.ts +20 -1
  252. package/lib/editor/input/handler/AcEdInputHandler.d.ts.map +1 -1
  253. package/lib/editor/input/handler/AcEdKeywordHandler.d.ts +2 -1
  254. package/lib/editor/input/handler/AcEdKeywordHandler.d.ts.map +1 -1
  255. package/lib/editor/input/handler/AcEdKeywordHandler.js +3 -0
  256. package/lib/editor/input/handler/AcEdKeywordHandler.js.map +1 -1
  257. package/lib/editor/input/handler/AcEdNumericalHandler.d.ts +2 -1
  258. package/lib/editor/input/handler/AcEdNumericalHandler.d.ts.map +1 -1
  259. package/lib/editor/input/handler/AcEdNumericalHandler.js +6 -0
  260. package/lib/editor/input/handler/AcEdNumericalHandler.js.map +1 -1
  261. package/lib/editor/input/handler/AcEdPointHandler.d.ts +17 -1
  262. package/lib/editor/input/handler/AcEdPointHandler.d.ts.map +1 -1
  263. package/lib/editor/input/handler/AcEdPointHandler.js +89 -0
  264. package/lib/editor/input/handler/AcEdPointHandler.js.map +1 -1
  265. package/lib/editor/input/handler/AcEdStringHandler.d.ts +2 -1
  266. package/lib/editor/input/handler/AcEdStringHandler.d.ts.map +1 -1
  267. package/lib/editor/input/handler/AcEdStringHandler.js +3 -0
  268. package/lib/editor/input/handler/AcEdStringHandler.js.map +1 -1
  269. package/lib/editor/input/index.d.ts +3 -0
  270. package/lib/editor/input/index.d.ts.map +1 -1
  271. package/lib/editor/input/index.js +3 -0
  272. package/lib/editor/input/index.js.map +1 -1
  273. package/lib/editor/input/prompt/AcEdPromptAngleOptions.d.ts +7 -0
  274. package/lib/editor/input/prompt/AcEdPromptAngleOptions.d.ts.map +1 -1
  275. package/lib/editor/input/prompt/AcEdPromptAngleOptions.js +17 -0
  276. package/lib/editor/input/prompt/AcEdPromptAngleOptions.js.map +1 -1
  277. package/lib/editor/input/session/AcEdInputSession.d.ts +11 -1
  278. package/lib/editor/input/session/AcEdInputSession.d.ts.map +1 -1
  279. package/lib/editor/input/session/AcEdInputSession.js.map +1 -1
  280. package/lib/editor/input/session/AcEdPromptInputSession.d.ts +51 -0
  281. package/lib/editor/input/session/AcEdPromptInputSession.d.ts.map +1 -0
  282. package/lib/editor/input/session/AcEdPromptInputSession.js +109 -0
  283. package/lib/editor/input/session/AcEdPromptInputSession.js.map +1 -0
  284. package/lib/editor/input/session/index.d.ts +1 -0
  285. package/lib/editor/input/session/index.d.ts.map +1 -1
  286. package/lib/editor/input/session/index.js +1 -0
  287. package/lib/editor/input/session/index.js.map +1 -1
  288. package/lib/editor/input/ui/AcEdCommandLine.d.ts +10 -0
  289. package/lib/editor/input/ui/AcEdCommandLine.d.ts.map +1 -1
  290. package/lib/editor/input/ui/AcEdCommandLine.js +67 -35
  291. package/lib/editor/input/ui/AcEdCommandLine.js.map +1 -1
  292. package/lib/editor/input/ui/AcEdFloatingInput.d.ts +0 -11
  293. package/lib/editor/input/ui/AcEdFloatingInput.d.ts.map +1 -1
  294. package/lib/editor/input/ui/AcEdFloatingInput.js +9 -119
  295. package/lib/editor/input/ui/AcEdFloatingInput.js.map +1 -1
  296. package/lib/editor/input/ui/AcEdFloatingInputBox.d.ts.map +1 -1
  297. package/lib/editor/input/ui/AcEdFloatingInputBox.js +10 -2
  298. package/lib/editor/input/ui/AcEdFloatingInputBox.js.map +1 -1
  299. package/lib/editor/input/ui/AcEdFloatingInputBoxes.d.ts.map +1 -1
  300. package/lib/editor/input/ui/AcEdFloatingInputBoxes.js +9 -4
  301. package/lib/editor/input/ui/AcEdFloatingInputBoxes.js.map +1 -1
  302. package/lib/editor/input/ui/AcEdInputManager.d.ts +26 -23
  303. package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
  304. package/lib/editor/input/ui/AcEdInputManager.js +135 -83
  305. package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
  306. package/lib/editor/input/ui/AcEdMTextEditor.js +2 -2
  307. package/lib/editor/input/ui/AcEdMTextEditor.js.map +1 -1
  308. package/lib/editor/view/AcEdBaseView.d.ts +44 -2
  309. package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
  310. package/lib/editor/view/AcEdBaseView.js +26 -12
  311. package/lib/editor/view/AcEdBaseView.js.map +1 -1
  312. package/lib/editor/view/AcEdSpatialQueryResult.d.ts +28 -0
  313. package/lib/editor/view/AcEdSpatialQueryResult.d.ts.map +1 -1
  314. package/lib/editor/view/AcEdSpatialQueryResult.js +65 -1
  315. package/lib/editor/view/AcEdSpatialQueryResult.js.map +1 -1
  316. package/lib/i18n/AcApI18n.d.ts +42 -0
  317. package/lib/i18n/AcApI18n.d.ts.map +1 -1
  318. package/lib/i18n/AcApI18n.js +56 -4
  319. package/lib/i18n/AcApI18n.js.map +1 -1
  320. package/lib/i18n/en/command.d.ts +26 -0
  321. package/lib/i18n/en/command.d.ts.map +1 -1
  322. package/lib/i18n/en/command.js +26 -0
  323. package/lib/i18n/en/command.js.map +1 -1
  324. package/lib/i18n/en/jig.d.ts +26 -0
  325. package/lib/i18n/en/jig.d.ts.map +1 -1
  326. package/lib/i18n/en/jig.js +134 -108
  327. package/lib/i18n/en/jig.js.map +1 -1
  328. package/lib/i18n/en/main.d.ts +3 -0
  329. package/lib/i18n/en/main.d.ts.map +1 -1
  330. package/lib/i18n/en/main.js +4 -1
  331. package/lib/i18n/en/main.js.map +1 -1
  332. package/lib/i18n/zh/command.d.ts +26 -0
  333. package/lib/i18n/zh/command.d.ts.map +1 -1
  334. package/lib/i18n/zh/command.js +26 -0
  335. package/lib/i18n/zh/command.js.map +1 -1
  336. package/lib/i18n/zh/jig.d.ts +26 -0
  337. package/lib/i18n/zh/jig.d.ts.map +1 -1
  338. package/lib/i18n/zh/jig.js +134 -108
  339. package/lib/i18n/zh/jig.js.map +1 -1
  340. package/lib/i18n/zh/main.d.ts +3 -0
  341. package/lib/i18n/zh/main.d.ts.map +1 -1
  342. package/lib/i18n/zh/main.js +4 -1
  343. package/lib/i18n/zh/main.js.map +1 -1
  344. package/lib/index.d.ts +1 -0
  345. package/lib/index.d.ts.map +1 -1
  346. package/lib/index.js +1 -0
  347. package/lib/index.js.map +1 -1
  348. package/lib/plugin/AcApLazyPluginRegistration.d.ts +3 -8
  349. package/lib/plugin/AcApLazyPluginRegistration.d.ts.map +1 -1
  350. package/lib/service/AcApEntitySelection.d.ts +42 -0
  351. package/lib/service/AcApEntitySelection.d.ts.map +1 -0
  352. package/lib/service/AcApEntitySelection.js +156 -0
  353. package/lib/service/AcApEntitySelection.js.map +1 -0
  354. package/lib/service/AcApEntityService.d.ts +115 -0
  355. package/lib/service/AcApEntityService.d.ts.map +1 -0
  356. package/lib/service/AcApEntityService.js +194 -0
  357. package/lib/service/AcApEntityService.js.map +1 -0
  358. package/lib/{command/layer → service}/AcApLayerIsoState.d.ts +6 -24
  359. package/lib/service/AcApLayerIsoState.d.ts.map +1 -0
  360. package/lib/service/AcApLayerIsoState.js +28 -0
  361. package/lib/service/AcApLayerIsoState.js.map +1 -0
  362. package/lib/service/AcApLayerService.d.ts +400 -0
  363. package/lib/service/AcApLayerService.d.ts.map +1 -0
  364. package/lib/service/AcApLayerService.js +1240 -0
  365. package/lib/service/AcApLayerService.js.map +1 -0
  366. package/lib/service/AcApLayerStore.d.ts +198 -0
  367. package/lib/service/AcApLayerStore.d.ts.map +1 -0
  368. package/lib/service/AcApLayerStore.js +335 -0
  369. package/lib/service/AcApLayerStore.js.map +1 -0
  370. package/lib/service/AcApServiceEdit.d.ts +18 -0
  371. package/lib/service/AcApServiceEdit.d.ts.map +1 -0
  372. package/lib/service/AcApServiceEdit.js +34 -0
  373. package/lib/service/AcApServiceEdit.js.map +1 -0
  374. package/lib/service/index.d.ts +16 -0
  375. package/lib/service/index.d.ts.map +1 -0
  376. package/lib/service/index.js +16 -0
  377. package/lib/service/index.js.map +1 -0
  378. package/lib/service/types.d.ts +116 -0
  379. package/lib/service/types.d.ts.map +1 -0
  380. package/lib/service/types.js +5 -0
  381. package/lib/service/types.js.map +1 -0
  382. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts +22 -7
  383. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts.map +1 -1
  384. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js +58 -12
  385. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js.map +1 -1
  386. package/lib/spatialIndex/AcTrLinearSpatialIndex.d.ts +2 -2
  387. package/lib/spatialIndex/AcTrLinearSpatialIndex.d.ts.map +1 -1
  388. package/lib/spatialIndex/AcTrLinearSpatialIndex.js +9 -3
  389. package/lib/spatialIndex/AcTrLinearSpatialIndex.js.map +1 -1
  390. package/lib/spatialIndex/AcTrRBushSpatialIndex.d.ts +2 -2
  391. package/lib/spatialIndex/AcTrRBushSpatialIndex.d.ts.map +1 -1
  392. package/lib/spatialIndex/AcTrRBushSpatialIndex.js +19 -5
  393. package/lib/spatialIndex/AcTrRBushSpatialIndex.js.map +1 -1
  394. package/lib/spatialIndex/AcTrSpatialIndex.d.ts +10 -1
  395. package/lib/spatialIndex/AcTrSpatialIndex.d.ts.map +1 -1
  396. package/lib/spatialIndex/AcTrSpatialIndex.js +7 -1
  397. package/lib/spatialIndex/AcTrSpatialIndex.js.map +1 -1
  398. package/lib/util/AcApDatabaseEdit.d.ts +11 -0
  399. package/lib/util/AcApDatabaseEdit.d.ts.map +1 -0
  400. package/lib/util/AcApDatabaseEdit.js +20 -0
  401. package/lib/util/AcApDatabaseEdit.js.map +1 -0
  402. package/lib/util/AcApFontUtil.d.ts +14 -2
  403. package/lib/util/AcApFontUtil.d.ts.map +1 -1
  404. package/lib/util/AcApFontUtil.js +18 -0
  405. package/lib/util/AcApFontUtil.js.map +1 -1
  406. package/lib/util/AcApGeTransform.d.ts +10 -0
  407. package/lib/util/AcApGeTransform.d.ts.map +1 -0
  408. package/lib/util/AcApGeTransform.js +15 -0
  409. package/lib/util/AcApGeTransform.js.map +1 -0
  410. package/lib/util/index.d.ts +2 -0
  411. package/lib/util/index.d.ts.map +1 -1
  412. package/lib/util/index.js +2 -0
  413. package/lib/util/index.js.map +1 -1
  414. package/lib/view/AcEdViewKeyHandler.d.ts +32 -0
  415. package/lib/view/AcEdViewKeyHandler.d.ts.map +1 -0
  416. package/lib/view/AcEdViewKeyHandler.js +101 -0
  417. package/lib/view/AcEdViewKeyHandler.js.map +1 -0
  418. package/lib/view/AcTrEntityDisplayController.d.ts +46 -0
  419. package/lib/view/AcTrEntityDisplayController.d.ts.map +1 -0
  420. package/lib/view/AcTrEntityDisplayController.js +114 -0
  421. package/lib/view/AcTrEntityDisplayController.js.map +1 -0
  422. package/lib/view/AcTrGroupWcsBboxAssert.d.ts +43 -0
  423. package/lib/view/AcTrGroupWcsBboxAssert.d.ts.map +1 -0
  424. package/lib/view/AcTrGroupWcsBboxAssert.js +84 -0
  425. package/lib/view/AcTrGroupWcsBboxAssert.js.map +1 -0
  426. package/lib/view/AcTrInheritedLayerMaterialMapper.d.ts +49 -0
  427. package/lib/view/AcTrInheritedLayerMaterialMapper.d.ts.map +1 -0
  428. package/lib/view/AcTrInheritedLayerMaterialMapper.js +138 -0
  429. package/lib/view/AcTrInheritedLayerMaterialMapper.js.map +1 -0
  430. package/lib/view/AcTrLayer.d.ts +33 -2
  431. package/lib/view/AcTrLayer.d.ts.map +1 -1
  432. package/lib/view/AcTrLayer.js +75 -2
  433. package/lib/view/AcTrLayer.js.map +1 -1
  434. package/lib/view/AcTrLayerAppearanceController.d.ts +55 -0
  435. package/lib/view/AcTrLayerAppearanceController.d.ts.map +1 -0
  436. package/lib/view/AcTrLayerAppearanceController.js +86 -0
  437. package/lib/view/AcTrLayerAppearanceController.js.map +1 -0
  438. package/lib/view/AcTrLayout.d.ts +37 -2
  439. package/lib/view/AcTrLayout.d.ts.map +1 -1
  440. package/lib/view/AcTrLayout.js +161 -15
  441. package/lib/view/AcTrLayout.js.map +1 -1
  442. package/lib/view/AcTrProgressiveOpenFitController.d.ts +64 -0
  443. package/lib/view/AcTrProgressiveOpenFitController.d.ts.map +1 -0
  444. package/lib/view/AcTrProgressiveOpenFitController.js +209 -0
  445. package/lib/view/AcTrProgressiveOpenFitController.js.map +1 -0
  446. package/lib/view/AcTrScene.d.ts +47 -1
  447. package/lib/view/AcTrScene.d.ts.map +1 -1
  448. package/lib/view/AcTrScene.js +78 -3
  449. package/lib/view/AcTrScene.js.map +1 -1
  450. package/lib/view/AcTrView2d.d.ts +118 -27
  451. package/lib/view/AcTrView2d.d.ts.map +1 -1
  452. package/lib/view/AcTrView2d.js +584 -362
  453. package/lib/view/AcTrView2d.js.map +1 -1
  454. package/lib/view/index.d.ts +3 -0
  455. package/lib/view/index.d.ts.map +1 -1
  456. package/lib/view/index.js +3 -0
  457. package/lib/view/index.js.map +1 -1
  458. package/package.json +13 -11
  459. package/dist/index.umd.cjs +0 -897
  460. package/lib/command/layer/AcApLayerIsoState.d.ts.map +0 -1
  461. package/lib/command/layer/AcApLayerIsoState.js +0 -53
  462. package/lib/command/layer/AcApLayerIsoState.js.map +0 -1
@@ -0,0 +1,209 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import { AcGeBox2d, AcGeVector2d } from '@mlightcad/data-model';
38
+ /**
39
+ * Coordinates camera framing while a document is opened and entities are still
40
+ * being batch-converted into the scene.
41
+ *
42
+ * Responsibilities:
43
+ * - Throttled incremental fit for large drawings while entities convert
44
+ * - Final fit once conversion completes (always from batch geometry bounds)
45
+ * - Stop auto-framing when the user pans or zooms manually
46
+ * - Yield to the render loop so geometry appears progressively
47
+ *
48
+ * The host view ({@link AcTrView2d}) supplies layout fit boxes and performs
49
+ * the actual camera updates through {@link AcTrProgressiveOpenFitZoomFn}.
50
+ */
51
+ var AcTrProgressiveOpenFitController = /** @class */ (function () {
52
+ function AcTrProgressiveOpenFitController(zoomTo) {
53
+ this.zoomTo = zoomTo;
54
+ this.active = false;
55
+ this.userAdjusted = false;
56
+ this.programmaticDepth = 0;
57
+ this.incrementalEnabled = false;
58
+ this.initialPendingCount = 0;
59
+ this.lastZoomAt = 0;
60
+ }
61
+ Object.defineProperty(AcTrProgressiveOpenFitController.prototype, "isActive", {
62
+ get: function () {
63
+ return this.active;
64
+ },
65
+ enumerable: false,
66
+ configurable: true
67
+ });
68
+ /**
69
+ * Starts progressive open framing for the current document open operation.
70
+ */
71
+ AcTrProgressiveOpenFitController.prototype.begin = function (pendingEntityCount) {
72
+ this.active = true;
73
+ this.userAdjusted = false;
74
+ this.lastZoomAt = 0;
75
+ this.initialPendingCount = pendingEntityCount;
76
+ this.lastFittedBox = undefined;
77
+ this.incrementalEnabled = this.shouldEnableIncrementalFit();
78
+ };
79
+ /** Ends progressive open framing. */
80
+ AcTrProgressiveOpenFitController.prototype.end = function () {
81
+ this.active = false;
82
+ this.incrementalEnabled = false;
83
+ this.lastFittedBox = undefined;
84
+ };
85
+ /**
86
+ * Applies the terminal fit after all entities are converted, unless the user
87
+ * already adjusted the view manually.
88
+ */
89
+ AcTrProgressiveOpenFitController.prototype.applyFinalFit = function (resolveFitBox) {
90
+ if (this.userAdjusted) {
91
+ return;
92
+ }
93
+ var box = resolveFitBox();
94
+ if (box) {
95
+ this.applyZoom(box);
96
+ }
97
+ };
98
+ /**
99
+ * Notifies the controller that the active layout camera changed. User-driven
100
+ * changes cancel further auto framing.
101
+ */
102
+ AcTrProgressiveOpenFitController.prototype.onLayoutViewChanged = function () {
103
+ if (!this.active || this.userAdjusted || this.programmaticDepth > 0) {
104
+ return;
105
+ }
106
+ this.userAdjusted = true;
107
+ this.end();
108
+ };
109
+ /**
110
+ * Called after one entity (or group bucket) was added to the scene during open.
111
+ */
112
+ AcTrProgressiveOpenFitController.prototype.afterGeometryBatch = function (resolveFitBox, entityIndex) {
113
+ return __awaiter(this, void 0, void 0, function () {
114
+ return __generator(this, function (_a) {
115
+ switch (_a.label) {
116
+ case 0:
117
+ this.maybeIncrementalFit(resolveFitBox);
118
+ if (!(entityIndex != null)) return [3 /*break*/, 2];
119
+ return [4 /*yield*/, this.yieldForRender(entityIndex)];
120
+ case 1:
121
+ _a.sent();
122
+ _a.label = 2;
123
+ case 2: return [2 /*return*/];
124
+ }
125
+ });
126
+ });
127
+ };
128
+ /**
129
+ * Yields to {@link requestAnimationFrame} periodically so the render loop can
130
+ * paint converted geometry during document open.
131
+ */
132
+ AcTrProgressiveOpenFitController.prototype.yieldForRender = function (entityIndex) {
133
+ return __awaiter(this, void 0, void 0, function () {
134
+ return __generator(this, function (_a) {
135
+ switch (_a.label) {
136
+ case 0:
137
+ if (!this.active ||
138
+ entityIndex % AcTrProgressiveOpenFitController.YIELD_EVERY !== 0) {
139
+ return [2 /*return*/];
140
+ }
141
+ return [4 /*yield*/, new Promise(function (resolve) {
142
+ requestAnimationFrame(function () { return resolve(); });
143
+ })];
144
+ case 1:
145
+ _a.sent();
146
+ return [2 /*return*/];
147
+ }
148
+ });
149
+ });
150
+ };
151
+ AcTrProgressiveOpenFitController.prototype.maybeIncrementalFit = function (resolveFitBox) {
152
+ if (!this.active || !this.incrementalEnabled || this.userAdjusted) {
153
+ return;
154
+ }
155
+ var now = performance.now();
156
+ if (now - this.lastZoomAt <
157
+ AcTrProgressiveOpenFitController.FIT_INTERVAL_MS) {
158
+ return;
159
+ }
160
+ var box = resolveFitBox();
161
+ if (!box || !this.shouldApplyIncrementalFit(box)) {
162
+ return;
163
+ }
164
+ this.lastZoomAt = now;
165
+ this.applyZoom(box);
166
+ };
167
+ AcTrProgressiveOpenFitController.prototype.shouldEnableIncrementalFit = function () {
168
+ return (this.initialPendingCount >=
169
+ AcTrProgressiveOpenFitController.SMALL_ENTITY_THRESHOLD);
170
+ };
171
+ AcTrProgressiveOpenFitController.prototype.shouldApplyIncrementalFit = function (box) {
172
+ var lastBox = this.lastFittedBox;
173
+ if (!lastBox) {
174
+ return true;
175
+ }
176
+ var lastArea = this.estimateBoxArea(lastBox);
177
+ if (lastArea <= Number.EPSILON) {
178
+ return true;
179
+ }
180
+ return (this.estimateBoxArea(box) >=
181
+ lastArea * AcTrProgressiveOpenFitController.BBOX_GROWTH_RATIO);
182
+ };
183
+ AcTrProgressiveOpenFitController.prototype.applyZoom = function (box, margin) {
184
+ if (margin === void 0) { margin = 1.1; }
185
+ this.programmaticDepth++;
186
+ try {
187
+ this.zoomTo(box, margin);
188
+ this.lastFittedBox = this.snapshotFitBox(box);
189
+ }
190
+ finally {
191
+ this.programmaticDepth--;
192
+ }
193
+ };
194
+ AcTrProgressiveOpenFitController.prototype.estimateBoxArea = function (box) {
195
+ var size = new AcGeVector2d();
196
+ box.getSize(size);
197
+ return Math.abs(size.x) * Math.abs(size.y);
198
+ };
199
+ AcTrProgressiveOpenFitController.prototype.snapshotFitBox = function (box) {
200
+ return new AcGeBox2d({ x: box.min.x, y: box.min.y }, { x: box.max.x, y: box.max.y });
201
+ };
202
+ AcTrProgressiveOpenFitController.SMALL_ENTITY_THRESHOLD = 500;
203
+ AcTrProgressiveOpenFitController.BBOX_GROWTH_RATIO = 1.5;
204
+ AcTrProgressiveOpenFitController.FIT_INTERVAL_MS = 500;
205
+ AcTrProgressiveOpenFitController.YIELD_EVERY = 32;
206
+ return AcTrProgressiveOpenFitController;
207
+ }());
208
+ export { AcTrProgressiveOpenFitController };
209
+ //# sourceMappingURL=AcTrProgressiveOpenFitController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcTrProgressiveOpenFitController.js","sourceRoot":"","sources":["../../src/view/AcTrProgressiveOpenFitController.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { AcDbObjectId, AcGeBox2d, AcGeBox3d } from '@mlightcad/data-model';
2
2
  import { AcTrEntity, AcTrHtmlTransientManager } from '@mlightcad/three-renderer';
3
3
  import { AcEdLayerInfo } from 'editor';
4
4
  import * as THREE from 'three';
5
+ import type { AcTrSpatialSearchOptions } from '../spatialIndex/AcTrSpatialIndex';
5
6
  import { AcTrLayer } from './AcTrLayer';
6
7
  import { AcTrLayout, AcTrLayoutStats } from './AcTrLayout';
7
8
  export interface AcTrSceneStats {
@@ -82,6 +83,8 @@ export declare class AcTrScene {
82
83
  private _transientManager;
83
84
  /** HTML transient elements manager */
84
85
  private _htmlTransientManager;
86
+ /** Batched preview overlay manager */
87
+ private _previewOverlayManager;
85
88
  /**
86
89
  * Creates a new CAD scene instance.
87
90
  *
@@ -194,9 +197,16 @@ export declare class AcTrScene {
194
197
  * @param box Input the query bounding box
195
198
  * @returns Return query results
196
199
  */
197
- search(box: AcGeBox2d | AcGeBox3d): import("editor").AcEdSpatialQueryResultItemEx[];
200
+ search(box: AcGeBox2d | AcGeBox3d, options?: AcTrSpatialSearchOptions): import("editor").AcEdSpatialQueryResultItemEx[];
198
201
  addLayer(layer: AcEdLayerInfo): AcTrLayer[];
199
202
  updateLayer(layer: AcEdLayerInfo): AcTrLayer[];
203
+ /**
204
+ * Invokes a callback for every scene layer group with the given name across layouts.
205
+ *
206
+ * @param layerName - Layer name shared by each layout's {@link AcTrLayer} bucket.
207
+ * @param fn - Callback invoked with the scene layer and owning layout.
208
+ */
209
+ forEachSceneLayer(layerName: string, fn: (sceneLayer: AcTrLayer, layout: AcTrLayout) => void): void;
200
210
  /**
201
211
  * Add the specified transient entity into this scene
202
212
  * @param entity Input one transient entity
@@ -207,6 +217,42 @@ export declare class AcTrScene {
207
217
  * @param objectId Input the object id of the transient entity to remove
208
218
  */
209
219
  removeTransientEntity(objectId: AcDbObjectId): void;
220
+ /**
221
+ * Applies world transforms to existing transient entities without reconverting
222
+ * database entities on every cursor move.
223
+ */
224
+ updateTransientPreviewTransforms(transforms: ReadonlyArray<{
225
+ objectId: AcDbObjectId;
226
+ matrix: THREE.Matrix4;
227
+ }>): boolean;
228
+ /**
229
+ * Returns true when every requested entity exists in the active layout.
230
+ *
231
+ * @param entityIds - Database object ids required for preview creation
232
+ */
233
+ canCreatePreview(entityIds: AcDbObjectId[]): boolean;
234
+ /**
235
+ * Creates one batched preview overlay for command jigs.
236
+ *
237
+ * @param entityIds - Database object ids to include in the preview overlay
238
+ * @returns Preview handle id, or `null` when preview creation failed
239
+ */
240
+ createPreview(entityIds: AcDbObjectId[]): string | null;
241
+ /**
242
+ * Updates the transform of one batched preview overlay.
243
+ *
244
+ * @param handleId - Preview handle returned by {@link createPreview}
245
+ * @param matrix - World transform copied onto the preview root
246
+ * @returns `true` when the handle exists and the transform was applied
247
+ */
248
+ updatePreview(handleId: string, matrix: THREE.Matrix4): boolean;
249
+ /**
250
+ * Removes one batched preview overlay.
251
+ *
252
+ * @param handleId - Preview handle returned by {@link createPreview}
253
+ * @returns `true` when the handle existed and was removed
254
+ */
255
+ removePreview(handleId: string): boolean;
210
256
  /**
211
257
  * Add one persistent entity (stored in the drawing database) into this scene. If the layout
212
258
  * associated with this entity doesn't exist, then create one layout, add this layout into
@@ -1 +1 @@
1
- {"version":3,"file":"AcTrScene.d.ts","sourceRoot":"","sources":["../../src/view/AcTrScene.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcTrScene.d.ts","sourceRoot":"","sources":["../../src/view/AcTrScene.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ var __read = (this && this.__read) || function (o, n) {
26
26
  return ar;
27
27
  };
28
28
  import { log } from '@mlightcad/data-model';
29
- import { AcTrHtmlTransientManager, AcTrTransientManager } from '@mlightcad/three-renderer';
29
+ import { AcTrHtmlTransientManager, AcTrPreviewOverlayManager, AcTrTransientManager } from '@mlightcad/three-renderer';
30
30
  import * as THREE from 'three';
31
31
  import { AcTrLayout } from './AcTrLayout';
32
32
  /**
@@ -80,6 +80,7 @@ var AcTrScene = /** @class */ (function () {
80
80
  this._scene = new THREE.Scene();
81
81
  this._transientManager = new AcTrTransientManager(this._scene);
82
82
  this._htmlTransientManager = new AcTrHtmlTransientManager(this._scene);
83
+ this._previewOverlayManager = new AcTrPreviewOverlayManager(this._scene);
83
84
  this._layers = new Map();
84
85
  this._layouts = new Map();
85
86
  this._activeLayoutBtrId = '';
@@ -295,9 +296,11 @@ var AcTrScene = /** @class */ (function () {
295
296
  this._layers.clear();
296
297
  this._transientManager.clear();
297
298
  this._htmlTransientManager.clear();
299
+ this._previewOverlayManager.clear();
298
300
  this._scene.clear();
299
301
  this._transientManager = new AcTrTransientManager(this._scene);
300
302
  this._htmlTransientManager = new AcTrHtmlTransientManager(this._scene);
303
+ this._previewOverlayManager = new AcTrPreviewOverlayManager(this._scene);
301
304
  return this;
302
305
  };
303
306
  /**
@@ -363,9 +366,9 @@ var AcTrScene = /** @class */ (function () {
363
366
  * @param box Input the query bounding box
364
367
  * @returns Return query results
365
368
  */
366
- AcTrScene.prototype.search = function (box) {
369
+ AcTrScene.prototype.search = function (box, options) {
367
370
  var activeLayout = this.activeLayout;
368
- return activeLayout ? activeLayout === null || activeLayout === void 0 ? void 0 : activeLayout.search(box) : [];
371
+ return activeLayout ? activeLayout.search(box, options) : [];
369
372
  };
370
373
  AcTrScene.prototype.addLayer = function (layer) {
371
374
  var updatedLayers = [];
@@ -387,6 +390,20 @@ var AcTrScene = /** @class */ (function () {
387
390
  });
388
391
  return updatedLayers;
389
392
  };
393
+ /**
394
+ * Invokes a callback for every scene layer group with the given name across layouts.
395
+ *
396
+ * @param layerName - Layer name shared by each layout's {@link AcTrLayer} bucket.
397
+ * @param fn - Callback invoked with the scene layer and owning layout.
398
+ */
399
+ AcTrScene.prototype.forEachSceneLayer = function (layerName, fn) {
400
+ this._layouts.forEach(function (layout) {
401
+ var sceneLayer = layout.getLayer(layerName);
402
+ if (sceneLayer) {
403
+ fn(sceneLayer, layout);
404
+ }
405
+ });
406
+ };
390
407
  /**
391
408
  * Add the specified transient entity into this scene
392
409
  * @param entity Input one transient entity
@@ -401,6 +418,64 @@ var AcTrScene = /** @class */ (function () {
401
418
  AcTrScene.prototype.removeTransientEntity = function (objectId) {
402
419
  this._transientManager.remove(objectId);
403
420
  };
421
+ /**
422
+ * Applies world transforms to existing transient entities without reconverting
423
+ * database entities on every cursor move.
424
+ */
425
+ AcTrScene.prototype.updateTransientPreviewTransforms = function (transforms) {
426
+ return this._transientManager.applyTransforms(transforms.map(function (entry) { return ({
427
+ id: entry.objectId,
428
+ matrix: entry.matrix
429
+ }); }));
430
+ };
431
+ /**
432
+ * Returns true when every requested entity exists in the active layout.
433
+ *
434
+ * @param entityIds - Database object ids required for preview creation
435
+ */
436
+ AcTrScene.prototype.canCreatePreview = function (entityIds) {
437
+ var layout = this.activeLayout;
438
+ if (!layout) {
439
+ return false;
440
+ }
441
+ return layout.canCreateEntityPreview(entityIds);
442
+ };
443
+ /**
444
+ * Creates one batched preview overlay for command jigs.
445
+ *
446
+ * @param entityIds - Database object ids to include in the preview overlay
447
+ * @returns Preview handle id, or `null` when preview creation failed
448
+ */
449
+ AcTrScene.prototype.createPreview = function (entityIds) {
450
+ var layout = this.activeLayout;
451
+ if (!layout) {
452
+ return null;
453
+ }
454
+ var root = layout.createEntityPreviewRoot(entityIds);
455
+ if (!root) {
456
+ return null;
457
+ }
458
+ return this._previewOverlayManager.add(root).id;
459
+ };
460
+ /**
461
+ * Updates the transform of one batched preview overlay.
462
+ *
463
+ * @param handleId - Preview handle returned by {@link createPreview}
464
+ * @param matrix - World transform copied onto the preview root
465
+ * @returns `true` when the handle exists and the transform was applied
466
+ */
467
+ AcTrScene.prototype.updatePreview = function (handleId, matrix) {
468
+ return this._previewOverlayManager.update(handleId, matrix);
469
+ };
470
+ /**
471
+ * Removes one batched preview overlay.
472
+ *
473
+ * @param handleId - Preview handle returned by {@link createPreview}
474
+ * @returns `true` when the handle existed and was removed
475
+ */
476
+ AcTrScene.prototype.removePreview = function (handleId) {
477
+ return this._previewOverlayManager.remove(handleId);
478
+ };
404
479
  /**
405
480
  * Add one persistent entity (stored in the drawing database) into this scene. If the layout
406
481
  * associated with this entity doesn't exist, then create one layout, add this layout into
@@ -1 +1 @@
1
- {"version":3,"file":"AcTrScene.js","sourceRoot":"","sources":["../../src/view/AcTrScene.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcTrScene.js","sourceRoot":"","sources":["../../src/view/AcTrScene.ts"],"names":[],"mappings":"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"}