@mlightcad/cad-simple-viewer 1.5.10 → 1.6.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/README.md +23 -8
- package/dist/cad-simple-viewer.js +35023 -70495
- package/dist/cad-simple-viewer.umd.cjs +143 -420
- package/lib/app/AcApDocManager.d.ts +50 -39
- package/lib/app/AcApDocManager.d.ts.map +1 -1
- package/lib/app/AcApDocManager.js +146 -72
- package/lib/app/AcApDocManager.js.map +1 -1
- package/lib/app/AcApSettingManager.d.ts +24 -10
- package/lib/app/AcApSettingManager.d.ts.map +1 -1
- package/lib/app/AcApSettingManager.js +49 -10
- package/lib/app/AcApSettingManager.js.map +1 -1
- package/lib/app/AcApWebworkerReadiness.d.ts +7 -2
- package/lib/app/AcApWebworkerReadiness.d.ts.map +1 -1
- package/lib/app/AcApWebworkerReadiness.js +13 -8
- package/lib/app/AcApWebworkerReadiness.js.map +1 -1
- package/lib/app/AcApWorkerAssets.d.ts +14 -1
- package/lib/app/AcApWorkerAssets.d.ts.map +1 -1
- package/lib/app/AcApWorkerAssets.js +14 -1
- package/lib/app/AcApWorkerAssets.js.map +1 -1
- package/lib/app/index.d.ts +0 -1
- package/lib/app/index.d.ts.map +1 -1
- package/lib/app/index.js +0 -1
- package/lib/app/index.js.map +1 -1
- package/lib/command/AcApRedoCmd.d.ts +1 -1
- package/lib/command/AcApRedoCmd.d.ts.map +1 -1
- package/lib/command/AcApRedoCmd.js +9 -4
- package/lib/command/AcApRedoCmd.js.map +1 -1
- package/lib/command/AcApUndoCmd.d.ts +1 -1
- package/lib/command/AcApUndoCmd.d.ts.map +1 -1
- package/lib/command/AcApUndoCmd.js +9 -4
- package/lib/command/AcApUndoCmd.js.map +1 -1
- package/lib/command/convert/AcApConvertToPngCmd.d.ts.map +1 -1
- package/lib/command/convert/AcApConvertToPngCmd.js +5 -1
- package/lib/command/convert/AcApConvertToPngCmd.js.map +1 -1
- package/lib/command/convert/AcApPngConvertor.d.ts +4 -1
- package/lib/command/convert/AcApPngConvertor.d.ts.map +1 -1
- package/lib/command/convert/AcApPngConvertor.js +131 -78
- package/lib/command/convert/AcApPngConvertor.js.map +1 -1
- package/lib/command/draw/AcApRevCloudCmd.d.ts +48 -0
- package/lib/command/draw/AcApRevCloudCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApRevCloudCmd.js +747 -0
- package/lib/command/draw/AcApRevCloudCmd.js.map +1 -0
- package/lib/command/draw/AcApRevCloudGeom.d.ts +57 -0
- package/lib/command/draw/AcApRevCloudGeom.d.ts.map +1 -0
- package/lib/command/draw/AcApRevCloudGeom.js +373 -0
- package/lib/command/draw/AcApRevCloudGeom.js.map +1 -0
- package/lib/command/draw/AcApSketchCmd.d.ts +59 -0
- package/lib/command/draw/AcApSketchCmd.d.ts.map +1 -0
- package/lib/command/draw/AcApSketchCmd.js +537 -0
- package/lib/command/draw/AcApSketchCmd.js.map +1 -0
- package/lib/command/draw/index.d.ts +3 -0
- package/lib/command/draw/index.d.ts.map +1 -1
- package/lib/command/draw/index.js +3 -0
- package/lib/command/draw/index.js.map +1 -1
- package/lib/command/index.d.ts +2 -1
- package/lib/command/index.d.ts.map +1 -1
- package/lib/command/index.js +2 -1
- package/lib/command/index.js.map +1 -1
- package/lib/command/markup/AcApClearMarkupsCmd.d.ts +10 -0
- package/lib/command/markup/AcApClearMarkupsCmd.d.ts.map +1 -0
- package/lib/command/{review/AcApRevCircleCmd.js → markup/AcApClearMarkupsCmd.js} +19 -49
- package/lib/command/markup/AcApClearMarkupsCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupArrowCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupArrowCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupArrowCmd.js +164 -0
- package/lib/command/markup/AcApMarkupArrowCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupCalloutCmd.d.ts +17 -0
- package/lib/command/markup/AcApMarkupCalloutCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupCalloutCmd.js +259 -0
- package/lib/command/markup/AcApMarkupCalloutCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupCalloutDrag.d.ts +78 -0
- package/lib/command/markup/AcApMarkupCalloutDrag.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupCalloutDrag.js +78 -0
- package/lib/command/markup/AcApMarkupCalloutDrag.js.map +1 -0
- package/lib/command/markup/AcApMarkupCircleCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupCircleCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupCircleCmd.js +174 -0
- package/lib/command/markup/AcApMarkupCircleCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupCloudCmd.d.ts +11 -0
- package/lib/command/markup/AcApMarkupCloudCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupCloudCmd.js +178 -0
- package/lib/command/markup/AcApMarkupCloudCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupCmdUtil.d.ts +43 -0
- package/lib/command/markup/AcApMarkupCmdUtil.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupCmdUtil.js +133 -0
- package/lib/command/markup/AcApMarkupCmdUtil.js.map +1 -0
- package/lib/command/markup/AcApMarkupGeometry.d.ts +57 -0
- package/lib/command/markup/AcApMarkupGeometry.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupGeometry.js +231 -0
- package/lib/command/markup/AcApMarkupGeometry.js.map +1 -0
- package/lib/command/markup/AcApMarkupHighlightCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupHighlightCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupHighlightCmd.js +166 -0
- package/lib/command/markup/AcApMarkupHighlightCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupHistory.d.ts +139 -0
- package/lib/command/markup/AcApMarkupHistory.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupHistory.js +336 -0
- package/lib/command/markup/AcApMarkupHistory.js.map +1 -0
- package/lib/command/markup/AcApMarkupImportExportCmd.d.ts +17 -0
- package/lib/command/markup/AcApMarkupImportExportCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupImportExportCmd.js +182 -0
- package/lib/command/markup/AcApMarkupImportExportCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupLineCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupLineCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupLineCmd.js +185 -0
- package/lib/command/markup/AcApMarkupLineCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupPresenter.d.ts +62 -0
- package/lib/command/markup/AcApMarkupPresenter.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupPresenter.js +288 -0
- package/lib/command/markup/AcApMarkupPresenter.js.map +1 -0
- package/lib/command/markup/AcApMarkupRectCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupRectCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupRectCmd.js +174 -0
- package/lib/command/markup/AcApMarkupRectCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupRepublish.d.ts +29 -0
- package/lib/command/markup/AcApMarkupRepublish.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupRepublish.js +28 -0
- package/lib/command/markup/AcApMarkupRepublish.js.map +1 -0
- package/lib/command/markup/AcApMarkupShapeBuilder.d.ts +88 -0
- package/lib/command/markup/AcApMarkupShapeBuilder.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupShapeBuilder.js +246 -0
- package/lib/command/markup/AcApMarkupShapeBuilder.js.map +1 -0
- package/lib/command/markup/AcApMarkupShapeCallout.d.ts +46 -0
- package/lib/command/markup/AcApMarkupShapeCallout.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupShapeCallout.js +356 -0
- package/lib/command/markup/AcApMarkupShapeCallout.js.map +1 -0
- package/lib/command/markup/AcApMarkupSidecar.d.ts +14 -0
- package/lib/command/markup/AcApMarkupSidecar.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupSidecar.js +196 -0
- package/lib/command/markup/AcApMarkupSidecar.js.map +1 -0
- package/lib/command/markup/AcApMarkupStampCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupStampCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupStampCmd.js +158 -0
- package/lib/command/markup/AcApMarkupStampCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupStore.d.ts +94 -0
- package/lib/command/markup/AcApMarkupStore.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupStore.js +327 -0
- package/lib/command/markup/AcApMarkupStore.js.map +1 -0
- package/lib/command/markup/AcApMarkupTextCmd.d.ts +10 -0
- package/lib/command/markup/AcApMarkupTextCmd.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupTextCmd.js +141 -0
- package/lib/command/markup/AcApMarkupTextCmd.js.map +1 -0
- package/lib/command/markup/AcApMarkupTextEdit.d.ts +88 -0
- package/lib/command/markup/AcApMarkupTextEdit.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupTextEdit.js +249 -0
- package/lib/command/markup/AcApMarkupTextEdit.js.map +1 -0
- package/lib/command/markup/AcApMarkupTypes.d.ts +118 -0
- package/lib/command/markup/AcApMarkupTypes.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupTypes.js +8 -0
- package/lib/command/markup/AcApMarkupTypes.js.map +1 -0
- package/lib/command/markup/AcApMarkupUtil.d.ts +41 -0
- package/lib/command/markup/AcApMarkupUtil.d.ts.map +1 -0
- package/lib/command/markup/AcApMarkupUtil.js +135 -0
- package/lib/command/markup/AcApMarkupUtil.js.map +1 -0
- package/lib/command/markup/AcApMarkupVisibilityCmd.d.ts +17 -0
- package/lib/command/markup/AcApMarkupVisibilityCmd.d.ts.map +1 -0
- package/lib/command/{review/AcApRevVisibilityCmd.js → markup/AcApMarkupVisibilityCmd.js} +30 -27
- package/lib/command/markup/AcApMarkupVisibilityCmd.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupCalloutEntity.d.ts +48 -0
- package/lib/command/markup/entity/AcApMarkupCalloutEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupCalloutEntity.js +291 -0
- package/lib/command/markup/entity/AcApMarkupCalloutEntity.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupEntity.d.ts +131 -0
- package/lib/command/markup/entity/AcApMarkupEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupEntity.js +191 -0
- package/lib/command/markup/entity/AcApMarkupEntity.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupEntityFactory.d.ts +20 -0
- package/lib/command/markup/entity/AcApMarkupEntityFactory.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupEntityFactory.js +43 -0
- package/lib/command/markup/entity/AcApMarkupEntityFactory.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupEntityGrips.d.ts +94 -0
- package/lib/command/markup/entity/AcApMarkupEntityGrips.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupEntityGrips.js +204 -0
- package/lib/command/markup/entity/AcApMarkupEntityGrips.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupHighlightEntity.d.ts +27 -0
- package/lib/command/markup/entity/AcApMarkupHighlightEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupHighlightEntity.js +124 -0
- package/lib/command/markup/entity/AcApMarkupHighlightEntity.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupSegmentEntity.d.ts +40 -0
- package/lib/command/markup/entity/AcApMarkupSegmentEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupSegmentEntity.js +294 -0
- package/lib/command/markup/entity/AcApMarkupSegmentEntity.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupShapeEntity.d.ts +32 -0
- package/lib/command/markup/entity/AcApMarkupShapeEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupShapeEntity.js +241 -0
- package/lib/command/markup/entity/AcApMarkupShapeEntity.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupStampEntity.d.ts +23 -0
- package/lib/command/markup/entity/AcApMarkupStampEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupStampEntity.js +125 -0
- package/lib/command/markup/entity/AcApMarkupStampEntity.js.map +1 -0
- package/lib/command/markup/entity/AcApMarkupTextEntity.d.ts +23 -0
- package/lib/command/markup/entity/AcApMarkupTextEntity.d.ts.map +1 -0
- package/lib/command/markup/entity/AcApMarkupTextEntity.js +129 -0
- package/lib/command/markup/entity/AcApMarkupTextEntity.js.map +1 -0
- package/lib/command/markup/entity/index.d.ts +13 -0
- package/lib/command/markup/entity/index.d.ts.map +1 -0
- package/lib/command/markup/entity/index.js +13 -0
- package/lib/command/markup/entity/index.js.map +1 -0
- package/lib/command/markup/index.d.ts +27 -0
- package/lib/command/markup/index.d.ts.map +1 -0
- package/lib/command/markup/index.js +27 -0
- package/lib/command/markup/index.js.map +1 -0
- package/lib/command/measure/AcApClearMeasurementsCmd.d.ts +5 -12
- package/lib/command/measure/AcApClearMeasurementsCmd.d.ts.map +1 -1
- package/lib/command/measure/AcApClearMeasurementsCmd.js +42 -20
- package/lib/command/measure/AcApClearMeasurementsCmd.js.map +1 -1
- package/lib/command/measure/AcApMeasureAngleCmd.d.ts +13 -3
- package/lib/command/measure/AcApMeasureAngleCmd.d.ts.map +1 -1
- package/lib/command/measure/AcApMeasureAngleCmd.js +76 -210
- package/lib/command/measure/AcApMeasureAngleCmd.js.map +1 -1
- package/lib/command/measure/AcApMeasureArcCmd.d.ts +21 -1
- package/lib/command/measure/AcApMeasureArcCmd.d.ts.map +1 -1
- package/lib/command/measure/AcApMeasureArcCmd.js +103 -97
- package/lib/command/measure/AcApMeasureArcCmd.js.map +1 -1
- package/lib/command/measure/AcApMeasureAreaCmd.d.ts +11 -1
- package/lib/command/measure/AcApMeasureAreaCmd.d.ts.map +1 -1
- package/lib/command/measure/AcApMeasureAreaCmd.js +126 -144
- package/lib/command/measure/AcApMeasureAreaCmd.js.map +1 -1
- package/lib/command/measure/AcApMeasureDistanceCmd.d.ts +24 -15
- package/lib/command/measure/AcApMeasureDistanceCmd.d.ts.map +1 -1
- package/lib/command/measure/AcApMeasureDistanceCmd.js +52 -52
- package/lib/command/measure/AcApMeasureDistanceCmd.js.map +1 -1
- package/lib/command/measure/AcApMeasurePointCmd.d.ts +24 -0
- package/lib/command/measure/AcApMeasurePointCmd.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurePointCmd.js +114 -0
- package/lib/command/measure/AcApMeasurePointCmd.js.map +1 -0
- package/lib/command/measure/AcApMeasurementGeometry.d.ts +22 -0
- package/lib/command/measure/AcApMeasurementGeometry.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementGeometry.js +127 -0
- package/lib/command/measure/AcApMeasurementGeometry.js.map +1 -0
- package/lib/command/measure/AcApMeasurementHistory.d.ts +78 -0
- package/lib/command/measure/AcApMeasurementHistory.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementHistory.js +387 -0
- package/lib/command/measure/AcApMeasurementHistory.js.map +1 -0
- package/lib/command/measure/AcApMeasurementImportExportCmd.d.ts +17 -0
- package/lib/command/measure/AcApMeasurementImportExportCmd.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementImportExportCmd.js +207 -0
- package/lib/command/measure/AcApMeasurementImportExportCmd.js.map +1 -0
- package/lib/command/measure/AcApMeasurementPlace.d.ts +9 -0
- package/lib/command/measure/AcApMeasurementPlace.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementPlace.js +33 -0
- package/lib/command/measure/AcApMeasurementPlace.js.map +1 -0
- package/lib/command/measure/AcApMeasurementSidecar.d.ts +19 -0
- package/lib/command/measure/AcApMeasurementSidecar.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementSidecar.js +173 -0
- package/lib/command/measure/AcApMeasurementSidecar.js.map +1 -0
- package/lib/command/measure/AcApMeasurementStore.d.ts +90 -0
- package/lib/command/measure/AcApMeasurementStore.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementStore.js +364 -0
- package/lib/command/measure/AcApMeasurementStore.js.map +1 -0
- package/lib/command/measure/AcApMeasurementTypes.d.ts +56 -0
- package/lib/command/measure/AcApMeasurementTypes.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementTypes.js +2 -0
- package/lib/command/measure/AcApMeasurementTypes.js.map +1 -0
- package/lib/command/measure/AcApMeasurementVisibilityCmd.d.ts +10 -0
- package/lib/command/measure/AcApMeasurementVisibilityCmd.d.ts.map +1 -0
- package/lib/command/measure/AcApMeasurementVisibilityCmd.js +78 -0
- package/lib/command/measure/AcApMeasurementVisibilityCmd.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureAngleEntity.d.ts +68 -0
- package/lib/command/measure/entity/AcApMeasureAngleEntity.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureAngleEntity.js +188 -0
- package/lib/command/measure/entity/AcApMeasureAngleEntity.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureArcEntity.d.ts +85 -0
- package/lib/command/measure/entity/AcApMeasureArcEntity.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureArcEntity.js +159 -0
- package/lib/command/measure/entity/AcApMeasureArcEntity.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureAreaEntity.d.ts +60 -0
- package/lib/command/measure/entity/AcApMeasureAreaEntity.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureAreaEntity.js +184 -0
- package/lib/command/measure/entity/AcApMeasureAreaEntity.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureDistanceEntity.d.ts +60 -0
- package/lib/command/measure/entity/AcApMeasureDistanceEntity.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureDistanceEntity.js +166 -0
- package/lib/command/measure/entity/AcApMeasureDistanceEntity.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureDrawUtil.d.ts +129 -0
- package/lib/command/measure/entity/AcApMeasureDrawUtil.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureDrawUtil.js +257 -0
- package/lib/command/measure/entity/AcApMeasureDrawUtil.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureEntity.d.ts +148 -0
- package/lib/command/measure/entity/AcApMeasureEntity.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureEntity.js +141 -0
- package/lib/command/measure/entity/AcApMeasureEntity.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasureEntityFactory.d.ts +15 -0
- package/lib/command/measure/entity/AcApMeasureEntityFactory.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasureEntityFactory.js +35 -0
- package/lib/command/measure/entity/AcApMeasureEntityFactory.js.map +1 -0
- package/lib/command/measure/entity/AcApMeasurePointEntity.d.ts +56 -0
- package/lib/command/measure/entity/AcApMeasurePointEntity.d.ts.map +1 -0
- package/lib/command/measure/entity/AcApMeasurePointEntity.js +125 -0
- package/lib/command/measure/entity/AcApMeasurePointEntity.js.map +1 -0
- package/lib/command/measure/entity/index.d.ts +12 -0
- package/lib/command/measure/entity/index.d.ts.map +1 -0
- package/lib/command/measure/entity/index.js +12 -0
- package/lib/command/measure/entity/index.js.map +1 -0
- package/lib/command/measure/index.d.ts +10 -0
- package/lib/command/measure/index.d.ts.map +1 -1
- package/lib/command/measure/index.js +10 -0
- package/lib/command/measure/index.js.map +1 -1
- package/lib/command/modify/AcApCopyCmd.d.ts +1 -1
- package/lib/command/modify/AcApCopyCmd.js +2 -2
- package/lib/command/modify/AcApCopyCmd.js.map +1 -1
- package/lib/command/modify/AcApMoveCmd.js +1 -1
- package/lib/command/modify/AcApMoveCmd.js.map +1 -1
- package/lib/command/modify/AcApOffsetCmd.d.ts +1 -1
- package/lib/command/modify/AcApOffsetCmd.d.ts.map +1 -1
- package/lib/command/modify/AcApOffsetCmd.js +5 -10
- package/lib/command/modify/AcApOffsetCmd.js.map +1 -1
- package/lib/command/modify/AcApRotateCmd.d.ts +1 -1
- package/lib/command/modify/AcApRotateCmd.js +2 -2
- package/lib/command/modify/AcApRotateCmd.js.map +1 -1
- package/lib/command/overlay/AcApHtmlLivePreview.d.ts +121 -0
- package/lib/command/overlay/AcApHtmlLivePreview.d.ts.map +1 -0
- package/lib/command/overlay/AcApHtmlLivePreview.js +193 -0
- package/lib/command/overlay/AcApHtmlLivePreview.js.map +1 -0
- package/lib/command/overlay/AcApOverlayDrawUtil.d.ts +63 -0
- package/lib/command/overlay/AcApOverlayDrawUtil.d.ts.map +1 -0
- package/lib/command/overlay/AcApOverlayDrawUtil.js +115 -0
- package/lib/command/overlay/AcApOverlayDrawUtil.js.map +1 -0
- package/lib/command/overlay/AcApOverlayEntity.d.ts +93 -0
- package/lib/command/overlay/AcApOverlayEntity.d.ts.map +1 -0
- package/lib/command/overlay/AcApOverlayEntity.js +65 -0
- package/lib/command/overlay/AcApOverlayEntity.js.map +1 -0
- package/lib/command/overlay/AcApOverlayGripHost.d.ts +105 -0
- package/lib/command/overlay/AcApOverlayGripHost.d.ts.map +1 -0
- package/lib/command/overlay/AcApOverlayGripHost.js +207 -0
- package/lib/command/overlay/AcApOverlayGripHost.js.map +1 -0
- package/lib/command/overlay/AcApOverlaySerializable.d.ts +20 -0
- package/lib/command/overlay/AcApOverlaySerializable.d.ts.map +1 -0
- package/lib/command/overlay/AcApOverlaySerializable.js +2 -0
- package/lib/command/overlay/AcApOverlaySerializable.js.map +1 -0
- package/lib/command/overlay/index.d.ts +13 -0
- package/lib/command/overlay/index.d.ts.map +1 -0
- package/lib/command/overlay/index.js +13 -0
- package/lib/command/overlay/index.js.map +1 -0
- package/lib/editor/command/AcEdCommand.d.ts.map +1 -1
- package/lib/editor/command/AcEdCommand.js +1 -0
- package/lib/editor/command/AcEdCommand.js.map +1 -1
- package/lib/editor/global/AcEdUiLayout.d.ts +3 -3
- package/lib/editor/global/AcEdUiLayout.d.ts.map +1 -1
- package/lib/editor/global/AcEdUiLayout.js +3 -3
- package/lib/editor/global/AcEdUiLayout.js.map +1 -1
- package/lib/editor/global/AcEdUiTheme.d.ts +1 -1
- package/lib/editor/global/AcEdUiTheme.d.ts.map +1 -1
- package/lib/editor/global/AcEdUiTheme.js +1 -1
- package/lib/editor/global/AcEdUiTheme.js.map +1 -1
- package/lib/editor/global/eventBus.d.ts +5 -0
- package/lib/editor/global/eventBus.d.ts.map +1 -1
- package/lib/editor/global/eventBus.js.map +1 -1
- package/lib/editor/input/AcEditor.d.ts +6 -0
- package/lib/editor/input/AcEditor.d.ts.map +1 -1
- package/lib/editor/input/AcEditor.js +10 -0
- package/lib/editor/input/AcEditor.js.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.d.ts +7 -0
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.d.ts.map +1 -1
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.js +17 -0
- package/lib/editor/input/prompt/AcEdPromptBoxOptions.js.map +1 -1
- package/lib/editor/input/ui/AcEdInputManager.d.ts +9 -0
- package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdInputManager.js +17 -0
- package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
- package/lib/editor/input/ui/AcEdMTextEditor.js +3 -3
- package/lib/editor/input/ui/AcEdMTextEditor.js.map +1 -1
- package/lib/i18n/cs/command.d.ts +60 -0
- package/lib/i18n/cs/command.d.ts.map +1 -1
- package/lib/i18n/cs/command.js +63 -3
- package/lib/i18n/cs/command.js.map +1 -1
- package/lib/i18n/cs/jig.d.ts +1227 -1
- package/lib/i18n/cs/jig.d.ts.map +1 -1
- package/lib/i18n/cs/jig.js +1226 -6
- package/lib/i18n/cs/jig.js.map +1 -1
- package/lib/i18n/cs/main.d.ts +5 -0
- package/lib/i18n/cs/main.d.ts.map +1 -1
- package/lib/i18n/cs/main.js +5 -0
- package/lib/i18n/cs/main.js.map +1 -1
- package/lib/i18n/en/command.d.ts +57 -0
- package/lib/i18n/en/command.d.ts.map +1 -1
- package/lib/i18n/en/command.js +60 -3
- package/lib/i18n/en/command.js.map +1 -1
- package/lib/i18n/en/jig.d.ts +180 -0
- package/lib/i18n/en/jig.d.ts.map +1 -1
- package/lib/i18n/en/jig.js +181 -1
- package/lib/i18n/en/jig.js.map +1 -1
- package/lib/i18n/en/main.d.ts +5 -0
- package/lib/i18n/en/main.d.ts.map +1 -1
- package/lib/i18n/en/main.js +5 -0
- package/lib/i18n/en/main.js.map +1 -1
- package/lib/i18n/tr/command.d.ts +57 -0
- package/lib/i18n/tr/command.d.ts.map +1 -1
- package/lib/i18n/tr/command.js +60 -3
- package/lib/i18n/tr/command.js.map +1 -1
- package/lib/i18n/tr/jig.d.ts +180 -0
- package/lib/i18n/tr/jig.d.ts.map +1 -1
- package/lib/i18n/tr/jig.js +181 -1
- package/lib/i18n/tr/jig.js.map +1 -1
- package/lib/i18n/tr/main.d.ts +7 -0
- package/lib/i18n/tr/main.d.ts.map +1 -1
- package/lib/i18n/tr/main.js +7 -0
- package/lib/i18n/tr/main.js.map +1 -1
- package/lib/i18n/zh/command.d.ts +57 -0
- package/lib/i18n/zh/command.d.ts.map +1 -1
- package/lib/i18n/zh/command.js +60 -3
- package/lib/i18n/zh/command.js.map +1 -1
- package/lib/i18n/zh/jig.d.ts +180 -0
- package/lib/i18n/zh/jig.d.ts.map +1 -1
- package/lib/i18n/zh/jig.js +181 -1
- package/lib/i18n/zh/jig.js.map +1 -1
- package/lib/i18n/zh/main.d.ts +5 -0
- package/lib/i18n/zh/main.d.ts.map +1 -1
- package/lib/i18n/zh/main.js +5 -0
- package/lib/i18n/zh/main.js.map +1 -1
- package/lib/plugin/AcApPluginManager.d.ts.map +1 -1
- package/lib/plugin/AcApPluginManager.js +2 -1
- package/lib/plugin/AcApPluginManager.js.map +1 -1
- package/lib/service/AcApEntitySelection.d.ts +0 -3
- package/lib/service/AcApEntitySelection.d.ts.map +1 -1
- package/lib/service/AcApEntitySelection.js +42 -36
- package/lib/service/AcApEntitySelection.js.map +1 -1
- package/lib/ui/AcApDrawStyle.d.ts +63 -0
- package/lib/ui/AcApDrawStyle.d.ts.map +1 -0
- package/lib/ui/AcApDrawStyle.js +149 -0
- package/lib/ui/AcApDrawStyle.js.map +1 -0
- package/lib/ui/AcApDrawStyleToolbar.d.ts +124 -0
- package/lib/ui/AcApDrawStyleToolbar.d.ts.map +1 -0
- package/lib/ui/AcApDrawStyleToolbar.js +486 -0
- package/lib/ui/AcApDrawStyleToolbar.js.map +1 -0
- package/lib/ui/AcUiDialog.d.ts.map +1 -1
- package/lib/ui/AcUiDialog.js +2 -2
- package/lib/ui/AcUiDialog.js.map +1 -1
- package/lib/ui/index.d.ts +2 -0
- package/lib/ui/index.d.ts.map +1 -1
- package/lib/ui/index.js +2 -0
- package/lib/ui/index.js.map +1 -1
- package/lib/util/AcApDatabaseEdit.d.ts.map +1 -1
- package/lib/util/AcApDatabaseEdit.js +1 -0
- package/lib/util/AcApDatabaseEdit.js.map +1 -1
- package/lib/util/AcApMeasurementUnits.d.ts +52 -0
- package/lib/util/AcApMeasurementUnits.d.ts.map +1 -0
- package/lib/util/AcApMeasurementUnits.js +137 -0
- package/lib/util/AcApMeasurementUnits.js.map +1 -0
- package/lib/util/AcApMeasurementUtil.d.ts +42 -0
- package/lib/util/AcApMeasurementUtil.d.ts.map +1 -0
- package/lib/util/AcApMeasurementUtil.js +98 -0
- package/lib/util/AcApMeasurementUtil.js.map +1 -0
- package/lib/util/AcApScreenHitTest.d.ts +35 -0
- package/lib/util/AcApScreenHitTest.d.ts.map +1 -0
- package/lib/util/AcApScreenHitTest.js +98 -0
- package/lib/util/AcApScreenHitTest.js.map +1 -0
- package/lib/util/AcApScriptParser.d.ts +13 -0
- package/lib/util/AcApScriptParser.d.ts.map +1 -0
- package/lib/util/AcApScriptParser.js +55 -0
- package/lib/util/AcApScriptParser.js.map +1 -0
- package/lib/util/index.d.ts +4 -1
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +4 -1
- package/lib/util/index.js.map +1 -1
- package/lib/view/AcEdReviewOverlayPick.d.ts +25 -0
- package/lib/view/AcEdReviewOverlayPick.d.ts.map +1 -0
- package/lib/view/AcEdReviewOverlayPick.js +229 -0
- package/lib/view/AcEdReviewOverlayPick.js.map +1 -0
- package/lib/view/AcEdViewKeyHandler.d.ts.map +1 -1
- package/lib/view/AcEdViewKeyHandler.js +53 -0
- package/lib/view/AcEdViewKeyHandler.js.map +1 -1
- package/lib/view/AcTrScene.d.ts +15 -1
- package/lib/view/AcTrScene.d.ts.map +1 -1
- package/lib/view/AcTrScene.js +25 -2
- package/lib/view/AcTrScene.js.map +1 -1
- package/lib/view/AcTrView2d.d.ts +46 -5
- package/lib/view/AcTrView2d.d.ts.map +1 -1
- package/lib/view/AcTrView2d.js +179 -74
- package/lib/view/AcTrView2d.js.map +1 -1
- package/lib/view/index.d.ts +1 -0
- package/lib/view/index.d.ts.map +1 -1
- package/lib/view/index.js +1 -0
- package/lib/view/index.js.map +1 -1
- package/package.json +7 -6
- package/dist/libredwg-parser-worker.js +0 -7525
- package/lib/app/AcApAnnotation.d.ts +0 -47
- package/lib/app/AcApAnnotation.d.ts.map +0 -1
- package/lib/app/AcApAnnotation.js +0 -135
- package/lib/app/AcApAnnotation.js.map +0 -1
- package/lib/command/review/AcApBaseRevCmd.d.ts +0 -36
- package/lib/command/review/AcApBaseRevCmd.d.ts.map +0 -1
- package/lib/command/review/AcApBaseRevCmd.js +0 -68
- package/lib/command/review/AcApBaseRevCmd.js.map +0 -1
- package/lib/command/review/AcApRevCircleCmd.d.ts +0 -18
- package/lib/command/review/AcApRevCircleCmd.d.ts.map +0 -1
- package/lib/command/review/AcApRevCircleCmd.js.map +0 -1
- package/lib/command/review/AcApRevCloudCmd.d.ts +0 -26
- package/lib/command/review/AcApRevCloudCmd.d.ts.map +0 -1
- package/lib/command/review/AcApRevCloudCmd.js +0 -240
- package/lib/command/review/AcApRevCloudCmd.js.map +0 -1
- package/lib/command/review/AcApRevRectCmd.d.ts +0 -18
- package/lib/command/review/AcApRevRectCmd.d.ts.map +0 -1
- package/lib/command/review/AcApRevRectCmd.js +0 -155
- package/lib/command/review/AcApRevRectCmd.js.map +0 -1
- package/lib/command/review/AcApRevVisibilityCmd.d.ts +0 -15
- package/lib/command/review/AcApRevVisibilityCmd.d.ts.map +0 -1
- package/lib/command/review/AcApRevVisibilityCmd.js.map +0 -1
- package/lib/command/review/AcApSketchCmd.d.ts +0 -32
- package/lib/command/review/AcApSketchCmd.d.ts.map +0 -1
- package/lib/command/review/AcApSketchCmd.js +0 -175
- package/lib/command/review/AcApSketchCmd.js.map +0 -1
- package/lib/command/review/index.d.ts +0 -7
- package/lib/command/review/index.d.ts.map +0 -1
- package/lib/command/review/index.js +0 -7
- package/lib/command/review/index.js.map +0 -1
- package/lib/util/AcApMeasurementElementGenerator.d.ts +0 -36
- package/lib/util/AcApMeasurementElementGenerator.d.ts.map +0 -1
- package/lib/util/AcApMeasurementElementGenerator.js +0 -92
- package/lib/util/AcApMeasurementElementGenerator.js.map +0 -1
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTML-only live preview stroke for markup / measure jigs.
|
|
3
|
+
*
|
|
4
|
+
* Uses {@link AcTrHtmlCanvasOverlay} on a live layer; never adds AcDb entities.
|
|
5
|
+
* Updates set {@link AcTrView2d.isHtmlDirty} only (not {@link AcTrView2d.isDirty}),
|
|
6
|
+
* so jig rubber-bands no longer force a WebGL redraw.
|
|
7
|
+
*/
|
|
8
|
+
import type { AcCmColor } from '@mlightcad/data-model';
|
|
9
|
+
import type { AcTrView2d } from '../../view';
|
|
10
|
+
/** World-space 2D point for live preview strokes. */
|
|
11
|
+
export interface AcApHtmlLivePoint {
|
|
12
|
+
/** World X. */
|
|
13
|
+
x: number;
|
|
14
|
+
/** World Y. */
|
|
15
|
+
y: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Drawable content for one live-preview frame.
|
|
19
|
+
*/
|
|
20
|
+
export type AcApHtmlLiveDrawFn = (ctx: CanvasRenderingContext2D, view: AcTrView2d) => void;
|
|
21
|
+
/**
|
|
22
|
+
* Full-viewport HTML canvas used as a jig rubber-band / shape preview.
|
|
23
|
+
*/
|
|
24
|
+
export declare class AcApHtmlLivePreview {
|
|
25
|
+
/** Host view. */
|
|
26
|
+
private readonly view;
|
|
27
|
+
/** Screen-space canvas overlay on the live layer. */
|
|
28
|
+
private readonly overlay;
|
|
29
|
+
/** Current frame drawer; `null` clears the canvas. */
|
|
30
|
+
private drawFn;
|
|
31
|
+
/** Bound viewChanged listener. */
|
|
32
|
+
private readonly onViewChanged;
|
|
33
|
+
/**
|
|
34
|
+
* @param view - Active 2D view.
|
|
35
|
+
* @param id - Unique overlay id.
|
|
36
|
+
* @param layer - HTML transient live layer name.
|
|
37
|
+
*/
|
|
38
|
+
constructor(view: AcTrView2d, id: string, layer: string);
|
|
39
|
+
/** Overlay id (for manager remove). */
|
|
40
|
+
get id(): string;
|
|
41
|
+
/**
|
|
42
|
+
* Replace the draw callback and immediately paint.
|
|
43
|
+
*
|
|
44
|
+
* Marks {@link AcTrView2d.isHtmlDirty} so CSS2D siblings (badges / dots)
|
|
45
|
+
* updated in the same jig tick are reprojected. Canvas strokes themselves
|
|
46
|
+
* are painted synchronously and do not need a WebGL pass.
|
|
47
|
+
*
|
|
48
|
+
* @param drawFn - Frame drawer, or `null` to clear.
|
|
49
|
+
*/
|
|
50
|
+
acapSetDraw(drawFn: AcApHtmlLiveDrawFn | null): void;
|
|
51
|
+
/** Clear the canvas without disposing the overlay. */
|
|
52
|
+
acapClear(): void;
|
|
53
|
+
/**
|
|
54
|
+
* Remove overlay and viewChanged listener.
|
|
55
|
+
*
|
|
56
|
+
* Sets {@link AcTrView2d.isHtmlDirty} so CSS2D can drop related live badges.
|
|
57
|
+
*/
|
|
58
|
+
acapDispose(): void;
|
|
59
|
+
/** Paint the current frame onto the overlay canvas. */
|
|
60
|
+
private acapPaint;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Stroke a world-space segment in screen space.
|
|
64
|
+
*
|
|
65
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
66
|
+
* @param view - View for world → screen.
|
|
67
|
+
* @param a - Segment start (world).
|
|
68
|
+
* @param b - Segment end (world).
|
|
69
|
+
* @param color - CSS or AcCmColor stroke color.
|
|
70
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
71
|
+
* @param options - Optional dash pattern and arrow head at `b`.
|
|
72
|
+
*/
|
|
73
|
+
export declare function acapStrokeLiveSegment(ctx: CanvasRenderingContext2D, view: AcTrView2d, a: AcApHtmlLivePoint, b: AcApHtmlLivePoint, color: string | AcCmColor, lineWidth: number, options?: {
|
|
74
|
+
dashed?: boolean;
|
|
75
|
+
arrow?: boolean;
|
|
76
|
+
}): void;
|
|
77
|
+
/**
|
|
78
|
+
* Stroke a world-space closed polyline (screen projection).
|
|
79
|
+
*
|
|
80
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
81
|
+
* @param view - View for world → screen.
|
|
82
|
+
* @param points - World vertices in order.
|
|
83
|
+
* @param color - CSS or AcCmColor stroke color.
|
|
84
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
85
|
+
* @param options - Optional dash / closePath.
|
|
86
|
+
*/
|
|
87
|
+
export declare function acapStrokeLivePolyline(ctx: CanvasRenderingContext2D, view: AcTrView2d, points: AcApHtmlLivePoint[], color: string | AcCmColor, lineWidth: number, options?: {
|
|
88
|
+
dashed?: boolean;
|
|
89
|
+
closed?: boolean;
|
|
90
|
+
}): void;
|
|
91
|
+
/**
|
|
92
|
+
* Stroke a world-space circle as a screen-space arc.
|
|
93
|
+
*
|
|
94
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
95
|
+
* @param view - View for world → screen.
|
|
96
|
+
* @param center - Circle center (world).
|
|
97
|
+
* @param radius - Circle radius (world).
|
|
98
|
+
* @param color - CSS or AcCmColor stroke color.
|
|
99
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
100
|
+
*/
|
|
101
|
+
export declare function acapStrokeLiveCircle(ctx: CanvasRenderingContext2D, view: AcTrView2d, center: AcApHtmlLivePoint, radius: number, color: string | AcCmColor, lineWidth: number): void;
|
|
102
|
+
/**
|
|
103
|
+
* Draw a highlight rectangle preview (matches committed highlight look).
|
|
104
|
+
*
|
|
105
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
106
|
+
* @param view - View for world → screen.
|
|
107
|
+
* @param corner1 - One corner (world).
|
|
108
|
+
* @param corner2 - Opposite corner (world).
|
|
109
|
+
* @param color - CSS color string.
|
|
110
|
+
* @param lineWidth - Outline width in CSS pixels.
|
|
111
|
+
*/
|
|
112
|
+
export declare function acapFillLiveHighlight(ctx: CanvasRenderingContext2D, view: AcTrView2d, corner1: AcApHtmlLivePoint, corner2: AcApHtmlLivePoint, color: string, lineWidth: number): void;
|
|
113
|
+
/**
|
|
114
|
+
* Axis-aligned rectangle corners as a closed polyline (world).
|
|
115
|
+
*
|
|
116
|
+
* @param first - One corner.
|
|
117
|
+
* @param second - Opposite corner.
|
|
118
|
+
* @returns Four corners in clockwise order from `first`'s x/y mix.
|
|
119
|
+
*/
|
|
120
|
+
export declare function acapLiveRectCorners(first: AcApHtmlLivePoint, second: AcApHtmlLivePoint): AcApHtmlLivePoint[];
|
|
121
|
+
//# sourceMappingURL=AcApHtmlLivePreview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApHtmlLivePreview.d.ts","sourceRoot":"","sources":["../../../src/command/overlay/AcApHtmlLivePreview.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAItD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAO5C,qDAAqD;AACrD,MAAM,WAAW,iBAAiB;IAChC,eAAe;IACf,CAAC,EAAE,MAAM,CAAA;IACT,eAAe;IACf,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,UAAU,KACb,IAAI,CAAA;AAET;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,iBAAiB;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IACjC,qDAAqD;IACrD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;IAC/C,sDAAsD;IACtD,OAAO,CAAC,MAAM,CAAkC;IAChD,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IAEvD;;;;OAIG;gBACS,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAYvD,uCAAuC;IACvC,IAAI,EAAE,IAAI,MAAM,CAEf;IAED;;;;;;;;OAQG;IACH,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,GAAG,IAAI;IAMpD,sDAAsD;IACtD,SAAS,IAAI,IAAI;IAIjB;;;;OAIG;IACH,WAAW,IAAI,IAAI;IAMnB,uDAAuD;IACvD,OAAO,CAAC,SAAS;CAKlB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,iBAAiB,EACpB,CAAC,EAAE,iBAAiB,EACpB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,IAAI,CAeN;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,iBAAiB,EAAE,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/C,IAAI,CAeN;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,SAAS,EAAE,MAAM,GAChB,IAAI,CAWN;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,IAAI,CAQN;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,iBAAiB,GACxB,iBAAiB,EAAE,CAOrB"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTML-only live preview stroke for markup / measure jigs.
|
|
3
|
+
*
|
|
4
|
+
* Uses {@link AcTrHtmlCanvasOverlay} on a live layer; never adds AcDb entities.
|
|
5
|
+
* Updates set {@link AcTrView2d.isHtmlDirty} only (not {@link AcTrView2d.isDirty}),
|
|
6
|
+
* so jig rubber-bands no longer force a WebGL redraw.
|
|
7
|
+
*/
|
|
8
|
+
import { AcTrHtmlCanvasOverlay } from '@mlightcad/three-renderer';
|
|
9
|
+
import { acapCssColor } from '../../util';
|
|
10
|
+
import { acapDrawOverlayArrowHead, acapDrawOverlayHighlight, acapFitOverlayCanvas } from './AcApOverlayDrawUtil';
|
|
11
|
+
/**
|
|
12
|
+
* Full-viewport HTML canvas used as a jig rubber-band / shape preview.
|
|
13
|
+
*/
|
|
14
|
+
var AcApHtmlLivePreview = /** @class */ (function () {
|
|
15
|
+
/**
|
|
16
|
+
* @param view - Active 2D view.
|
|
17
|
+
* @param id - Unique overlay id.
|
|
18
|
+
* @param layer - HTML transient live layer name.
|
|
19
|
+
*/
|
|
20
|
+
function AcApHtmlLivePreview(view, id, layer) {
|
|
21
|
+
var _this = this;
|
|
22
|
+
/** Current frame drawer; `null` clears the canvas. */
|
|
23
|
+
this.drawFn = null;
|
|
24
|
+
/** Bound viewChanged listener. */
|
|
25
|
+
this.onViewChanged = function () { return _this.acapPaint(); };
|
|
26
|
+
this.view = view;
|
|
27
|
+
this.overlay = new AcTrHtmlCanvasOverlay({
|
|
28
|
+
id: id,
|
|
29
|
+
container: view.container,
|
|
30
|
+
layer: layer,
|
|
31
|
+
layoutId: view.activeLayoutBtrId
|
|
32
|
+
});
|
|
33
|
+
view.htmlTransientManager.add(this.overlay);
|
|
34
|
+
view.events.viewChanged.addEventListener(this.onViewChanged);
|
|
35
|
+
}
|
|
36
|
+
Object.defineProperty(AcApHtmlLivePreview.prototype, "id", {
|
|
37
|
+
/** Overlay id (for manager remove). */
|
|
38
|
+
get: function () {
|
|
39
|
+
return this.overlay.id;
|
|
40
|
+
},
|
|
41
|
+
enumerable: false,
|
|
42
|
+
configurable: true
|
|
43
|
+
});
|
|
44
|
+
/**
|
|
45
|
+
* Replace the draw callback and immediately paint.
|
|
46
|
+
*
|
|
47
|
+
* Marks {@link AcTrView2d.isHtmlDirty} so CSS2D siblings (badges / dots)
|
|
48
|
+
* updated in the same jig tick are reprojected. Canvas strokes themselves
|
|
49
|
+
* are painted synchronously and do not need a WebGL pass.
|
|
50
|
+
*
|
|
51
|
+
* @param drawFn - Frame drawer, or `null` to clear.
|
|
52
|
+
*/
|
|
53
|
+
AcApHtmlLivePreview.prototype.acapSetDraw = function (drawFn) {
|
|
54
|
+
this.drawFn = drawFn;
|
|
55
|
+
this.acapPaint();
|
|
56
|
+
this.view.isHtmlDirty = true;
|
|
57
|
+
};
|
|
58
|
+
/** Clear the canvas without disposing the overlay. */
|
|
59
|
+
AcApHtmlLivePreview.prototype.acapClear = function () {
|
|
60
|
+
this.acapSetDraw(null);
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Remove overlay and viewChanged listener.
|
|
64
|
+
*
|
|
65
|
+
* Sets {@link AcTrView2d.isHtmlDirty} so CSS2D can drop related live badges.
|
|
66
|
+
*/
|
|
67
|
+
AcApHtmlLivePreview.prototype.acapDispose = function () {
|
|
68
|
+
this.view.events.viewChanged.removeEventListener(this.onViewChanged);
|
|
69
|
+
this.view.htmlTransientManager.remove(this.overlay.id);
|
|
70
|
+
this.view.isHtmlDirty = true;
|
|
71
|
+
};
|
|
72
|
+
/** Paint the current frame onto the overlay canvas. */
|
|
73
|
+
AcApHtmlLivePreview.prototype.acapPaint = function () {
|
|
74
|
+
var _a;
|
|
75
|
+
var ctx = acapFitOverlayCanvas(this.overlay.canvas, this.view.container);
|
|
76
|
+
if (!ctx)
|
|
77
|
+
return;
|
|
78
|
+
(_a = this.drawFn) === null || _a === void 0 ? void 0 : _a.call(this, ctx, this.view);
|
|
79
|
+
};
|
|
80
|
+
return AcApHtmlLivePreview;
|
|
81
|
+
}());
|
|
82
|
+
export { AcApHtmlLivePreview };
|
|
83
|
+
/**
|
|
84
|
+
* Stroke a world-space segment in screen space.
|
|
85
|
+
*
|
|
86
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
87
|
+
* @param view - View for world → screen.
|
|
88
|
+
* @param a - Segment start (world).
|
|
89
|
+
* @param b - Segment end (world).
|
|
90
|
+
* @param color - CSS or AcCmColor stroke color.
|
|
91
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
92
|
+
* @param options - Optional dash pattern and arrow head at `b`.
|
|
93
|
+
*/
|
|
94
|
+
export function acapStrokeLiveSegment(ctx, view, a, b, color, lineWidth, options) {
|
|
95
|
+
var css = typeof color === 'string' ? color : acapCssColor(color);
|
|
96
|
+
var sa = view.worldToScreen(a);
|
|
97
|
+
var sb = view.worldToScreen(b);
|
|
98
|
+
ctx.strokeStyle = css;
|
|
99
|
+
ctx.lineWidth = lineWidth;
|
|
100
|
+
if (options === null || options === void 0 ? void 0 : options.dashed)
|
|
101
|
+
ctx.setLineDash([8, 5]);
|
|
102
|
+
ctx.beginPath();
|
|
103
|
+
ctx.moveTo(sa.x, sa.y);
|
|
104
|
+
ctx.lineTo(sb.x, sb.y);
|
|
105
|
+
ctx.stroke();
|
|
106
|
+
if (options === null || options === void 0 ? void 0 : options.dashed)
|
|
107
|
+
ctx.setLineDash([]);
|
|
108
|
+
if (options === null || options === void 0 ? void 0 : options.arrow) {
|
|
109
|
+
acapDrawOverlayArrowHead(ctx, sa, sb, css);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Stroke a world-space closed polyline (screen projection).
|
|
114
|
+
*
|
|
115
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
116
|
+
* @param view - View for world → screen.
|
|
117
|
+
* @param points - World vertices in order.
|
|
118
|
+
* @param color - CSS or AcCmColor stroke color.
|
|
119
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
120
|
+
* @param options - Optional dash / closePath.
|
|
121
|
+
*/
|
|
122
|
+
export function acapStrokeLivePolyline(ctx, view, points, color, lineWidth, options) {
|
|
123
|
+
if (points.length < 2)
|
|
124
|
+
return;
|
|
125
|
+
var css = typeof color === 'string' ? color : acapCssColor(color);
|
|
126
|
+
var screen = points.map(function (p) { return view.worldToScreen(p); });
|
|
127
|
+
ctx.strokeStyle = css;
|
|
128
|
+
ctx.lineWidth = lineWidth;
|
|
129
|
+
if (options === null || options === void 0 ? void 0 : options.dashed)
|
|
130
|
+
ctx.setLineDash([8, 5]);
|
|
131
|
+
ctx.beginPath();
|
|
132
|
+
ctx.moveTo(screen[0].x, screen[0].y);
|
|
133
|
+
for (var i = 1; i < screen.length; i++) {
|
|
134
|
+
ctx.lineTo(screen[i].x, screen[i].y);
|
|
135
|
+
}
|
|
136
|
+
if (options === null || options === void 0 ? void 0 : options.closed)
|
|
137
|
+
ctx.closePath();
|
|
138
|
+
ctx.stroke();
|
|
139
|
+
if (options === null || options === void 0 ? void 0 : options.dashed)
|
|
140
|
+
ctx.setLineDash([]);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Stroke a world-space circle as a screen-space arc.
|
|
144
|
+
*
|
|
145
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
146
|
+
* @param view - View for world → screen.
|
|
147
|
+
* @param center - Circle center (world).
|
|
148
|
+
* @param radius - Circle radius (world).
|
|
149
|
+
* @param color - CSS or AcCmColor stroke color.
|
|
150
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
151
|
+
*/
|
|
152
|
+
export function acapStrokeLiveCircle(ctx, view, center, radius, color, lineWidth) {
|
|
153
|
+
if (radius <= 0)
|
|
154
|
+
return;
|
|
155
|
+
var css = typeof color === 'string' ? color : acapCssColor(color);
|
|
156
|
+
var sc = view.worldToScreen(center);
|
|
157
|
+
var rim = view.worldToScreen({ x: center.x + radius, y: center.y });
|
|
158
|
+
var screenR = Math.hypot(rim.x - sc.x, rim.y - sc.y);
|
|
159
|
+
ctx.strokeStyle = css;
|
|
160
|
+
ctx.lineWidth = lineWidth;
|
|
161
|
+
ctx.beginPath();
|
|
162
|
+
ctx.arc(sc.x, sc.y, screenR, 0, Math.PI * 2);
|
|
163
|
+
ctx.stroke();
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Draw a highlight rectangle preview (matches committed highlight look).
|
|
167
|
+
*
|
|
168
|
+
* @param ctx - Canvas context in CSS pixels.
|
|
169
|
+
* @param view - View for world → screen.
|
|
170
|
+
* @param corner1 - One corner (world).
|
|
171
|
+
* @param corner2 - Opposite corner (world).
|
|
172
|
+
* @param color - CSS color string.
|
|
173
|
+
* @param lineWidth - Outline width in CSS pixels.
|
|
174
|
+
*/
|
|
175
|
+
export function acapFillLiveHighlight(ctx, view, corner1, corner2, color, lineWidth) {
|
|
176
|
+
acapDrawOverlayHighlight(ctx, view.worldToScreen(corner1), view.worldToScreen(corner2), color, lineWidth);
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Axis-aligned rectangle corners as a closed polyline (world).
|
|
180
|
+
*
|
|
181
|
+
* @param first - One corner.
|
|
182
|
+
* @param second - Opposite corner.
|
|
183
|
+
* @returns Four corners in clockwise order from `first`'s x/y mix.
|
|
184
|
+
*/
|
|
185
|
+
export function acapLiveRectCorners(first, second) {
|
|
186
|
+
return [
|
|
187
|
+
{ x: first.x, y: first.y },
|
|
188
|
+
{ x: second.x, y: first.y },
|
|
189
|
+
{ x: second.x, y: second.y },
|
|
190
|
+
{ x: first.x, y: second.y }
|
|
191
|
+
];
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=AcApHtmlLivePreview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApHtmlLivePreview.js","sourceRoot":"","sources":["../../../src/command/overlay/AcApHtmlLivePreview.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared canvas helpers for markup / measure overlay drawing.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Fit a canvas to its container and return a 2D context cleared for this frame.
|
|
6
|
+
*
|
|
7
|
+
* Resizes CSS and buffer dimensions (honoring devicePixelRatio) only when they
|
|
8
|
+
* change, then clears the viewport in CSS pixel space.
|
|
9
|
+
*
|
|
10
|
+
* @param canvas - Target canvas element owned by an overlay.
|
|
11
|
+
* @param container - View container used for size measurement.
|
|
12
|
+
* @returns A 2D context ready to draw, or `null` if unavailable.
|
|
13
|
+
*/
|
|
14
|
+
export declare function acapFitOverlayCanvas(canvas: HTMLCanvasElement, container: HTMLElement): CanvasRenderingContext2D | null;
|
|
15
|
+
/**
|
|
16
|
+
* Draw a filled arrow head at `to`, pointing along `from` → `to`.
|
|
17
|
+
*
|
|
18
|
+
* @param ctx - Canvas 2D context (CSS pixel space).
|
|
19
|
+
* @param from - Tail / direction reference in screen space.
|
|
20
|
+
* @param to - Arrow tip in screen space.
|
|
21
|
+
* @param color - CSS fill color.
|
|
22
|
+
*/
|
|
23
|
+
export declare function acapDrawOverlayArrowHead(ctx: CanvasRenderingContext2D, from: {
|
|
24
|
+
x: number;
|
|
25
|
+
y: number;
|
|
26
|
+
}, to: {
|
|
27
|
+
x: number;
|
|
28
|
+
y: number;
|
|
29
|
+
}, color: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Draw a leader segment, optionally with an arrow head at the tip.
|
|
32
|
+
*
|
|
33
|
+
* @param ctx - Canvas 2D context (CSS pixel space).
|
|
34
|
+
* @param tip - Leader tip (arrow end when `withArrow` is true).
|
|
35
|
+
* @param anchor - Bubble / opposite end of the leader.
|
|
36
|
+
* @param color - CSS stroke / fill color.
|
|
37
|
+
* @param withArrow - When `true`, draws an arrow head at `tip`.
|
|
38
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
39
|
+
*/
|
|
40
|
+
export declare function acapDrawOverlayLeader(ctx: CanvasRenderingContext2D, tip: {
|
|
41
|
+
x: number;
|
|
42
|
+
y: number;
|
|
43
|
+
}, anchor: {
|
|
44
|
+
x: number;
|
|
45
|
+
y: number;
|
|
46
|
+
}, color: string, withArrow?: boolean, lineWidth?: number): void;
|
|
47
|
+
/**
|
|
48
|
+
* Draw a translucent highlight rectangle with stroke.
|
|
49
|
+
*
|
|
50
|
+
* @param ctx - Canvas 2D context (CSS pixel space).
|
|
51
|
+
* @param a - One corner of the highlight AABB in screen space.
|
|
52
|
+
* @param b - Opposite corner of the highlight AABB in screen space.
|
|
53
|
+
* @param color - CSS fill / stroke color.
|
|
54
|
+
* @param lineWidth - Outline stroke width in CSS pixels.
|
|
55
|
+
*/
|
|
56
|
+
export declare function acapDrawOverlayHighlight(ctx: CanvasRenderingContext2D, a: {
|
|
57
|
+
x: number;
|
|
58
|
+
y: number;
|
|
59
|
+
}, b: {
|
|
60
|
+
x: number;
|
|
61
|
+
y: number;
|
|
62
|
+
}, color: string, lineWidth?: number): void;
|
|
63
|
+
//# sourceMappingURL=AcApOverlayDrawUtil.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApOverlayDrawUtil.d.ts","sourceRoot":"","sources":["../../../src/command/overlay/AcApOverlayDrawUtil.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,WAAW,GACrB,wBAAwB,GAAG,IAAI,CAkBjC;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC9B,EAAE,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5B,KAAK,EAAE,MAAM,GACZ,IAAI,CAsBN;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,wBAAwB,EAC7B,GAAG,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7B,MAAM,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAChC,KAAK,EAAE,MAAM,EACb,SAAS,UAAO,EAChB,SAAS,SAAI,GACZ,IAAI,CAUN;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,wBAAwB,EAC7B,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3B,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3B,KAAK,EAAE,MAAM,EACb,SAAS,SAAM,GACd,IAAI,CAYN"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared canvas helpers for markup / measure overlay drawing.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Fit a canvas to its container and return a 2D context cleared for this frame.
|
|
6
|
+
*
|
|
7
|
+
* Resizes CSS and buffer dimensions (honoring devicePixelRatio) only when they
|
|
8
|
+
* change, then clears the viewport in CSS pixel space.
|
|
9
|
+
*
|
|
10
|
+
* @param canvas - Target canvas element owned by an overlay.
|
|
11
|
+
* @param container - View container used for size measurement.
|
|
12
|
+
* @returns A 2D context ready to draw, or `null` if unavailable.
|
|
13
|
+
*/
|
|
14
|
+
export function acapFitOverlayCanvas(canvas, container) {
|
|
15
|
+
var rect = container.getBoundingClientRect();
|
|
16
|
+
var dpr = window.devicePixelRatio || 1;
|
|
17
|
+
var cssWidth = "".concat(rect.width, "px");
|
|
18
|
+
var cssHeight = "".concat(rect.height, "px");
|
|
19
|
+
var bufferWidth = Math.max(1, Math.floor(rect.width * dpr));
|
|
20
|
+
var bufferHeight = Math.max(1, Math.floor(rect.height * dpr));
|
|
21
|
+
canvas.style.left = '0';
|
|
22
|
+
canvas.style.top = '0';
|
|
23
|
+
if (canvas.style.width !== cssWidth)
|
|
24
|
+
canvas.style.width = cssWidth;
|
|
25
|
+
if (canvas.style.height !== cssHeight)
|
|
26
|
+
canvas.style.height = cssHeight;
|
|
27
|
+
if (canvas.width !== bufferWidth)
|
|
28
|
+
canvas.width = bufferWidth;
|
|
29
|
+
if (canvas.height !== bufferHeight)
|
|
30
|
+
canvas.height = bufferHeight;
|
|
31
|
+
var ctx = canvas.getContext('2d');
|
|
32
|
+
if (!ctx)
|
|
33
|
+
return null;
|
|
34
|
+
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
35
|
+
ctx.clearRect(0, 0, rect.width, rect.height);
|
|
36
|
+
return ctx;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Draw a filled arrow head at `to`, pointing along `from` → `to`.
|
|
40
|
+
*
|
|
41
|
+
* @param ctx - Canvas 2D context (CSS pixel space).
|
|
42
|
+
* @param from - Tail / direction reference in screen space.
|
|
43
|
+
* @param to - Arrow tip in screen space.
|
|
44
|
+
* @param color - CSS fill color.
|
|
45
|
+
*/
|
|
46
|
+
export function acapDrawOverlayArrowHead(ctx, from, to, color) {
|
|
47
|
+
var dx = to.x - from.x;
|
|
48
|
+
var dy = to.y - from.y;
|
|
49
|
+
var len = Math.hypot(dx, dy) || 1;
|
|
50
|
+
var ux = dx / len;
|
|
51
|
+
var uy = dy / len;
|
|
52
|
+
var size = 12;
|
|
53
|
+
var left = {
|
|
54
|
+
x: to.x - ux * size - uy * size * 0.45,
|
|
55
|
+
y: to.y - uy * size + ux * size * 0.45
|
|
56
|
+
};
|
|
57
|
+
var right = {
|
|
58
|
+
x: to.x - ux * size + uy * size * 0.45,
|
|
59
|
+
y: to.y - uy * size - ux * size * 0.45
|
|
60
|
+
};
|
|
61
|
+
ctx.fillStyle = color;
|
|
62
|
+
ctx.beginPath();
|
|
63
|
+
ctx.moveTo(to.x, to.y);
|
|
64
|
+
ctx.lineTo(left.x, left.y);
|
|
65
|
+
ctx.lineTo(right.x, right.y);
|
|
66
|
+
ctx.closePath();
|
|
67
|
+
ctx.fill();
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Draw a leader segment, optionally with an arrow head at the tip.
|
|
71
|
+
*
|
|
72
|
+
* @param ctx - Canvas 2D context (CSS pixel space).
|
|
73
|
+
* @param tip - Leader tip (arrow end when `withArrow` is true).
|
|
74
|
+
* @param anchor - Bubble / opposite end of the leader.
|
|
75
|
+
* @param color - CSS stroke / fill color.
|
|
76
|
+
* @param withArrow - When `true`, draws an arrow head at `tip`.
|
|
77
|
+
* @param lineWidth - Stroke width in CSS pixels.
|
|
78
|
+
*/
|
|
79
|
+
export function acapDrawOverlayLeader(ctx, tip, anchor, color, withArrow, lineWidth) {
|
|
80
|
+
if (withArrow === void 0) { withArrow = true; }
|
|
81
|
+
if (lineWidth === void 0) { lineWidth = 2; }
|
|
82
|
+
ctx.strokeStyle = color;
|
|
83
|
+
ctx.lineWidth = lineWidth;
|
|
84
|
+
ctx.beginPath();
|
|
85
|
+
ctx.moveTo(tip.x, tip.y);
|
|
86
|
+
ctx.lineTo(anchor.x, anchor.y);
|
|
87
|
+
ctx.stroke();
|
|
88
|
+
if (withArrow) {
|
|
89
|
+
acapDrawOverlayArrowHead(ctx, anchor, tip, color);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Draw a translucent highlight rectangle with stroke.
|
|
94
|
+
*
|
|
95
|
+
* @param ctx - Canvas 2D context (CSS pixel space).
|
|
96
|
+
* @param a - One corner of the highlight AABB in screen space.
|
|
97
|
+
* @param b - Opposite corner of the highlight AABB in screen space.
|
|
98
|
+
* @param color - CSS fill / stroke color.
|
|
99
|
+
* @param lineWidth - Outline stroke width in CSS pixels.
|
|
100
|
+
*/
|
|
101
|
+
export function acapDrawOverlayHighlight(ctx, a, b, color, lineWidth) {
|
|
102
|
+
if (lineWidth === void 0) { lineWidth = 1.5; }
|
|
103
|
+
var x = Math.min(a.x, b.x);
|
|
104
|
+
var y = Math.min(a.y, b.y);
|
|
105
|
+
var w = Math.abs(a.x - b.x);
|
|
106
|
+
var h = Math.abs(a.y - b.y);
|
|
107
|
+
ctx.fillStyle = color;
|
|
108
|
+
ctx.globalAlpha = 0.28;
|
|
109
|
+
ctx.fillRect(x, y, w, h);
|
|
110
|
+
ctx.globalAlpha = 1;
|
|
111
|
+
ctx.strokeStyle = color;
|
|
112
|
+
ctx.lineWidth = lineWidth;
|
|
113
|
+
ctx.strokeRect(x, y, w, h);
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=AcApOverlayDrawUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApOverlayDrawUtil.js","sourceRoot":"","sources":["../../../src/command/overlay/AcApOverlayDrawUtil.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { AcDbObjectId, AcGePoint3d, AcGePoint3dLike, AcGeVector3dLike } from '@mlightcad/data-model';
|
|
2
|
+
import type { AcTrHtmlGroup } from '@mlightcad/three-renderer';
|
|
3
|
+
import type { AcTrView2d } from '../../view';
|
|
4
|
+
/**
|
|
5
|
+
* Result of building one overlay's visuals (HTML group + optional CAD extras).
|
|
6
|
+
*
|
|
7
|
+
* The framework publishes the group and wires selection; the entity owns
|
|
8
|
+
* {@link dispose} and optional deferred {@link bindGrips}.
|
|
9
|
+
*/
|
|
10
|
+
export interface AcApOverlayWorldDrawResult {
|
|
11
|
+
/** Selectable HTML group that owns leaf overlays and canvases. */
|
|
12
|
+
group: AcTrHtmlGroup;
|
|
13
|
+
/** CAD transient entity ids owned by this overlay (for highlight / visibility). */
|
|
14
|
+
entityIds: AcDbObjectId[];
|
|
15
|
+
/** Tear down listeners and non-HTML resources; HTML is disposed with the group. */
|
|
16
|
+
dispose: () => void;
|
|
17
|
+
/**
|
|
18
|
+
* Bind grip pointer handlers after the group is added to the HTML transient
|
|
19
|
+
* manager (avoids racing manager attach).
|
|
20
|
+
*/
|
|
21
|
+
bindGrips?: () => void;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Domain overlay entity protocol (markup / measure), analogous to AcDbEntity
|
|
25
|
+
* template methods — not an {@link AcTrHtmlElement} subclass.
|
|
26
|
+
*
|
|
27
|
+
* Leaves such as Dot / Badge / Callout remain render primitives; concrete
|
|
28
|
+
* overlay types compose them inside {@link subWorldDraw}.
|
|
29
|
+
*
|
|
30
|
+
* Persistable overlays also implement
|
|
31
|
+
* {@link import('./AcApOverlaySerializable').AcApOverlaySerializable} with a
|
|
32
|
+
* domain record type; deserialize via domain factories, not this base class.
|
|
33
|
+
*/
|
|
34
|
+
export declare abstract class AcApOverlayEntity {
|
|
35
|
+
/**
|
|
36
|
+
* Stable overlay identifier used as the HTML group id and store key.
|
|
37
|
+
*/
|
|
38
|
+
abstract get id(): string;
|
|
39
|
+
/**
|
|
40
|
+
* Framework entry: builds visuals via {@link subWorldDraw}.
|
|
41
|
+
* Subclasses should override {@link subWorldDraw}, not this method.
|
|
42
|
+
*
|
|
43
|
+
* @param view - Active 2D view that hosts HTML / CAD transients.
|
|
44
|
+
* @returns Built group, entity ids, and cleanup hooks.
|
|
45
|
+
*/
|
|
46
|
+
worldDraw(view: AcTrView2d): AcApOverlayWorldDrawResult;
|
|
47
|
+
/**
|
|
48
|
+
* Emit HTML + CAD + canvas visuals for this overlay.
|
|
49
|
+
*
|
|
50
|
+
* @param view - Active 2D view that hosts HTML / CAD transients.
|
|
51
|
+
* @returns Built group, entity ids, and cleanup hooks.
|
|
52
|
+
*/
|
|
53
|
+
protected abstract subWorldDraw(view: AcTrView2d): AcApOverlayWorldDrawResult;
|
|
54
|
+
/**
|
|
55
|
+
* Grip points in WCS.
|
|
56
|
+
*
|
|
57
|
+
* @returns Grip locations; empty array means no move grips.
|
|
58
|
+
*/
|
|
59
|
+
subGetGripPoints(): AcGePoint3d[];
|
|
60
|
+
/**
|
|
61
|
+
* Apply a grip edit. Default is a no-op; subclasses mutate internal geometry.
|
|
62
|
+
*
|
|
63
|
+
* @param _indices - Zero-based grip indices to move.
|
|
64
|
+
* @param _offset - World-space translation applied to each selected grip.
|
|
65
|
+
* @returns This entity for chaining.
|
|
66
|
+
*/
|
|
67
|
+
subMoveGripPointsAt(_indices: number[], _offset: AcGeVector3dLike): this;
|
|
68
|
+
/**
|
|
69
|
+
* Screen-space stroke / fill hit test (not HTML capsules).
|
|
70
|
+
*
|
|
71
|
+
* @param _canvas - Pick location in canvas / CSS pixel space.
|
|
72
|
+
* @param _worldToScreen - Converts a world XY point to canvas space.
|
|
73
|
+
* @param _threshold - Hit slop in pixels.
|
|
74
|
+
* @returns `true` when the canvas pick hits this overlay's drawn geometry.
|
|
75
|
+
*/
|
|
76
|
+
hitTest(_canvas: {
|
|
77
|
+
x: number;
|
|
78
|
+
y: number;
|
|
79
|
+
}, _worldToScreen: (point: {
|
|
80
|
+
x: number;
|
|
81
|
+
y: number;
|
|
82
|
+
}) => {
|
|
83
|
+
x: number;
|
|
84
|
+
y: number;
|
|
85
|
+
}, _threshold: number): boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Primary world point for focus / zoom.
|
|
88
|
+
*
|
|
89
|
+
* @returns Anchor point, or `undefined` when the overlay has no focus point.
|
|
90
|
+
*/
|
|
91
|
+
primaryPoint(): AcGePoint3dLike | undefined;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=AcApOverlayEntity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApOverlayEntity.d.ts","sourceRoot":"","sources":["../../../src/command/overlay/AcApOverlayEntity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,gBAAgB,EACjB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,kEAAkE;IAClE,KAAK,EAAE,aAAa,CAAA;IACpB,mFAAmF;IACnF,SAAS,EAAE,YAAY,EAAE,CAAA;IACzB,mFAAmF;IACnF,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED;;;;;;;;;;GAUG;AACH,8BAAsB,iBAAiB;IACrC;;OAEG;IACH,QAAQ,KAAK,EAAE,IAAI,MAAM,CAAA;IAEzB;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,0BAA0B;IAIvD;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,IAAI,EAAE,UAAU,GACf,0BAA0B;IAE7B;;;;OAIG;IACH,gBAAgB,IAAI,WAAW,EAAE;IAIjC;;;;;;OAMG;IACH,mBAAmB,CACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,EAAE,gBAAgB,GACxB,IAAI;IAIP;;;;;;;OAOG;IACH,OAAO,CACL,OAAO,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EACjC,cAAc,EAAE,CAAC,KAAK,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAC7E,UAAU,EAAE,MAAM,GACjB,OAAO;IAIV;;;;OAIG;IACH,YAAY,IAAI,eAAe,GAAG,SAAS;CAG5C"}
|