@mlightcad/cad-simple-viewer 1.5.0 → 1.5.1

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 (159) hide show
  1. package/dist/index.js +11070 -34695
  2. package/dist/index.umd.cjs +39 -52
  3. package/dist/libredwg-parser-worker.js +3955 -7422
  4. package/dist/mtext-renderer-worker.js +978 -789
  5. package/dist/viewer-runtime.iife.js +3879 -0
  6. package/lib/app/AcApAnnotation.js +4 -4
  7. package/lib/app/AcApAnnotation.js.map +1 -1
  8. package/lib/app/AcApDocManager.d.ts +45 -1
  9. package/lib/app/AcApDocManager.d.ts.map +1 -1
  10. package/lib/app/AcApDocManager.js +127 -10
  11. package/lib/app/AcApDocManager.js.map +1 -1
  12. package/lib/command/AcApZoomCmd.js +3 -3
  13. package/lib/command/AcApZoomCmd.js.map +1 -1
  14. package/lib/command/convert/AcApExportHtmlCmd.d.ts +22 -0
  15. package/lib/command/convert/AcApExportHtmlCmd.d.ts.map +1 -0
  16. package/lib/command/convert/AcApExportHtmlCmd.js +93 -0
  17. package/lib/command/convert/AcApExportHtmlCmd.js.map +1 -0
  18. package/lib/command/convert/AcApHtmlConvertor.d.ts +61 -0
  19. package/lib/command/convert/AcApHtmlConvertor.d.ts.map +1 -0
  20. package/lib/command/convert/AcApHtmlConvertor.js +223 -0
  21. package/lib/command/convert/AcApHtmlConvertor.js.map +1 -0
  22. package/lib/command/convert/AcApHtmlSnapshotBuilder.d.ts +65 -0
  23. package/lib/command/convert/AcApHtmlSnapshotBuilder.d.ts.map +1 -0
  24. package/lib/command/convert/AcApHtmlSnapshotBuilder.js +301 -0
  25. package/lib/command/convert/AcApHtmlSnapshotBuilder.js.map +1 -0
  26. package/lib/command/convert/index.d.ts +3 -0
  27. package/lib/command/convert/index.d.ts.map +1 -1
  28. package/lib/command/convert/index.js +3 -0
  29. package/lib/command/convert/index.js.map +1 -1
  30. package/lib/command/draw/AcApArcCmd.d.ts.map +1 -1
  31. package/lib/command/draw/AcApArcCmd.js +46 -20
  32. package/lib/command/draw/AcApArcCmd.js.map +1 -1
  33. package/lib/command/draw/AcApCircleCmd.d.ts.map +1 -1
  34. package/lib/command/draw/AcApCircleCmd.js +5 -6
  35. package/lib/command/draw/AcApCircleCmd.js.map +1 -1
  36. package/lib/command/draw/AcApEllipseCmd.d.ts.map +1 -1
  37. package/lib/command/draw/AcApEllipseCmd.js +4 -6
  38. package/lib/command/draw/AcApEllipseCmd.js.map +1 -1
  39. package/lib/command/draw/AcApMLineCmd.d.ts.map +1 -1
  40. package/lib/command/draw/AcApMLineCmd.js +4 -7
  41. package/lib/command/draw/AcApMLineCmd.js.map +1 -1
  42. package/lib/command/draw/AcApMTextCmd.d.ts.map +1 -1
  43. package/lib/command/draw/AcApMTextCmd.js +3 -1
  44. package/lib/command/draw/AcApMTextCmd.js.map +1 -1
  45. package/lib/command/draw/AcApPolygonCmd.d.ts.map +1 -1
  46. package/lib/command/draw/AcApPolygonCmd.js +4 -5
  47. package/lib/command/draw/AcApPolygonCmd.js.map +1 -1
  48. package/lib/command/draw/AcApPolylineCmd.d.ts +49 -0
  49. package/lib/command/draw/AcApPolylineCmd.d.ts.map +1 -1
  50. package/lib/command/draw/AcApPolylineCmd.js +200 -18
  51. package/lib/command/draw/AcApPolylineCmd.js.map +1 -1
  52. package/lib/command/draw/AcApRayCmd.d.ts.map +1 -1
  53. package/lib/command/draw/AcApRayCmd.js +2 -3
  54. package/lib/command/draw/AcApRayCmd.js.map +1 -1
  55. package/lib/command/draw/AcApRectCmd.d.ts.map +1 -1
  56. package/lib/command/draw/AcApRectCmd.js +9 -10
  57. package/lib/command/draw/AcApRectCmd.js.map +1 -1
  58. package/lib/command/draw/AcApSplineCmd.d.ts.map +1 -1
  59. package/lib/command/draw/AcApSplineCmd.js +3 -6
  60. package/lib/command/draw/AcApSplineCmd.js.map +1 -1
  61. package/lib/command/draw/AcApXLineCmd.d.ts.map +1 -1
  62. package/lib/command/draw/AcApXLineCmd.js +2 -3
  63. package/lib/command/draw/AcApXLineCmd.js.map +1 -1
  64. package/lib/command/measure/AcApClearMeasurementsCmd.d.ts +11 -0
  65. package/lib/command/measure/AcApClearMeasurementsCmd.d.ts.map +1 -1
  66. package/lib/command/measure/AcApClearMeasurementsCmd.js +15 -4
  67. package/lib/command/measure/AcApClearMeasurementsCmd.js.map +1 -1
  68. package/lib/command/measure/AcApMeasureAngleCmd.d.ts.map +1 -1
  69. package/lib/command/measure/AcApMeasureAngleCmd.js +15 -6
  70. package/lib/command/measure/AcApMeasureAngleCmd.js.map +1 -1
  71. package/lib/command/measure/AcApMeasureArcCmd.d.ts.map +1 -1
  72. package/lib/command/measure/AcApMeasureArcCmd.js +11 -4
  73. package/lib/command/measure/AcApMeasureArcCmd.js.map +1 -1
  74. package/lib/command/measure/AcApMeasureAreaCmd.d.ts.map +1 -1
  75. package/lib/command/measure/AcApMeasureAreaCmd.js +11 -4
  76. package/lib/command/measure/AcApMeasureAreaCmd.js.map +1 -1
  77. package/lib/command/measure/AcApMeasureDistanceCmd.d.ts +3 -2
  78. package/lib/command/measure/AcApMeasureDistanceCmd.d.ts.map +1 -1
  79. package/lib/command/measure/AcApMeasureDistanceCmd.js +14 -6
  80. package/lib/command/measure/AcApMeasureDistanceCmd.js.map +1 -1
  81. package/lib/command/modify/AcApOffsetCmd.d.ts +30 -0
  82. package/lib/command/modify/AcApOffsetCmd.d.ts.map +1 -0
  83. package/lib/command/modify/AcApOffsetCmd.js +424 -0
  84. package/lib/command/modify/AcApOffsetCmd.js.map +1 -0
  85. package/lib/command/modify/AcApRotateCmd.d.ts.map +1 -1
  86. package/lib/command/modify/AcApRotateCmd.js +3 -4
  87. package/lib/command/modify/AcApRotateCmd.js.map +1 -1
  88. package/lib/command/modify/index.d.ts +1 -0
  89. package/lib/command/modify/index.d.ts.map +1 -1
  90. package/lib/command/modify/index.js +1 -0
  91. package/lib/command/modify/index.js.map +1 -1
  92. package/lib/command/review/AcApRevCircleCmd.d.ts.map +1 -1
  93. package/lib/command/review/AcApRevCircleCmd.js +4 -1
  94. package/lib/command/review/AcApRevCircleCmd.js.map +1 -1
  95. package/lib/editor/input/AcEdSelectionFilter.js +7 -6
  96. package/lib/editor/input/AcEdSelectionFilter.js.map +1 -1
  97. package/lib/editor/input/prompt/AcEdPromptDistanceOptions.d.ts.map +1 -1
  98. package/lib/editor/input/prompt/AcEdPromptDistanceOptions.js +1 -1
  99. package/lib/editor/input/prompt/AcEdPromptDistanceOptions.js.map +1 -1
  100. package/lib/editor/input/ui/AcEdFloatingInput.d.ts +9 -0
  101. package/lib/editor/input/ui/AcEdFloatingInput.d.ts.map +1 -1
  102. package/lib/editor/input/ui/AcEdFloatingInput.js +21 -3
  103. package/lib/editor/input/ui/AcEdFloatingInput.js.map +1 -1
  104. package/lib/editor/input/ui/AcEdInputManager.d.ts +25 -6
  105. package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
  106. package/lib/editor/input/ui/AcEdInputManager.js +119 -39
  107. package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
  108. package/lib/editor/input/ui/AcEdMTextEditor.d.ts +67 -2
  109. package/lib/editor/input/ui/AcEdMTextEditor.d.ts.map +1 -1
  110. package/lib/editor/input/ui/AcEdMTextEditor.js +210 -19
  111. package/lib/editor/input/ui/AcEdMTextEditor.js.map +1 -1
  112. package/lib/editor/input/ui/AcEdRubberBand.d.ts.map +1 -1
  113. package/lib/editor/input/ui/AcEdRubberBand.js +16 -8
  114. package/lib/editor/input/ui/AcEdRubberBand.js.map +1 -1
  115. package/lib/i18n/en/command.d.ts +64 -10
  116. package/lib/i18n/en/command.d.ts.map +1 -1
  117. package/lib/i18n/en/command.js +67 -13
  118. package/lib/i18n/en/command.js.map +1 -1
  119. package/lib/i18n/en/jig.d.ts +8 -0
  120. package/lib/i18n/en/jig.d.ts.map +1 -1
  121. package/lib/i18n/en/jig.js +8 -0
  122. package/lib/i18n/en/jig.js.map +1 -1
  123. package/lib/i18n/zh/command.d.ts +64 -10
  124. package/lib/i18n/zh/command.d.ts.map +1 -1
  125. package/lib/i18n/zh/command.js +67 -13
  126. package/lib/i18n/zh/command.js.map +1 -1
  127. package/lib/i18n/zh/jig.d.ts +8 -0
  128. package/lib/i18n/zh/jig.d.ts.map +1 -1
  129. package/lib/i18n/zh/jig.js +8 -0
  130. package/lib/i18n/zh/jig.js.map +1 -1
  131. package/lib/index.d.ts +2 -1
  132. package/lib/index.d.ts.map +1 -1
  133. package/lib/index.js +2 -1
  134. package/lib/index.js.map +1 -1
  135. package/lib/util/AcApFontUtil.d.ts +69 -0
  136. package/lib/util/AcApFontUtil.d.ts.map +1 -0
  137. package/lib/util/AcApFontUtil.js +161 -0
  138. package/lib/util/AcApFontUtil.js.map +1 -0
  139. package/lib/util/index.d.ts +2 -0
  140. package/lib/util/index.d.ts.map +1 -1
  141. package/lib/util/index.js +2 -0
  142. package/lib/util/index.js.map +1 -1
  143. package/lib/util/yieldToMain.d.ts +5 -0
  144. package/lib/util/yieldToMain.d.ts.map +1 -0
  145. package/lib/util/yieldToMain.js +11 -0
  146. package/lib/util/yieldToMain.js.map +1 -0
  147. package/lib/view/AcTrLayoutView.d.ts +12 -0
  148. package/lib/view/AcTrLayoutView.d.ts.map +1 -1
  149. package/lib/view/AcTrLayoutView.js +18 -0
  150. package/lib/view/AcTrLayoutView.js.map +1 -1
  151. package/lib/view/AcTrScene.d.ts +38 -6
  152. package/lib/view/AcTrScene.d.ts.map +1 -1
  153. package/lib/view/AcTrScene.js +57 -30
  154. package/lib/view/AcTrScene.js.map +1 -1
  155. package/lib/view/AcTrView2d.d.ts +166 -0
  156. package/lib/view/AcTrView2d.d.ts.map +1 -1
  157. package/lib/view/AcTrView2d.js +586 -53
  158. package/lib/view/AcTrView2d.js.map +1 -1
  159. package/package.json +14 -8
@@ -74,6 +74,37 @@ export declare class AcTrView2d extends AcEdBaseView {
74
74
  private _numOfEntitiesToProcess;
75
75
  /** CSS2D renderer for HTML transient overlays */
76
76
  private _css2dRenderer;
77
+ /**
78
+ * Block table record ids of layouts whose entities are currently being
79
+ * batch-converted into the scene. Used by
80
+ * {@link AcTrView2d.loadLayoutEntitiesIfNeeded} to guard against
81
+ * re-entrant calls before the `setTimeout` callback flips
82
+ * `AcTrLayout.isLoaded` to `true`, which would otherwise duplicate
83
+ * entities when the same layout tab is clicked twice in quick succession.
84
+ */
85
+ private _loadingLayouts;
86
+ /**
87
+ * Block table record ids of layouts that have already received an
88
+ * initial zoom-to-fit. Used by the `layoutSwitched` handler to apply
89
+ * the auto-zoom **only on the first user visit** to each layout, and
90
+ * to preserve the camera state on subsequent visits (matches AutoCAD's
91
+ * per-tab view persistence).
92
+ *
93
+ * Cannot be inferred from `_layoutViewManager.has(btrId)` because
94
+ * `addLayout` pre-creates an `AcTrLayoutView` for every layout in the
95
+ * DWG at document load time — by the time the user clicks a layout
96
+ * tab the view already exists, so "first existence of view" is
97
+ * always false. This set tracks the orthogonal question "has the user
98
+ * actually focused on this layout before?".
99
+ *
100
+ * Marked from two entry points:
101
+ * - `onAfterOpenDocument` (via `markLayoutAsInitialized`): the
102
+ * document's startup layout is initialized externally, so we don't
103
+ * auto-zoom again when the user clicks back to it.
104
+ * - `layoutSwitched` handler: after the first user-driven switch
105
+ * completes its initial zoom-to-fit.
106
+ */
107
+ private _initializedLayouts;
77
108
  /**
78
109
  * Creates a new 2D CAD viewer instance.
79
110
  *
@@ -166,6 +197,10 @@ export declare class AcTrView2d extends AcEdBaseView {
166
197
  * The statistics of the current scene
167
198
  */
168
199
  get stats(): import("./AcTrScene").AcTrSceneStats;
200
+ /**
201
+ * CAD scene graph used for rendering and HTML export.
202
+ */
203
+ get cadScene(): AcTrScene;
169
204
  /**
170
205
  * The internal THREE scene used by this view.
171
206
  */
@@ -215,10 +250,53 @@ export declare class AcTrView2d extends AcEdBaseView {
215
250
  * @inheritdoc
216
251
  */
217
252
  flyTo(point: AcGePoint2dLike, scale: number): void;
253
+ private openPickedMTextEditor;
254
+ private editMTextEntity;
255
+ private resolveMTextEditorWidth;
256
+ private resolveMTextEditorTextHeight;
257
+ private pixelsToWorldY;
258
+ private getMTextToolbarFontFamilies;
218
259
  /**
219
260
  * @inheritdoc
261
+ *
262
+ * In **paper space** layouts the selection pipeline supports
263
+ * "drill-through": clicks inside a viewport rectangle resolve against
264
+ * the model-space entities that are visually rendered through that
265
+ * viewport, rather than picking the viewport's border. Clicks **near**
266
+ * the border still pick the `AcDbViewport` entity itself so the user
267
+ * can grip, move, lock or delete the viewport.
268
+ *
269
+ * This mirrors AutoCAD **web** behaviour (single-click selection of
270
+ * model content through the viewport). The desktop ARX behaviour
271
+ * (explicit MSPACE/PSPACE modes, CVPORT system variable, double-click
272
+ * to enter mspace) is a separate, larger feature — tracked in
273
+ * `.claude/plans/next_14_viewports_full.md` PR-γ Option A. We
274
+ * intentionally do **not** implement it here.
275
+ *
276
+ * The border vs interior decision uses a tolerance derived from
277
+ * `selectionBoxSize` (the same pixel-sized hit radius used elsewhere
278
+ * in pick) converted to paper-space WCS via `pointToBox`. This keeps
279
+ * the gesture consistent with how other entity edges behave — you
280
+ * don't have to land pixel-perfect on the viewport line to grab it.
220
281
  */
221
282
  pick(point?: AcGePoint2dLike, hitRadius?: number, pickOneOnly?: boolean): AcEdSpatialQueryResultItemEx[];
283
+ /**
284
+ * Resolves hits against the model-space layout for each viewport the
285
+ * click drills through. Appends the matches into `results` (caller
286
+ * sorts/dedups). Kept private and separate from `pick` so the main
287
+ * pick path stays a single straight read.
288
+ *
289
+ * Each viewport gets its own raycaster shot (using the viewport view's
290
+ * own camera, which is zoomed to `viewport.viewBox` in model WCS), so
291
+ * a click that lands in overlapping viewports correctly resolves
292
+ * against each viewport's particular model framing.
293
+ *
294
+ * `pickThroughViewports` does NOT consult the active (paper) layout's
295
+ * spatial index — that work is already done by the caller. It only
296
+ * adds model-space results that would otherwise be invisible to the
297
+ * paper-space pick.
298
+ */
299
+ private pickThroughViewports;
222
300
  /**
223
301
  * @inheritdoc
224
302
  */
@@ -265,6 +343,57 @@ export declare class AcTrView2d extends AcEdBaseView {
265
343
  * @inheritdoc
266
344
  */
267
345
  addLayout(layout: AcDbLayout): void;
346
+ /**
347
+ * Marks a layout as already framed by an external caller (typically
348
+ * `AcApDocManager.onAfterOpenDocument`, which zooms the startup
349
+ * layout right after parsing). Subsequent `layoutSwitched` events
350
+ * for this btrId will skip their initial zoom-to-fit so the user's
351
+ * camera state on the startup layout is preserved when they click
352
+ * back to that tab.
353
+ *
354
+ * This is the public counterpart of the `_initializedLayouts` set —
355
+ * exposed so the application layer can stay in sync with the view's
356
+ * notion of "which layouts have been framed already" without
357
+ * needing access to private state.
358
+ */
359
+ markLayoutAsInitialized(layoutBtrId: AcDbObjectId): void;
360
+ /**
361
+ * Applies the initial zoom-to-fit for a layout the user just switched
362
+ * into for the first time. Picks the best available "what should the
363
+ * camera frame?" signal in this order:
364
+ *
365
+ * 1. **`AcDbLayout.limits`** (LIMMIN/LIMMAX) — only when it actually
366
+ * contains the layout's viewports. Many real DWGs ship with garbage
367
+ * limits (e.g. `(0,0)-(12,9)` from a legacy template setup) that
368
+ * don't reflect the actual paper sheet. We reject those by
369
+ * checking containment against `viewportsBoundingBox`.
370
+ *
371
+ * 2. **`AcTrLayoutView.viewportsBoundingBox`** — bounding box of all
372
+ * real user viewports in the layout. In production sheets viewports
373
+ * typically span 70-90% of the paper, so this is a great proxy for
374
+ * the printable area and (crucially) ignores outliers like title
375
+ * blocks authored in a different unit/scale.
376
+ *
377
+ * 3. **`AcDbLayout.extents`** — the layout's own EXTMIN/EXTMAX, if
378
+ * populated. Many parsers leave this empty (we've seen `(0,0)-(0,0)`),
379
+ * so it sits below the viewport-based heuristic.
380
+ *
381
+ * 4. **`zoomToFitDrawing`** (entity extents from spatial index) —
382
+ * last-resort fallback for layouts with no viewports and no
383
+ * sensible limits/extents (e.g. a freshly created empty paper).
384
+ * Vulnerable to scale-mismatch outliers, but better than no zoom.
385
+ *
386
+ * **Critically, this runs through `AcEdConditionWaiter`**: at the
387
+ * moment `layoutSwitched` fires, the layout's entities (including its
388
+ * `AcDbViewport`s) have not yet been batch-converted into the scene
389
+ * — `loadLayoutEntitiesIfNeeded` chunked-converts via `setTimeout`.
390
+ * Without the waiter, `viewportsBoundingBox` returns undefined and
391
+ * the strategy degrades into (1) zooming to garbage `limits`, or
392
+ * (4) zooming to an empty scene box. The waiter polls
393
+ * `_numOfEntitiesToProcess` and only fires the heuristic once the
394
+ * conversion is done.
395
+ */
396
+ private applyInitialZoom;
268
397
  /**
269
398
  * @inheritdoc
270
399
  */
@@ -299,6 +428,22 @@ export declare class AcTrView2d extends AcEdBaseView {
299
428
  /**
300
429
  * Load entities from the specified layout if they haven't been loaded yet.
301
430
  * This ensures that when switching to a layout, all its entities are available for rendering.
431
+ *
432
+ * Two non-obvious invariants are enforced here:
433
+ *
434
+ * 1. The layout is looked up by `layoutBtrId` (the argument), not by
435
+ * `this._scene.activeLayout`. The active layout reference happens to
436
+ * match in the current `layoutSwitched` handler call site, but relying
437
+ * on it would silently miss layouts that are pre-loaded ahead of
438
+ * becoming active (e.g. background prefetch).
439
+ * 2. The `_loadingLayouts` guard prevents re-entrance while the
440
+ * `setTimeout` chunked-convert callback is still in flight. Without it,
441
+ * clicking the same layout tab twice in quick succession (or
442
+ * `layoutSwitched` firing twice during the async window) would iterate
443
+ * the block table record again and duplicate every entity in the
444
+ * layout — visible as ghosted overdraw and double the spatial-index
445
+ * weight.
446
+ *
302
447
  * @param layoutBtrId Input the block table record id of the layout
303
448
  */
304
449
  private loadLayoutEntitiesIfNeeded;
@@ -309,6 +454,27 @@ export declare class AcTrView2d extends AcEdBaseView {
309
454
  */
310
455
  private toggleStatsVisibility;
311
456
  private drawEntity;
457
+ /**
458
+ * Walks the given block table record once and creates one
459
+ * `AcTrViewportView` for every real `AcDbViewport` entity it finds
460
+ * (skipping the default paper-space viewport that is filtered
461
+ * everywhere else by `AcTrViewportView.isDefaultPaperSpaceViewport`).
462
+ *
463
+ * This is the recovery pass for paper-space layouts whose viewport
464
+ * entities reached `batchConvert` before the `AcTrLayoutView` was
465
+ * created — those entities were drawn and added to the scene, but
466
+ * the viewport-view creation step silently no-oped (lookup returned
467
+ * undefined). Without this recovery, `viewportsBoundingBox` stays
468
+ * `undefined` on first user visit, the initial-zoom strategy
469
+ * degrades to the bogus `limits` branch, and the layout renders as
470
+ * a "grain in the corner" with empty viewport scissors. See the
471
+ * call site in `loadLayoutEntitiesIfNeeded` for the full context.
472
+ *
473
+ * Cheap operation: only AcDbViewport entities are inspected; for a
474
+ * typical sheet that's a handful of entities even on 5000-entity
475
+ * paper layouts.
476
+ */
477
+ private ensureViewportViews;
312
478
  /**
313
479
  * Converts the specified database entities to three entities
314
480
  * @param entities - The database entities
@@ -1 +1 @@
1
- {"version":3,"file":"AcTrView2d.d.ts","sourceRoot":"","sources":["../../src/view/AcTrView2d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcTrView2d.d.ts","sourceRoot":"","sources":["../../src/view/AcTrView2d.ts"],"names":[],"mappings":"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"}