@mlightcad/cad-simple-viewer 1.4.12 → 1.5.0
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.
- package/dist/index.js +35505 -24550
- package/dist/index.umd.cjs +180 -49
- package/dist/libredwg-parser-worker.js +4874 -4548
- package/dist/mtext-renderer-worker.js +3587 -3534
- package/lib/app/AcApDocManager.d.ts +73 -8
- package/lib/app/AcApDocManager.d.ts.map +1 -1
- package/lib/app/AcApDocManager.js +216 -46
- package/lib/app/AcApDocManager.js.map +1 -1
- package/lib/command/AcApLogCmd.d.ts +1 -1
- package/lib/command/AcApLogCmd.d.ts.map +1 -1
- package/lib/command/AcApLogCmd.js +1 -1
- package/lib/command/AcApLogCmd.js.map +1 -1
- package/lib/command/AcApOpenCmd.d.ts +1 -1
- package/lib/command/AcApOpenCmd.d.ts.map +1 -1
- package/lib/command/AcApOpenCmd.js +1 -2
- package/lib/command/AcApOpenCmd.js.map +1 -1
- package/lib/command/AcApPanCmd.d.ts +1 -1
- package/lib/command/AcApPanCmd.d.ts.map +1 -1
- package/lib/command/AcApPanCmd.js +1 -2
- package/lib/command/AcApPanCmd.js.map +1 -1
- package/lib/command/AcApQNewCmd.d.ts +1 -1
- package/lib/command/AcApQNewCmd.d.ts.map +1 -1
- package/lib/command/AcApQNewCmd.js +1 -1
- package/lib/command/AcApQNewCmd.js.map +1 -1
- package/lib/command/AcApRegenCmd.d.ts +1 -1
- package/lib/command/AcApRegenCmd.d.ts.map +1 -1
- package/lib/command/AcApRegenCmd.js +1 -1
- package/lib/command/AcApRegenCmd.js.map +1 -1
- package/lib/command/AcApSelectCmd.d.ts +1 -1
- package/lib/command/AcApSelectCmd.d.ts.map +1 -1
- package/lib/command/AcApSelectCmd.js +1 -2
- package/lib/command/AcApSelectCmd.js.map +1 -1
- package/lib/command/AcApZoomCmd.d.ts +91 -20
- package/lib/command/AcApZoomCmd.d.ts.map +1 -1
- package/lib/command/AcApZoomCmd.js +288 -23
- package/lib/command/AcApZoomCmd.js.map +1 -1
- package/lib/command/{AcApConvertToDxfCmd.d.ts → convert/AcApConvertToDxfCmd.d.ts} +2 -2
- package/lib/command/convert/AcApConvertToDxfCmd.d.ts.map +1 -0
- package/lib/command/{AcApConvertToDxfCmd.js → convert/AcApConvertToDxfCmd.js} +1 -1
- package/lib/command/convert/AcApConvertToDxfCmd.js.map +1 -0
- package/lib/command/convert/AcApConvertToPngCmd.d.ts +53 -0
- package/lib/command/convert/AcApConvertToPngCmd.d.ts.map +1 -0
- package/lib/command/convert/AcApConvertToPngCmd.js +200 -0
- package/lib/command/convert/AcApConvertToPngCmd.js.map +1 -0
- package/lib/command/{AcApConvertToSvgCmd.d.ts → convert/AcApConvertToSvgCmd.d.ts} +2 -2
- package/lib/command/convert/AcApConvertToSvgCmd.d.ts.map +1 -0
- package/lib/command/{AcApConvertToSvgCmd.js → convert/AcApConvertToSvgCmd.js} +1 -1
- package/lib/command/convert/AcApConvertToSvgCmd.js.map +1 -0
- package/lib/command/convert/AcApDxfConvertor.d.ts.map +1 -0
- package/lib/command/{AcApDxfConvertor.js → convert/AcApDxfConvertor.js} +1 -1
- package/lib/command/convert/AcApDxfConvertor.js.map +1 -0
- package/lib/command/convert/AcApPngConvertor.d.ts +80 -0
- package/lib/command/convert/AcApPngConvertor.d.ts.map +1 -0
- package/lib/command/convert/AcApPngConvertor.js +233 -0
- package/lib/command/convert/AcApPngConvertor.js.map +1 -0
- package/lib/command/convert/AcApSvgConvertor.d.ts.map +1 -0
- package/lib/command/{AcApSvgConvertor.js → convert/AcApSvgConvertor.js} +1 -1
- package/lib/command/convert/AcApSvgConvertor.js.map +1 -0
- package/lib/command/convert/index.d.ts +6 -0
- package/lib/command/convert/index.d.ts.map +1 -0
- package/lib/command/convert/index.js +6 -0
- package/lib/command/convert/index.js.map +1 -0
- package/lib/command/draw/AcApArcCmd.d.ts +297 -0
- package/lib/command/draw/AcApArcCmd.d.ts.map +1 -0
- package/lib/command/{AcApArcCmd.js → draw/AcApArcCmd.js} +794 -13
- package/lib/command/draw/AcApArcCmd.js.map +1 -0
- package/lib/command/draw/AcApCircleCmd.d.ts +81 -0
- package/lib/command/draw/AcApCircleCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApCircleCmd.js +594 -0
- package/lib/command/draw/AcApCircleCmd.js.map +1 -0
- package/lib/command/{AcApDimLinearCmd.d.ts → draw/AcApDimLinearCmd.d.ts} +2 -2
- package/lib/command/draw/AcApDimLinearCmd.d.ts.map +1 -0
- package/lib/command/{AcApDimLinearCmd.js → draw/AcApDimLinearCmd.js} +3 -3
- package/lib/command/draw/AcApDimLinearCmd.js.map +1 -0
- package/lib/command/draw/AcApEllipseCmd.d.ts +87 -0
- package/lib/command/draw/AcApEllipseCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApEllipseCmd.js +583 -0
- package/lib/command/draw/AcApEllipseCmd.js.map +1 -0
- package/lib/command/draw/AcApHatchCmd.d.ts +247 -0
- package/lib/command/draw/AcApHatchCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApHatchCmd.js +900 -0
- package/lib/command/draw/AcApHatchCmd.js.map +1 -0
- package/lib/command/draw/AcApLineCmd.d.ts +57 -0
- package/lib/command/draw/AcApLineCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApLineCmd.js +263 -0
- package/lib/command/draw/AcApLineCmd.js.map +1 -0
- package/lib/command/draw/AcApMLineCmd.d.ts +31 -0
- package/lib/command/draw/AcApMLineCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApMLineCmd.js +531 -0
- package/lib/command/draw/AcApMLineCmd.js.map +1 -0
- package/lib/command/{AcApMTextCmd.d.ts → draw/AcApMTextCmd.d.ts} +2 -2
- package/lib/command/draw/AcApMTextCmd.d.ts.map +1 -0
- package/lib/command/{AcApMTextCmd.js → draw/AcApMTextCmd.js} +3 -3
- package/lib/command/draw/AcApMTextCmd.js.map +1 -0
- package/lib/command/draw/AcApPointCmd.d.ts +16 -0
- package/lib/command/draw/AcApPointCmd.d.ts.map +1 -0
- package/lib/command/{AcApZoomToBoxCmd.js → draw/AcApPointCmd.js} +32 -37
- package/lib/command/draw/AcApPointCmd.js.map +1 -0
- package/lib/command/draw/AcApPolygonCmd.d.ts +69 -0
- package/lib/command/draw/AcApPolygonCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApPolygonCmd.js +422 -0
- package/lib/command/draw/AcApPolygonCmd.js.map +1 -0
- package/lib/command/{AcApPolylineCmd.d.ts → draw/AcApPolylineCmd.d.ts} +2 -2
- package/lib/command/draw/AcApPolylineCmd.d.ts.map +1 -0
- package/lib/command/{AcApPolylineCmd.js → draw/AcApPolylineCmd.js} +3 -3
- package/lib/command/draw/AcApPolylineCmd.js.map +1 -0
- package/lib/command/draw/AcApRayCmd.d.ts +10 -0
- package/lib/command/draw/AcApRayCmd.d.ts.map +1 -0
- package/lib/command/{AcApLineCmd.js → draw/AcApRayCmd.js} +63 -44
- package/lib/command/draw/AcApRayCmd.js.map +1 -0
- package/lib/command/draw/AcApRectCmd.d.ts +168 -0
- package/lib/command/draw/AcApRectCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApRectCmd.js +822 -0
- package/lib/command/draw/AcApRectCmd.js.map +1 -0
- package/lib/command/draw/AcApSplineCmd.d.ts +85 -0
- package/lib/command/draw/AcApSplineCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApSplineCmd.js +620 -0
- package/lib/command/draw/AcApSplineCmd.js.map +1 -0
- package/lib/command/draw/AcApXLineCmd.d.ts +25 -0
- package/lib/command/draw/AcApXLineCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApXLineCmd.js +210 -0
- package/lib/command/draw/AcApXLineCmd.js.map +1 -0
- package/lib/command/draw/index.d.ts +16 -0
- package/lib/command/draw/index.d.ts.map +1 -0
- package/lib/command/draw/index.js +16 -0
- package/lib/command/draw/index.js.map +1 -0
- package/lib/command/index.d.ts +6 -26
- package/lib/command/index.d.ts.map +1 -1
- package/lib/command/index.js +6 -26
- package/lib/command/index.js.map +1 -1
- package/lib/command/layer/AcApLayerCloseCmd.d.ts +23 -0
- package/lib/command/layer/AcApLayerCloseCmd.d.ts.map +1 -0
- package/lib/command/{AcApRevRectCmd.js → layer/AcApLayerCloseCmd.js} +27 -24
- package/lib/command/layer/AcApLayerCloseCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerCmd.d.ts +215 -0
- package/lib/command/layer/AcApLayerCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerCmd.js +765 -0
- package/lib/command/layer/AcApLayerCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerCurCmd.d.ts +43 -0
- package/lib/command/layer/AcApLayerCurCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerCurCmd.js +183 -0
- package/lib/command/layer/AcApLayerCurCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerDelCmd.d.ts +112 -0
- package/lib/command/layer/AcApLayerDelCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerDelCmd.js +446 -0
- package/lib/command/layer/AcApLayerDelCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerFreezeCmd.d.ts +103 -0
- package/lib/command/layer/AcApLayerFreezeCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerFreezeCmd.js +398 -0
- package/lib/command/layer/AcApLayerFreezeCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerIsoCmd.d.ts +99 -0
- package/lib/command/layer/AcApLayerIsoCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerIsoCmd.js +485 -0
- package/lib/command/layer/AcApLayerIsoCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerIsoState.d.ts +68 -0
- package/lib/command/layer/AcApLayerIsoState.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerIsoState.js +53 -0
- package/lib/command/layer/AcApLayerIsoState.js.map +1 -0
- package/lib/command/layer/AcApLayerLockCmd.d.ts +50 -0
- package/lib/command/layer/AcApLayerLockCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerLockCmd.js +175 -0
- package/lib/command/layer/AcApLayerLockCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerOffCmd.d.ts +95 -0
- package/lib/command/layer/AcApLayerOffCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerOffCmd.js +384 -0
- package/lib/command/layer/AcApLayerOffCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerOnCmd.d.ts +30 -0
- package/lib/command/layer/AcApLayerOnCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerOnCmd.js +138 -0
- package/lib/command/layer/AcApLayerOnCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerPCmd.d.ts +83 -0
- package/lib/command/layer/AcApLayerPCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerPCmd.js +241 -0
- package/lib/command/layer/AcApLayerPCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerThawCmd.d.ts +37 -0
- package/lib/command/layer/AcApLayerThawCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerThawCmd.js +150 -0
- package/lib/command/layer/AcApLayerThawCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerUnisoCmd.d.ts +52 -0
- package/lib/command/layer/AcApLayerUnisoCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerUnisoCmd.js +199 -0
- package/lib/command/layer/AcApLayerUnisoCmd.js.map +1 -0
- package/lib/command/layer/AcApLayerUnlockCmd.d.ts +50 -0
- package/lib/command/layer/AcApLayerUnlockCmd.d.ts.map +1 -0
- package/lib/command/layer/AcApLayerUnlockCmd.js +175 -0
- package/lib/command/layer/AcApLayerUnlockCmd.js.map +1 -0
- package/lib/command/layer/index.d.ts +14 -0
- package/lib/command/layer/index.d.ts.map +1 -0
- package/lib/command/layer/index.js +14 -0
- package/lib/command/layer/index.js.map +1 -0
- package/lib/command/{AcApClearMeasurementsCmd.d.ts → measure/AcApClearMeasurementsCmd.d.ts} +2 -2
- package/lib/command/measure/AcApClearMeasurementsCmd.d.ts.map +1 -0
- package/lib/command/{AcApClearMeasurementsCmd.js → measure/AcApClearMeasurementsCmd.js} +1 -1
- package/lib/command/measure/AcApClearMeasurementsCmd.js.map +1 -0
- package/lib/command/{AcApMeasureAngleCmd.d.ts → measure/AcApMeasureAngleCmd.d.ts} +2 -2
- package/lib/command/measure/AcApMeasureAngleCmd.d.ts.map +1 -0
- package/lib/command/{AcApMeasureAngleCmd.js → measure/AcApMeasureAngleCmd.js} +3 -3
- package/lib/command/measure/AcApMeasureAngleCmd.js.map +1 -0
- package/lib/command/{AcApMeasureArcCmd.d.ts → measure/AcApMeasureArcCmd.d.ts} +2 -2
- package/lib/command/measure/AcApMeasureArcCmd.d.ts.map +1 -0
- package/lib/command/{AcApMeasureArcCmd.js → measure/AcApMeasureArcCmd.js} +3 -3
- package/lib/command/measure/AcApMeasureArcCmd.js.map +1 -0
- package/lib/command/{AcApMeasureAreaCmd.d.ts → measure/AcApMeasureAreaCmd.d.ts} +2 -2
- package/lib/command/measure/AcApMeasureAreaCmd.d.ts.map +1 -0
- package/lib/command/{AcApMeasureAreaCmd.js → measure/AcApMeasureAreaCmd.js} +6 -3
- package/lib/command/measure/AcApMeasureAreaCmd.js.map +1 -0
- package/lib/command/{AcApMeasureDistanceCmd.d.ts → measure/AcApMeasureDistanceCmd.d.ts} +2 -2
- package/lib/command/measure/AcApMeasureDistanceCmd.d.ts.map +1 -0
- package/lib/command/{AcApMeasureDistanceCmd.js → measure/AcApMeasureDistanceCmd.js} +3 -3
- package/lib/command/measure/AcApMeasureDistanceCmd.js.map +1 -0
- package/lib/command/measure/index.d.ts +6 -0
- package/lib/command/measure/index.d.ts.map +1 -0
- package/lib/command/measure/index.js +6 -0
- package/lib/command/measure/index.js.map +1 -0
- package/lib/command/modify/AcApCopyCmd.d.ts +94 -0
- package/lib/command/modify/AcApCopyCmd.d.ts.map +1 -0
- package/lib/command/modify/AcApCopyCmd.js +549 -0
- package/lib/command/modify/AcApCopyCmd.js.map +1 -0
- package/lib/command/{AcApEraseCmd.d.ts → modify/AcApEraseCmd.d.ts} +2 -2
- package/lib/command/modify/AcApEraseCmd.d.ts.map +1 -0
- package/lib/command/{AcApEraseCmd.js → modify/AcApEraseCmd.js} +3 -5
- package/lib/command/modify/AcApEraseCmd.js.map +1 -0
- package/lib/command/modify/AcApMoveCmd.d.ts +16 -0
- package/lib/command/modify/AcApMoveCmd.d.ts.map +1 -0
- package/lib/command/modify/AcApMoveCmd.js +277 -0
- package/lib/command/modify/AcApMoveCmd.js.map +1 -0
- package/lib/command/modify/AcApRotateCmd.d.ts +81 -0
- package/lib/command/modify/AcApRotateCmd.d.ts.map +1 -0
- package/lib/command/modify/AcApRotateCmd.js +487 -0
- package/lib/command/modify/AcApRotateCmd.js.map +1 -0
- package/lib/command/modify/index.d.ts +5 -0
- package/lib/command/modify/index.d.ts.map +1 -0
- package/lib/command/modify/index.js +5 -0
- package/lib/command/modify/index.js.map +1 -0
- package/lib/command/{AcApBaseRevCmd.d.ts → review/AcApBaseRevCmd.d.ts} +2 -2
- package/lib/command/review/AcApBaseRevCmd.d.ts.map +1 -0
- package/lib/command/{AcApBaseRevCmd.js → review/AcApBaseRevCmd.js} +2 -2
- package/lib/command/review/AcApBaseRevCmd.js.map +1 -0
- package/lib/command/review/AcApRevCircleCmd.d.ts +18 -0
- package/lib/command/review/AcApRevCircleCmd.d.ts.map +1 -0
- package/lib/command/{AcApCircleCmd.js → review/AcApRevCircleCmd.js} +26 -42
- package/lib/command/review/AcApRevCircleCmd.js.map +1 -0
- package/lib/command/{AcApRevCloudCmd.d.ts → review/AcApRevCloudCmd.d.ts} +2 -2
- package/lib/command/review/AcApRevCloudCmd.d.ts.map +1 -0
- package/lib/command/{AcApRevCloudCmd.js → review/AcApRevCloudCmd.js} +3 -3
- package/lib/command/review/AcApRevCloudCmd.js.map +1 -0
- package/lib/command/review/AcApRevRectCmd.d.ts +18 -0
- package/lib/command/review/AcApRevRectCmd.d.ts.map +1 -0
- package/lib/command/{AcApRectCmd.js → review/AcApRevRectCmd.js} +43 -28
- package/lib/command/review/AcApRevRectCmd.js.map +1 -0
- package/lib/command/{AcApRevVisibilityCmd.d.ts → review/AcApRevVisibilityCmd.d.ts} +1 -1
- package/lib/command/review/AcApRevVisibilityCmd.d.ts.map +1 -0
- package/lib/command/{AcApRevVisibilityCmd.js → review/AcApRevVisibilityCmd.js} +2 -2
- package/lib/command/review/AcApRevVisibilityCmd.js.map +1 -0
- package/lib/command/{AcApSketchCmd.d.ts → review/AcApSketchCmd.d.ts} +2 -2
- package/lib/command/review/AcApSketchCmd.d.ts.map +1 -0
- package/lib/command/{AcApSketchCmd.js → review/AcApSketchCmd.js} +3 -3
- package/lib/command/review/AcApSketchCmd.js.map +1 -0
- package/lib/command/review/index.d.ts +7 -0
- package/lib/command/review/index.d.ts.map +1 -0
- package/lib/command/review/index.js +7 -0
- package/lib/command/review/index.js.map +1 -0
- package/lib/editor/command/AcEdCommandStack.d.ts +54 -1
- package/lib/editor/command/AcEdCommandStack.d.ts.map +1 -1
- package/lib/editor/command/AcEdCommandStack.js +207 -25
- package/lib/editor/command/AcEdCommandStack.js.map +1 -1
- package/lib/editor/global/eventBus.d.ts +4 -6
- package/lib/editor/global/eventBus.d.ts.map +1 -1
- package/lib/editor/global/eventBus.js.map +1 -1
- package/lib/editor/input/AcEdSelectionFilter.d.ts +79 -0
- package/lib/editor/input/AcEdSelectionFilter.d.ts.map +1 -0
- package/lib/editor/input/AcEdSelectionFilter.js +231 -0
- package/lib/editor/input/AcEdSelectionFilter.js.map +1 -0
- package/lib/editor/input/AcEditor.d.ts +37 -2
- package/lib/editor/input/AcEditor.d.ts.map +1 -1
- package/lib/editor/input/AcEditor.js +89 -0
- package/lib/editor/input/AcEditor.js.map +1 -1
- package/lib/editor/input/index.d.ts +1 -0
- package/lib/editor/input/index.d.ts.map +1 -1
- package/lib/editor/input/index.js +1 -0
- package/lib/editor/input/index.js.map +1 -1
- package/lib/editor/input/prompt/AcEdKeywordCollection.d.ts +47 -0
- package/lib/editor/input/prompt/AcEdKeywordCollection.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdKeywordCollection.js +19 -0
- package/lib/editor/input/prompt/AcEdKeywordCollection.js.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptAngleOptions.d.ts +7 -0
- package/lib/editor/input/prompt/AcEdPromptAngleOptions.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptAngleOptions.js +17 -0
- package/lib/editor/input/prompt/AcEdPromptAngleOptions.js.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.d.ts +6 -0
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.js +16 -0
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.js.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptEntityOptions.d.ts +17 -0
- package/lib/editor/input/prompt/AcEdPromptEntityOptions.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptEntityOptions.js +30 -3
- package/lib/editor/input/prompt/AcEdPromptEntityOptions.js.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptOptions.d.ts +6 -1
- package/lib/editor/input/prompt/AcEdPromptOptions.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptOptions.js +7 -0
- package/lib/editor/input/prompt/AcEdPromptOptions.js.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptPointOptions.d.ts +6 -0
- package/lib/editor/input/prompt/AcEdPromptPointOptions.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptPointOptions.js +16 -0
- package/lib/editor/input/prompt/AcEdPromptPointOptions.js.map +1 -1
- package/lib/editor/input/session/AcEdKeywordSession.d.ts +65 -0
- package/lib/editor/input/session/AcEdKeywordSession.d.ts.map +1 -1
- package/lib/editor/input/session/AcEdKeywordSession.js +71 -0
- package/lib/editor/input/session/AcEdKeywordSession.js.map +1 -1
- package/lib/editor/input/ui/AcEdCommandLine.d.ts +29 -4
- package/lib/editor/input/ui/AcEdCommandLine.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdCommandLine.js +118 -24
- package/lib/editor/input/ui/AcEdCommandLine.js.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInput.d.ts +1 -0
- package/lib/editor/input/ui/AcEdFloatingInput.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInput.js +12 -4
- package/lib/editor/input/ui/AcEdFloatingInput.js.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInputBoxes.d.ts +23 -1
- package/lib/editor/input/ui/AcEdFloatingInputBoxes.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInputBoxes.js +32 -9
- package/lib/editor/input/ui/AcEdFloatingInputBoxes.js.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInputTypes.d.ts +28 -0
- package/lib/editor/input/ui/AcEdFloatingInputTypes.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdInputManager.d.ts +377 -16
- package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdInputManager.js +994 -529
- package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
- package/lib/editor/input/ui/AcEdMessageType.d.ts +10 -0
- package/lib/editor/input/ui/AcEdMessageType.d.ts.map +1 -0
- package/lib/editor/input/ui/AcEdMessageType.js +2 -0
- package/lib/editor/input/ui/AcEdMessageType.js.map +1 -0
- package/lib/editor/input/ui/AcEdRubberBand.d.ts +15 -1
- package/lib/editor/input/ui/AcEdRubberBand.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdRubberBand.js +42 -10
- package/lib/editor/input/ui/AcEdRubberBand.js.map +1 -1
- package/lib/editor/input/ui/index.d.ts +1 -0
- package/lib/editor/input/ui/index.d.ts.map +1 -1
- package/lib/editor/input/ui/index.js +1 -0
- package/lib/editor/input/ui/index.js.map +1 -1
- package/lib/editor/view/AcEdBaseView.d.ts +3 -8
- package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
- package/lib/editor/view/AcEdBaseView.js +3 -5
- package/lib/editor/view/AcEdBaseView.js.map +1 -1
- package/lib/editor/view/AcEdHoverController.d.ts +2 -3
- package/lib/editor/view/AcEdHoverController.d.ts.map +1 -1
- package/lib/editor/view/AcEdHoverController.js +7 -0
- package/lib/editor/view/AcEdHoverController.js.map +1 -1
- package/lib/editor/view/AcEdSelectionAction.d.ts +108 -0
- package/lib/editor/view/AcEdSelectionAction.d.ts.map +1 -0
- package/lib/editor/view/AcEdSelectionAction.js +74 -0
- package/lib/editor/view/AcEdSelectionAction.js.map +1 -0
- package/lib/editor/view/index.d.ts +1 -0
- package/lib/editor/view/index.d.ts.map +1 -1
- package/lib/editor/view/index.js +1 -0
- package/lib/editor/view/index.js.map +1 -1
- package/lib/i18n/en/command.d.ts +148 -10
- package/lib/i18n/en/command.d.ts.map +1 -1
- package/lib/i18n/en/command.js +153 -15
- package/lib/i18n/en/command.js.map +1 -1
- package/lib/i18n/en/jig.d.ts +838 -36
- package/lib/i18n/en/jig.d.ts.map +1 -1
- package/lib/i18n/en/jig.js +827 -25
- package/lib/i18n/en/jig.js.map +1 -1
- package/lib/i18n/zh/command.d.ts +148 -10
- package/lib/i18n/zh/command.d.ts.map +1 -1
- package/lib/i18n/zh/command.js +155 -17
- package/lib/i18n/zh/command.js.map +1 -1
- package/lib/i18n/zh/jig.d.ts +851 -49
- package/lib/i18n/zh/jig.d.ts.map +1 -1
- package/lib/i18n/zh/jig.js +829 -27
- package/lib/i18n/zh/jig.js.map +1 -1
- package/lib/plugin/AcApPluginManager.d.ts.map +1 -1
- package/lib/plugin/AcApPluginManager.js.map +1 -1
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts +136 -2
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts.map +1 -1
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js +154 -16
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js.map +1 -1
- package/lib/view/AcTrLayer.d.ts.map +1 -1
- package/lib/view/AcTrLayer.js +5 -3
- package/lib/view/AcTrLayer.js.map +1 -1
- package/lib/view/AcTrLayout.d.ts +17 -0
- package/lib/view/AcTrLayout.d.ts.map +1 -1
- package/lib/view/AcTrLayout.js +34 -2
- package/lib/view/AcTrLayout.js.map +1 -1
- package/lib/view/AcTrPickResultUtil.d.ts +4 -0
- package/lib/view/AcTrPickResultUtil.d.ts.map +1 -0
- package/lib/view/AcTrPickResultUtil.js +54 -0
- package/lib/view/AcTrPickResultUtil.js.map +1 -0
- package/lib/view/AcTrView2d.d.ts +25 -1
- package/lib/view/AcTrView2d.d.ts.map +1 -1
- package/lib/view/AcTrView2d.js +242 -104
- package/lib/view/AcTrView2d.js.map +1 -1
- package/package.json +11 -9
- package/lib/command/AcApArcCmd.d.ts +0 -140
- package/lib/command/AcApArcCmd.d.ts.map +0 -1
- package/lib/command/AcApArcCmd.js.map +0 -1
- package/lib/command/AcApBaseRevCmd.d.ts.map +0 -1
- package/lib/command/AcApBaseRevCmd.js.map +0 -1
- package/lib/command/AcApCircleCmd.d.ts +0 -22
- package/lib/command/AcApCircleCmd.d.ts.map +0 -1
- package/lib/command/AcApCircleCmd.js.map +0 -1
- package/lib/command/AcApClearMeasurementsCmd.d.ts.map +0 -1
- package/lib/command/AcApClearMeasurementsCmd.js.map +0 -1
- package/lib/command/AcApConvertToDxfCmd.d.ts.map +0 -1
- package/lib/command/AcApConvertToDxfCmd.js.map +0 -1
- package/lib/command/AcApConvertToSvgCmd.d.ts.map +0 -1
- package/lib/command/AcApConvertToSvgCmd.js.map +0 -1
- package/lib/command/AcApDimLinearCmd.d.ts.map +0 -1
- package/lib/command/AcApDimLinearCmd.js.map +0 -1
- package/lib/command/AcApDxfConvertor.d.ts.map +0 -1
- package/lib/command/AcApDxfConvertor.js.map +0 -1
- package/lib/command/AcApEraseCmd.d.ts.map +0 -1
- package/lib/command/AcApEraseCmd.js.map +0 -1
- package/lib/command/AcApLineCmd.d.ts +0 -22
- package/lib/command/AcApLineCmd.d.ts.map +0 -1
- package/lib/command/AcApLineCmd.js.map +0 -1
- package/lib/command/AcApMTextCmd.d.ts.map +0 -1
- package/lib/command/AcApMTextCmd.js.map +0 -1
- package/lib/command/AcApMeasureAngleCmd.d.ts.map +0 -1
- package/lib/command/AcApMeasureAngleCmd.js.map +0 -1
- package/lib/command/AcApMeasureArcCmd.d.ts.map +0 -1
- package/lib/command/AcApMeasureArcCmd.js.map +0 -1
- package/lib/command/AcApMeasureAreaCmd.d.ts.map +0 -1
- package/lib/command/AcApMeasureAreaCmd.js.map +0 -1
- package/lib/command/AcApMeasureDistanceCmd.d.ts.map +0 -1
- package/lib/command/AcApMeasureDistanceCmd.js.map +0 -1
- package/lib/command/AcApPolylineCmd.d.ts.map +0 -1
- package/lib/command/AcApPolylineCmd.js.map +0 -1
- package/lib/command/AcApRectCmd.d.ts +0 -23
- package/lib/command/AcApRectCmd.d.ts.map +0 -1
- package/lib/command/AcApRectCmd.js.map +0 -1
- package/lib/command/AcApRevCircleCmd.d.ts +0 -10
- package/lib/command/AcApRevCircleCmd.d.ts.map +0 -1
- package/lib/command/AcApRevCircleCmd.js +0 -83
- package/lib/command/AcApRevCircleCmd.js.map +0 -1
- package/lib/command/AcApRevCloudCmd.d.ts.map +0 -1
- package/lib/command/AcApRevCloudCmd.js.map +0 -1
- package/lib/command/AcApRevRectCmd.d.ts +0 -10
- package/lib/command/AcApRevRectCmd.d.ts.map +0 -1
- package/lib/command/AcApRevRectCmd.js.map +0 -1
- package/lib/command/AcApRevVisibilityCmd.d.ts.map +0 -1
- package/lib/command/AcApRevVisibilityCmd.js.map +0 -1
- package/lib/command/AcApSketchCmd.d.ts.map +0 -1
- package/lib/command/AcApSketchCmd.js.map +0 -1
- package/lib/command/AcApSplineCmd.d.ts +0 -20
- package/lib/command/AcApSplineCmd.d.ts.map +0 -1
- package/lib/command/AcApSplineCmd.js +0 -213
- package/lib/command/AcApSplineCmd.js.map +0 -1
- package/lib/command/AcApSvgConvertor.d.ts.map +0 -1
- package/lib/command/AcApSvgConvertor.js.map +0 -1
- package/lib/command/AcApZoomToBoxCmd.d.ts +0 -29
- package/lib/command/AcApZoomToBoxCmd.d.ts.map +0 -1
- package/lib/command/AcApZoomToBoxCmd.js.map +0 -1
- /package/lib/command/{AcApDxfConvertor.d.ts → convert/AcApDxfConvertor.d.ts} +0 -0
- /package/lib/command/{AcApSvgConvertor.d.ts → convert/AcApSvgConvertor.d.ts} +0 -0
|
@@ -49,26 +49,29 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
49
49
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
-
import {
|
|
52
|
+
import { AcGeBox2d, AcGePoint3d } from '@mlightcad/data-model';
|
|
53
|
+
import { AcApDocManager } from '../app';
|
|
54
|
+
import { AcEdCommand, AcEdPromptBoxOptions, AcEdPromptPointOptions, AcEdPromptStatus, AcEdPromptStringOptions } from '../editor';
|
|
55
|
+
import { AcApI18n } from '../i18n';
|
|
53
56
|
/**
|
|
54
|
-
*
|
|
57
|
+
* AutoCAD-style ZOOM command with keyword-driven branches in a single command.
|
|
55
58
|
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
59
|
+
* Supported flows:
|
|
60
|
+
* - Press Enter: zoom extents.
|
|
61
|
+
* - Pick first corner: zoom window.
|
|
62
|
+
* - Keywords:
|
|
63
|
+
* - `All` / `Extents`: zoom extents.
|
|
64
|
+
* - `Window`: prompt two corners and zoom to that box.
|
|
65
|
+
* - `Center`: prompt center + height/scale factor.
|
|
66
|
+
* - `Scale`: scale relative to current view (`n`, `nX`, `nXP`).
|
|
67
|
+
* - `Previous`: restore previous zoom box.
|
|
60
68
|
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
69
|
+
* This command intentionally keeps all zoom branches in one implementation so
|
|
70
|
+
* callers can use script-style command input such as:
|
|
63
71
|
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
* zoomCommand.globalName = 'ZOOM';
|
|
68
|
-
* zoomCommand.localName = 'Zoom to Fit';
|
|
69
|
-
*
|
|
70
|
-
* // Execute the command to fit all entities in view
|
|
71
|
-
* zoomCommand.trigger(docManager.context);
|
|
72
|
+
* ```text
|
|
73
|
+
* zoom
|
|
74
|
+
* window
|
|
72
75
|
* ```
|
|
73
76
|
*/
|
|
74
77
|
var AcApZoomCmd = /** @class */ (function (_super) {
|
|
@@ -77,18 +80,280 @@ var AcApZoomCmd = /** @class */ (function (_super) {
|
|
|
77
80
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
78
81
|
}
|
|
79
82
|
/**
|
|
80
|
-
*
|
|
83
|
+
* Captures current visible world box from the viewport corners.
|
|
81
84
|
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
85
|
+
* @param context - Current command context.
|
|
86
|
+
* @returns Current view box in world coordinates.
|
|
87
|
+
*/
|
|
88
|
+
AcApZoomCmd.prototype.captureCurrentViewBox = function (context) {
|
|
89
|
+
var topLeft = context.view.screenToWorld({ x: 0, y: 0 });
|
|
90
|
+
var bottomRight = context.view.screenToWorld({
|
|
91
|
+
x: context.view.width,
|
|
92
|
+
y: context.view.height
|
|
93
|
+
});
|
|
94
|
+
return new AcGeBox2d().expandByPoint(topLeft).expandByPoint(bottomRight);
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Saves current view box before executing a zoom branch.
|
|
84
98
|
*
|
|
85
|
-
* @param context -
|
|
99
|
+
* @param context - Current command context.
|
|
86
100
|
*/
|
|
87
|
-
AcApZoomCmd.prototype.
|
|
101
|
+
AcApZoomCmd.prototype.rememberViewBeforeZoom = function (context) {
|
|
102
|
+
AcApZoomCmd.previousViewBox = this.captureCurrentViewBox(context);
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Executes extents-like zoom and records previous view for rollback.
|
|
106
|
+
*
|
|
107
|
+
* @param context - Current command context.
|
|
108
|
+
*/
|
|
109
|
+
AcApZoomCmd.prototype.zoomToExtents = function (context) {
|
|
110
|
+
this.rememberViewBeforeZoom(context);
|
|
111
|
+
context.view.zoomToFitDrawing();
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* Executes window zoom from two corner points.
|
|
115
|
+
*
|
|
116
|
+
* @param context - Current command context.
|
|
117
|
+
* @param first - First corner in WCS.
|
|
118
|
+
* @param second - Opposite corner in WCS.
|
|
119
|
+
*/
|
|
120
|
+
AcApZoomCmd.prototype.zoomToWindow = function (context, first, second) {
|
|
121
|
+
var box = new AcGeBox2d().expandByPoint(first).expandByPoint(second);
|
|
122
|
+
this.rememberViewBeforeZoom(context);
|
|
123
|
+
context.view.zoomTo(box, 1);
|
|
124
|
+
};
|
|
125
|
+
/**
|
|
126
|
+
* Prompts second corner from a known first corner, then performs window zoom.
|
|
127
|
+
*
|
|
128
|
+
* @param context - Current command context.
|
|
129
|
+
* @param firstCorner - First window corner in WCS.
|
|
130
|
+
*/
|
|
131
|
+
AcApZoomCmd.prototype.promptAndZoomWindowFromFirstCorner = function (context, firstCorner) {
|
|
132
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
133
|
+
var secondPrompt, secondResult;
|
|
134
|
+
return __generator(this, function (_a) {
|
|
135
|
+
switch (_a.label) {
|
|
136
|
+
case 0:
|
|
137
|
+
secondPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.zoom.secondCorner'));
|
|
138
|
+
secondPrompt.useBasePoint = true;
|
|
139
|
+
secondPrompt.basePoint = new AcGePoint3d(firstCorner);
|
|
140
|
+
secondPrompt.useDashedLine = true;
|
|
141
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(secondPrompt)];
|
|
142
|
+
case 1:
|
|
143
|
+
secondResult = _a.sent();
|
|
144
|
+
if (secondResult.status !== AcEdPromptStatus.OK || !secondResult.value)
|
|
145
|
+
return [2 /*return*/];
|
|
146
|
+
this.zoomToWindow(context, firstCorner, secondResult.value);
|
|
147
|
+
return [2 /*return*/];
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* Prompts a window box using editor `getBox`, then zooms to that box.
|
|
154
|
+
*
|
|
155
|
+
* @param context - Current command context.
|
|
156
|
+
*/
|
|
157
|
+
AcApZoomCmd.prototype.promptAndZoomWindowByBox = function (context) {
|
|
158
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
159
|
+
var boxOptions, boxResult;
|
|
160
|
+
return __generator(this, function (_a) {
|
|
161
|
+
switch (_a.label) {
|
|
162
|
+
case 0:
|
|
163
|
+
boxOptions = new AcEdPromptBoxOptions(AcApI18n.t('jig.zoom.firstCorner'), AcApI18n.t('jig.zoom.secondCorner'));
|
|
164
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getBox(boxOptions)];
|
|
165
|
+
case 1:
|
|
166
|
+
boxResult = _a.sent();
|
|
167
|
+
if (boxResult.status !== AcEdPromptStatus.OK || !boxResult.value)
|
|
168
|
+
return [2 /*return*/];
|
|
169
|
+
this.rememberViewBeforeZoom(context);
|
|
170
|
+
context.view.zoomTo(boxResult.value, 1);
|
|
171
|
+
return [2 /*return*/];
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
});
|
|
175
|
+
};
|
|
176
|
+
/**
|
|
177
|
+
* Handles `Center` branch:
|
|
178
|
+
* - pick center point
|
|
179
|
+
* - input height or scale factor
|
|
180
|
+
*
|
|
181
|
+
* @param context - Current command context.
|
|
182
|
+
*/
|
|
183
|
+
AcApZoomCmd.prototype.runCenter = function (context) {
|
|
88
184
|
return __awaiter(this, void 0, void 0, function () {
|
|
185
|
+
var centerPrompt, centerResult, heightPrompt, heightResult, parsedScale, viewHeight, aspect, halfHeight, halfWidth, box;
|
|
89
186
|
return __generator(this, function (_a) {
|
|
90
|
-
|
|
91
|
-
|
|
187
|
+
switch (_a.label) {
|
|
188
|
+
case 0:
|
|
189
|
+
centerPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.zoom.centerPoint'));
|
|
190
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(centerPrompt)];
|
|
191
|
+
case 1:
|
|
192
|
+
centerResult = _a.sent();
|
|
193
|
+
if (centerResult.status !== AcEdPromptStatus.OK || !centerResult.value)
|
|
194
|
+
return [2 /*return*/];
|
|
195
|
+
heightPrompt = new AcEdPromptStringOptions(AcApI18n.t('jig.zoom.heightOrScale'));
|
|
196
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getString(heightPrompt)];
|
|
197
|
+
case 2:
|
|
198
|
+
heightResult = _a.sent();
|
|
199
|
+
if (heightResult.status !== AcEdPromptStatus.OK ||
|
|
200
|
+
!heightResult.stringResult)
|
|
201
|
+
return [2 /*return*/];
|
|
202
|
+
parsedScale = this.parseScaleFactor(heightResult.stringResult);
|
|
203
|
+
if (parsedScale != null) {
|
|
204
|
+
this.applyRelativeScale(context, parsedScale, centerResult.value);
|
|
205
|
+
return [2 /*return*/];
|
|
206
|
+
}
|
|
207
|
+
viewHeight = Number(heightResult.stringResult);
|
|
208
|
+
if (!Number.isFinite(viewHeight) || viewHeight <= 0)
|
|
209
|
+
return [2 /*return*/];
|
|
210
|
+
aspect = context.view.width / Math.max(context.view.height, 1);
|
|
211
|
+
halfHeight = viewHeight / 2;
|
|
212
|
+
halfWidth = (viewHeight * aspect) / 2;
|
|
213
|
+
box = new AcGeBox2d()
|
|
214
|
+
.expandByPoint({
|
|
215
|
+
x: centerResult.value.x - halfWidth,
|
|
216
|
+
y: centerResult.value.y - halfHeight
|
|
217
|
+
})
|
|
218
|
+
.expandByPoint({
|
|
219
|
+
x: centerResult.value.x + halfWidth,
|
|
220
|
+
y: centerResult.value.y + halfHeight
|
|
221
|
+
});
|
|
222
|
+
this.rememberViewBeforeZoom(context);
|
|
223
|
+
context.view.zoomTo(box, 1);
|
|
224
|
+
return [2 /*return*/];
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
});
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* Parses scale factor text from AutoCAD-like inputs:
|
|
231
|
+
* - `2` / `2x` / `2xp`
|
|
232
|
+
*
|
|
233
|
+
* @param raw - Raw user input.
|
|
234
|
+
* @returns Positive scale factor, or `undefined` when invalid.
|
|
235
|
+
*/
|
|
236
|
+
AcApZoomCmd.prototype.parseScaleFactor = function (raw) {
|
|
237
|
+
var text = raw.trim().toLowerCase();
|
|
238
|
+
if (!text)
|
|
239
|
+
return undefined;
|
|
240
|
+
if (text.endsWith('xp')) {
|
|
241
|
+
var value_1 = Number(text.slice(0, -2));
|
|
242
|
+
return Number.isFinite(value_1) && value_1 > 0 ? value_1 : undefined;
|
|
243
|
+
}
|
|
244
|
+
if (text.endsWith('x')) {
|
|
245
|
+
var value_2 = Number(text.slice(0, -1));
|
|
246
|
+
return Number.isFinite(value_2) && value_2 > 0 ? value_2 : undefined;
|
|
247
|
+
}
|
|
248
|
+
var value = Number(text);
|
|
249
|
+
return Number.isFinite(value) && value > 0 ? value : undefined;
|
|
250
|
+
};
|
|
251
|
+
/**
|
|
252
|
+
* Applies relative zoom around the specified center (or current view center).
|
|
253
|
+
*
|
|
254
|
+
* @param context - Current command context.
|
|
255
|
+
* @param factor - Relative zoom factor (> 0).
|
|
256
|
+
* @param centerPoint - Optional explicit zoom center in WCS.
|
|
257
|
+
*/
|
|
258
|
+
AcApZoomCmd.prototype.applyRelativeScale = function (context, factor, centerPoint) {
|
|
259
|
+
var current = this.captureCurrentViewBox(context);
|
|
260
|
+
var width = Math.max(current.max.x - current.min.x, 1e-9);
|
|
261
|
+
var height = Math.max(current.max.y - current.min.y, 1e-9);
|
|
262
|
+
var halfWidth = width / (2 * factor);
|
|
263
|
+
var halfHeight = height / (2 * factor);
|
|
264
|
+
var center = centerPoint !== null && centerPoint !== void 0 ? centerPoint : {
|
|
265
|
+
x: (current.min.x + current.max.x) / 2,
|
|
266
|
+
y: (current.min.y + current.max.y) / 2
|
|
267
|
+
};
|
|
268
|
+
var target = new AcGeBox2d()
|
|
269
|
+
.expandByPoint({ x: center.x - halfWidth, y: center.y - halfHeight })
|
|
270
|
+
.expandByPoint({ x: center.x + halfWidth, y: center.y + halfHeight });
|
|
271
|
+
this.rememberViewBeforeZoom(context);
|
|
272
|
+
context.view.zoomTo(target, 1);
|
|
273
|
+
};
|
|
274
|
+
/**
|
|
275
|
+
* Restores previous view box if one exists and swaps buffers to allow toggling.
|
|
276
|
+
*
|
|
277
|
+
* @param context - Current command context.
|
|
278
|
+
*/
|
|
279
|
+
AcApZoomCmd.prototype.runPrevious = function (context) {
|
|
280
|
+
if (!AcApZoomCmd.previousViewBox)
|
|
281
|
+
return;
|
|
282
|
+
var current = this.captureCurrentViewBox(context);
|
|
283
|
+
context.view.zoomTo(AcApZoomCmd.previousViewBox, 1);
|
|
284
|
+
AcApZoomCmd.previousViewBox = current;
|
|
285
|
+
};
|
|
286
|
+
/**
|
|
287
|
+
* Runs zoom interaction with keyword-capable branching.
|
|
288
|
+
*
|
|
289
|
+
* @param context - Current command context.
|
|
290
|
+
*/
|
|
291
|
+
AcApZoomCmd.prototype.execute = function (context) {
|
|
292
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
293
|
+
var firstPrompt, firstResult, keyword, scalePrompt, scaleResult, factor;
|
|
294
|
+
var _a;
|
|
295
|
+
return __generator(this, function (_b) {
|
|
296
|
+
switch (_b.label) {
|
|
297
|
+
case 0:
|
|
298
|
+
firstPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.zoom.mainPrompt'));
|
|
299
|
+
firstPrompt.allowNone = true;
|
|
300
|
+
firstPrompt.keywords.add(AcApI18n.t('jig.zoom.keywords.all.display'), AcApI18n.t('jig.zoom.keywords.all.global'), AcApI18n.t('jig.zoom.keywords.all.local'));
|
|
301
|
+
firstPrompt.keywords.add(AcApI18n.t('jig.zoom.keywords.center.display'), AcApI18n.t('jig.zoom.keywords.center.global'), AcApI18n.t('jig.zoom.keywords.center.local'));
|
|
302
|
+
firstPrompt.keywords.add(AcApI18n.t('jig.zoom.keywords.extents.display'), AcApI18n.t('jig.zoom.keywords.extents.global'), AcApI18n.t('jig.zoom.keywords.extents.local'));
|
|
303
|
+
firstPrompt.keywords.add(AcApI18n.t('jig.zoom.keywords.previous.display'), AcApI18n.t('jig.zoom.keywords.previous.global'), AcApI18n.t('jig.zoom.keywords.previous.local'));
|
|
304
|
+
firstPrompt.keywords.add(AcApI18n.t('jig.zoom.keywords.scale.display'), AcApI18n.t('jig.zoom.keywords.scale.global'), AcApI18n.t('jig.zoom.keywords.scale.local'));
|
|
305
|
+
firstPrompt.keywords.add(AcApI18n.t('jig.zoom.keywords.window.display'), AcApI18n.t('jig.zoom.keywords.window.global'), AcApI18n.t('jig.zoom.keywords.window.local'));
|
|
306
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(firstPrompt)];
|
|
307
|
+
case 1:
|
|
308
|
+
firstResult = _b.sent();
|
|
309
|
+
if (firstResult.status === AcEdPromptStatus.None) {
|
|
310
|
+
this.zoomToExtents(context);
|
|
311
|
+
return [2 /*return*/];
|
|
312
|
+
}
|
|
313
|
+
if (!(firstResult.status === AcEdPromptStatus.OK && firstResult.value)) return [3 /*break*/, 3];
|
|
314
|
+
return [4 /*yield*/, this.promptAndZoomWindowFromFirstCorner(context, firstResult.value)];
|
|
315
|
+
case 2:
|
|
316
|
+
_b.sent();
|
|
317
|
+
return [2 /*return*/];
|
|
318
|
+
case 3:
|
|
319
|
+
if (firstResult.status !== AcEdPromptStatus.Keyword)
|
|
320
|
+
return [2 /*return*/];
|
|
321
|
+
keyword = (_a = firstResult.stringResult) !== null && _a !== void 0 ? _a : '';
|
|
322
|
+
if (keyword === 'All' || keyword === 'Extents') {
|
|
323
|
+
this.zoomToExtents(context);
|
|
324
|
+
return [2 /*return*/];
|
|
325
|
+
}
|
|
326
|
+
if (!(keyword === 'Window')) return [3 /*break*/, 5];
|
|
327
|
+
return [4 /*yield*/, this.promptAndZoomWindowByBox(context)];
|
|
328
|
+
case 4:
|
|
329
|
+
_b.sent();
|
|
330
|
+
return [2 /*return*/];
|
|
331
|
+
case 5:
|
|
332
|
+
if (!(keyword === 'Center')) return [3 /*break*/, 7];
|
|
333
|
+
return [4 /*yield*/, this.runCenter(context)];
|
|
334
|
+
case 6:
|
|
335
|
+
_b.sent();
|
|
336
|
+
return [2 /*return*/];
|
|
337
|
+
case 7:
|
|
338
|
+
if (!(keyword === 'Scale')) return [3 /*break*/, 9];
|
|
339
|
+
scalePrompt = new AcEdPromptStringOptions(AcApI18n.t('jig.zoom.scaleFactor'));
|
|
340
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getString(scalePrompt)];
|
|
341
|
+
case 8:
|
|
342
|
+
scaleResult = _b.sent();
|
|
343
|
+
if (scaleResult.status !== AcEdPromptStatus.OK ||
|
|
344
|
+
!scaleResult.stringResult)
|
|
345
|
+
return [2 /*return*/];
|
|
346
|
+
factor = this.parseScaleFactor(scaleResult.stringResult);
|
|
347
|
+
if (factor == null)
|
|
348
|
+
return [2 /*return*/];
|
|
349
|
+
this.applyRelativeScale(context, factor);
|
|
350
|
+
return [2 /*return*/];
|
|
351
|
+
case 9:
|
|
352
|
+
if (keyword === 'Previous') {
|
|
353
|
+
this.runPrevious(context);
|
|
354
|
+
}
|
|
355
|
+
return [2 /*return*/];
|
|
356
|
+
}
|
|
92
357
|
});
|
|
93
358
|
});
|
|
94
359
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcApZoomCmd.js","sourceRoot":"","sources":["../../src/command/AcApZoomCmd.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"AcApZoomCmd.js","sourceRoot":"","sources":["../../src/command/AcApZoomCmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApConvertToDxfCmd.d.ts","sourceRoot":"","sources":["../../../src/command/convert/AcApConvertToDxfCmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAG1C;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;IAC5C,OAAO,CAAC,QAAQ,EAAE,WAAW;CAIpC"}
|
|
@@ -49,7 +49,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
49
49
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
-
import { AcEdCommand } from '
|
|
52
|
+
import { AcEdCommand } from '../../editor';
|
|
53
53
|
import { AcApDxfConvertor } from './AcApDxfConvertor';
|
|
54
54
|
/**
|
|
55
55
|
* Command for exporting the current CAD drawing to DXF format.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApConvertToDxfCmd.js","sourceRoot":"","sources":["../../../src/command/convert/AcApConvertToDxfCmd.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD;;GAEG;AACH;IAAyC,uCAAW;IAApD;;IAKA,CAAC;IAJO,qCAAO,GAAb,UAAc,QAAqB;;;;gBAC3B,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAA;gBACxC,SAAS,CAAC,OAAO,EAAE,CAAA;;;;KACpB;IACH,0BAAC;AAAD,CAAC,AALD,CAAyC,WAAW,GAKnD"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { AcApContext } from '../../app';
|
|
2
|
+
import { AcEdCommand } from '../../editor';
|
|
3
|
+
/**
|
|
4
|
+
* Command for exporting the current CAD drawing to PNG format.
|
|
5
|
+
*
|
|
6
|
+
* This command creates a PNG converter and initiates the conversion
|
|
7
|
+
* process to export the current drawing as a PNG file. The command:
|
|
8
|
+
* - Creates a new PNG converter instance
|
|
9
|
+
* - Prompts for an export bounding box
|
|
10
|
+
* - Prompts for optional long side pixel value (or press Enter for default)
|
|
11
|
+
* - Converts the current view to PNG format
|
|
12
|
+
* - Automatically downloads the PNG file
|
|
13
|
+
*
|
|
14
|
+
* This is useful for exporting drawings to a raster image format
|
|
15
|
+
* that can be displayed in browsers or used in other applications.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const convertCmd = new AcApConvertToPngCmd();
|
|
20
|
+
* convertCmd.execute(context); // User prompted for bounds and longside
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare class AcApConvertToPngCmd extends AcEdCommand {
|
|
24
|
+
/**
|
|
25
|
+
* Executes the PNG conversion command.
|
|
26
|
+
*
|
|
27
|
+
* Prompts the user for:
|
|
28
|
+
* 1. Export bounding box
|
|
29
|
+
* 2. Optional long side pixel value (press Enter for default 1024)
|
|
30
|
+
*
|
|
31
|
+
* @param _context - The application context (unused in this command)
|
|
32
|
+
*/
|
|
33
|
+
execute(_context: AcApContext): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Returns the current drawing extents projected to XY bounds.
|
|
36
|
+
*/
|
|
37
|
+
private getCurrentDrawingBounds;
|
|
38
|
+
/**
|
|
39
|
+
* Expands user-picked bounds to include extents of intersected entities.
|
|
40
|
+
*
|
|
41
|
+
* This avoids cutting entities when the pick box touches their geometry
|
|
42
|
+
* edges (for example anti-aliased line caps or text glyph overhangs).
|
|
43
|
+
*/
|
|
44
|
+
private expandBoundsToEntityExtents;
|
|
45
|
+
/**
|
|
46
|
+
* Keeps active layout-view size in sync with current view size.
|
|
47
|
+
*
|
|
48
|
+
* This guards against stale screen-to-world mapping after container layout
|
|
49
|
+
* changes that do not fire a window resize event.
|
|
50
|
+
*/
|
|
51
|
+
private syncActiveLayoutViewSize;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=AcApConvertToPngCmd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApConvertToPngCmd.d.ts","sourceRoot":"","sources":["../../../src/command/convert/AcApConvertToPngCmd.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAkB,MAAM,WAAW,CAAA;AACvD,OAAO,EACL,WAAW,EAIZ,MAAM,cAAc,CAAA;AAOrB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;IAClD;;;;;;;;OAQG;IACG,OAAO,CAAC,QAAQ,EAAE,WAAW;IAwDnC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAS/B;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;IAmDnC;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;CAQjC"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
var __extends = (this && this.__extends) || (function () {
|
|
2
|
+
var extendStatics = function (d, b) {
|
|
3
|
+
extendStatics = Object.setPrototypeOf ||
|
|
4
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
6
|
+
return extendStatics(d, b);
|
|
7
|
+
};
|
|
8
|
+
return function (d, b) {
|
|
9
|
+
if (typeof b !== "function" && b !== null)
|
|
10
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
11
|
+
extendStatics(d, b);
|
|
12
|
+
function __() { this.constructor = d; }
|
|
13
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
17
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
18
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
19
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
20
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
21
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
22
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
26
|
+
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);
|
|
27
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
28
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
29
|
+
function step(op) {
|
|
30
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
31
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
32
|
+
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;
|
|
33
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
34
|
+
switch (op[0]) {
|
|
35
|
+
case 0: case 1: t = op; break;
|
|
36
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
37
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
38
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
39
|
+
default:
|
|
40
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
41
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
42
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
43
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
44
|
+
if (t[2]) _.ops.pop();
|
|
45
|
+
_.trys.pop(); continue;
|
|
46
|
+
}
|
|
47
|
+
op = body.call(thisArg, _);
|
|
48
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
49
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
import { AcGeBox2d, AcGePoint2d } from '@mlightcad/data-model';
|
|
53
|
+
import { AcApDocManager } from '../../app';
|
|
54
|
+
import { AcEdCommand, AcEdPromptBoxOptions, AcEdPromptDoubleOptions, AcEdPromptStatus } from '../../editor';
|
|
55
|
+
import { AcApI18n } from '../../i18n';
|
|
56
|
+
import { AcApPngConvertor } from './AcApPngConvertor';
|
|
57
|
+
var DEFAULT_LONG_SIDE_PX = 1024;
|
|
58
|
+
/**
|
|
59
|
+
* Command for exporting the current CAD drawing to PNG format.
|
|
60
|
+
*
|
|
61
|
+
* This command creates a PNG converter and initiates the conversion
|
|
62
|
+
* process to export the current drawing as a PNG file. The command:
|
|
63
|
+
* - Creates a new PNG converter instance
|
|
64
|
+
* - Prompts for an export bounding box
|
|
65
|
+
* - Prompts for optional long side pixel value (or press Enter for default)
|
|
66
|
+
* - Converts the current view to PNG format
|
|
67
|
+
* - Automatically downloads the PNG file
|
|
68
|
+
*
|
|
69
|
+
* This is useful for exporting drawings to a raster image format
|
|
70
|
+
* that can be displayed in browsers or used in other applications.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const convertCmd = new AcApConvertToPngCmd();
|
|
75
|
+
* convertCmd.execute(context); // User prompted for bounds and longside
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
var AcApConvertToPngCmd = /** @class */ (function (_super) {
|
|
79
|
+
__extends(AcApConvertToPngCmd, _super);
|
|
80
|
+
function AcApConvertToPngCmd() {
|
|
81
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Executes the PNG conversion command.
|
|
85
|
+
*
|
|
86
|
+
* Prompts the user for:
|
|
87
|
+
* 1. Export bounding box
|
|
88
|
+
* 2. Optional long side pixel value (press Enter for default 1024)
|
|
89
|
+
*
|
|
90
|
+
* @param _context - The application context (unused in this command)
|
|
91
|
+
*/
|
|
92
|
+
AcApConvertToPngCmd.prototype.execute = function (_context) {
|
|
93
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
94
|
+
var converter, view, boxOptions, boxResult, bounds, expandedBounds, longSidePrompt, longSideResult, longSide;
|
|
95
|
+
return __generator(this, function (_a) {
|
|
96
|
+
switch (_a.label) {
|
|
97
|
+
case 0:
|
|
98
|
+
converter = new AcApPngConvertor();
|
|
99
|
+
view = AcApDocManager.instance.curView;
|
|
100
|
+
this.syncActiveLayoutViewSize(view);
|
|
101
|
+
boxOptions = new AcEdPromptBoxOptions(AcApI18n.t('jig.pngout.boundsFirstCorner'), AcApI18n.t('jig.pngout.boundsSecondCorner'));
|
|
102
|
+
// Export window corners should follow exact click positions.
|
|
103
|
+
boxOptions.disableOSnap = true;
|
|
104
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getBox(boxOptions)];
|
|
105
|
+
case 1:
|
|
106
|
+
boxResult = _a.sent();
|
|
107
|
+
if (boxResult.status === AcEdPromptStatus.OK && boxResult.value) {
|
|
108
|
+
expandedBounds = this.expandBoundsToEntityExtents(boxResult.value, view);
|
|
109
|
+
bounds = expandedBounds.bounds;
|
|
110
|
+
}
|
|
111
|
+
else if (boxResult.status === AcEdPromptStatus.None) {
|
|
112
|
+
bounds = this.getCurrentDrawingBounds();
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
// User canceled or prompt failed: abort command gracefully.
|
|
116
|
+
return [2 /*return*/];
|
|
117
|
+
}
|
|
118
|
+
longSidePrompt = new AcEdPromptDoubleOptions("".concat(AcApI18n.t('jig.pngout.longSidePrompt'), " <").concat(DEFAULT_LONG_SIDE_PX, ">"));
|
|
119
|
+
longSidePrompt.allowNone = true;
|
|
120
|
+
longSidePrompt.allowNegative = false;
|
|
121
|
+
longSidePrompt.allowZero = false;
|
|
122
|
+
longSidePrompt.defaultValue = DEFAULT_LONG_SIDE_PX;
|
|
123
|
+
longSidePrompt.useDefaultValue = true;
|
|
124
|
+
return [4 /*yield*/, AcApDocManager.instance.editor.getDouble(longSidePrompt)];
|
|
125
|
+
case 2:
|
|
126
|
+
longSideResult = _a.sent();
|
|
127
|
+
if (longSideResult.status === AcEdPromptStatus.Cancel ||
|
|
128
|
+
longSideResult.status === AcEdPromptStatus.Error) {
|
|
129
|
+
return [2 /*return*/];
|
|
130
|
+
}
|
|
131
|
+
longSide = longSideResult.status === AcEdPromptStatus.OK &&
|
|
132
|
+
longSideResult.value !== undefined
|
|
133
|
+
? longSideResult.value
|
|
134
|
+
: DEFAULT_LONG_SIDE_PX;
|
|
135
|
+
converter.convert(bounds, longSide);
|
|
136
|
+
return [2 /*return*/];
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Returns the current drawing extents projected to XY bounds.
|
|
143
|
+
*/
|
|
144
|
+
AcApConvertToPngCmd.prototype.getCurrentDrawingBounds = function () {
|
|
145
|
+
var db = AcApDocManager.instance.curDocument.database;
|
|
146
|
+
var ext = db.extents;
|
|
147
|
+
return new AcGeBox2d(new AcGePoint2d(ext.min.x, ext.min.y), new AcGePoint2d(ext.max.x, ext.max.y));
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* Expands user-picked bounds to include extents of intersected entities.
|
|
151
|
+
*
|
|
152
|
+
* This avoids cutting entities when the pick box touches their geometry
|
|
153
|
+
* edges (for example anti-aliased line caps or text glyph overhangs).
|
|
154
|
+
*/
|
|
155
|
+
AcApConvertToPngCmd.prototype.expandBoundsToEntityExtents = function (userBounds, view) {
|
|
156
|
+
var hits = view.search(userBounds);
|
|
157
|
+
var entityBounds = new AcGeBox2d();
|
|
158
|
+
var hasEntityBounds = false;
|
|
159
|
+
var expandByItem = function (item) {
|
|
160
|
+
var _a;
|
|
161
|
+
entityBounds.expandByPoint(new AcGePoint2d(item.minX, item.minY));
|
|
162
|
+
entityBounds.expandByPoint(new AcGePoint2d(item.maxX, item.maxY));
|
|
163
|
+
hasEntityBounds = true;
|
|
164
|
+
(_a = item.children) === null || _a === void 0 ? void 0 : _a.forEach(function (child) {
|
|
165
|
+
entityBounds.expandByPoint(new AcGePoint2d(child.minX, child.minY));
|
|
166
|
+
entityBounds.expandByPoint(new AcGePoint2d(child.maxX, child.maxY));
|
|
167
|
+
});
|
|
168
|
+
};
|
|
169
|
+
hits.forEach(function (hit) { return expandByItem(hit); });
|
|
170
|
+
if (!hasEntityBounds || entityBounds.isEmpty()) {
|
|
171
|
+
return { bounds: userBounds, expanded: false };
|
|
172
|
+
}
|
|
173
|
+
var merged = new AcGeBox2d()
|
|
174
|
+
.expandByPoint(userBounds.min)
|
|
175
|
+
.expandByPoint(userBounds.max)
|
|
176
|
+
.expandByPoint(entityBounds.min)
|
|
177
|
+
.expandByPoint(entityBounds.max);
|
|
178
|
+
var expanded = merged.min.x !== userBounds.min.x ||
|
|
179
|
+
merged.min.y !== userBounds.min.y ||
|
|
180
|
+
merged.max.x !== userBounds.max.x ||
|
|
181
|
+
merged.max.y !== userBounds.max.y;
|
|
182
|
+
return { bounds: merged, expanded: expanded };
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* Keeps active layout-view size in sync with current view size.
|
|
186
|
+
*
|
|
187
|
+
* This guards against stale screen-to-world mapping after container layout
|
|
188
|
+
* changes that do not fire a window resize event.
|
|
189
|
+
*/
|
|
190
|
+
AcApConvertToPngCmd.prototype.syncActiveLayoutViewSize = function (view) {
|
|
191
|
+
var layoutView = view.activeLayoutView;
|
|
192
|
+
if (!layoutView) {
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
layoutView.resize(view.width, view.height);
|
|
196
|
+
};
|
|
197
|
+
return AcApConvertToPngCmd;
|
|
198
|
+
}(AcEdCommand));
|
|
199
|
+
export { AcApConvertToPngCmd };
|
|
200
|
+
//# sourceMappingURL=AcApConvertToPngCmd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApConvertToPngCmd.js","sourceRoot":"","sources":["../../../src/command/convert/AcApConvertToPngCmd.ts"],"names":[],"mappings":"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"}
|