@mlightcad/data-model 1.11.3 → 1.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -12
- package/dist/data-model.cjs +15 -12
- package/lib/acis/AcDbAcisDecrypt.d.ts +51 -0
- package/lib/acis/AcDbAcisDecrypt.d.ts.map +1 -0
- package/lib/acis/AcDbAcisDecrypt.js +98 -0
- package/lib/acis/AcDbAcisDecrypt.js.map +1 -0
- package/lib/acis/index.d.ts +1 -0
- package/lib/acis/index.d.ts.map +1 -1
- package/lib/acis/index.js +1 -0
- package/lib/acis/index.js.map +1 -1
- package/lib/base/AcDbDxfFiler.d.ts +140 -4
- package/lib/base/AcDbDxfFiler.d.ts.map +1 -1
- package/lib/base/AcDbDxfFiler.js +690 -9
- package/lib/base/AcDbDxfFiler.js.map +1 -1
- package/lib/base/AcDbDxfGroupCodeTypes.d.ts +12 -0
- package/lib/base/AcDbDxfGroupCodeTypes.d.ts.map +1 -0
- package/lib/base/AcDbDxfGroupCodeTypes.js +96 -0
- package/lib/base/AcDbDxfGroupCodeTypes.js.map +1 -0
- package/lib/base/AcDbDxfPair.d.ts +38 -0
- package/lib/base/AcDbDxfPair.d.ts.map +1 -0
- package/lib/base/AcDbDxfPair.js +2 -0
- package/lib/base/AcDbDxfPair.js.map +1 -0
- package/lib/base/AcDbDxfPairReader.d.ts +65 -0
- package/lib/base/AcDbDxfPairReader.d.ts.map +1 -0
- package/lib/base/AcDbDxfPairReader.js +539 -0
- package/lib/base/AcDbDxfPairReader.js.map +1 -0
- package/lib/base/AcDbDxfStringChunks.d.ts +41 -0
- package/lib/base/AcDbDxfStringChunks.d.ts.map +1 -0
- package/lib/base/AcDbDxfStringChunks.js +121 -0
- package/lib/base/AcDbDxfStringChunks.js.map +1 -0
- package/lib/base/AcDbObject.d.ts +48 -0
- package/lib/base/AcDbObject.d.ts.map +1 -1
- package/lib/base/AcDbObject.js +166 -17
- package/lib/base/AcDbObject.js.map +1 -1
- package/lib/base/index.d.ts +10 -3
- package/lib/base/index.d.ts.map +1 -1
- package/lib/base/index.js +5 -2
- package/lib/base/index.js.map +1 -1
- package/lib/converter/AcDbBatchProcessing.d.ts +2 -2
- package/lib/converter/AcDbBatchProcessing.d.ts.map +1 -1
- package/lib/converter/AcDbBatchProcessing.js +15 -16
- package/lib/converter/AcDbBatchProcessing.js.map +1 -1
- package/lib/converter/AcDbFontNameCollector.d.ts +4 -0
- package/lib/converter/AcDbFontNameCollector.d.ts.map +1 -1
- package/lib/converter/AcDbFontNameCollector.js +6 -0
- package/lib/converter/AcDbFontNameCollector.js.map +1 -1
- package/lib/database/AcDbBlockTableRecord.d.ts +18 -2
- package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbBlockTableRecord.js +67 -2
- package/lib/database/AcDbBlockTableRecord.js.map +1 -1
- package/lib/database/AcDbDatabase.d.ts +55 -8
- package/lib/database/AcDbDatabase.d.ts.map +1 -1
- package/lib/database/AcDbDatabase.js +385 -87
- package/lib/database/AcDbDatabase.js.map +1 -1
- package/lib/database/AcDbDatabaseConverterManager.d.ts +10 -0
- package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -1
- package/lib/database/AcDbDatabaseConverterManager.js +12 -0
- package/lib/database/AcDbDatabaseConverterManager.js.map +1 -1
- package/lib/database/AcDbDimStyleTableRecord.d.ts +9 -0
- package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbDimStyleTableRecord.js +277 -0
- package/lib/database/AcDbDimStyleTableRecord.js.map +1 -1
- package/lib/database/AcDbDwgVersion.d.ts +37 -0
- package/lib/database/AcDbDwgVersion.d.ts.map +1 -1
- package/lib/database/AcDbDwgVersion.js +31 -6
- package/lib/database/AcDbDwgVersion.js.map +1 -1
- package/lib/database/AcDbLayerTableRecord.d.ts +1 -0
- package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbLayerTableRecord.js +52 -1
- package/lib/database/AcDbLayerTableRecord.js.map +1 -1
- package/lib/database/AcDbLinetypeTableRecord.d.ts +1 -0
- package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbLinetypeTableRecord.js +60 -0
- package/lib/database/AcDbLinetypeTableRecord.js.map +1 -1
- package/lib/database/AcDbRegAppTableRecord.d.ts +1 -0
- package/lib/database/AcDbRegAppTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbRegAppTableRecord.js +26 -0
- package/lib/database/AcDbRegAppTableRecord.js.map +1 -1
- package/lib/database/AcDbSysVarManager.d.ts.map +1 -1
- package/lib/database/AcDbSysVarManager.js +11 -0
- package/lib/database/AcDbSysVarManager.js.map +1 -1
- package/lib/database/AcDbSystemVariables.d.ts +9 -1
- package/lib/database/AcDbSystemVariables.d.ts.map +1 -1
- package/lib/database/AcDbSystemVariables.js +8 -0
- package/lib/database/AcDbSystemVariables.js.map +1 -1
- package/lib/database/AcDbTextStyleTableRecord.d.ts +9 -0
- package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbTextStyleTableRecord.js +101 -0
- package/lib/database/AcDbTextStyleTableRecord.js.map +1 -1
- package/lib/database/AcDbUcsTable.d.ts +15 -0
- package/lib/database/AcDbUcsTable.d.ts.map +1 -0
- package/lib/database/AcDbUcsTable.js +33 -0
- package/lib/database/AcDbUcsTable.js.map +1 -0
- package/lib/database/AcDbUcsTableRecord.d.ts +75 -0
- package/lib/database/AcDbUcsTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbUcsTableRecord.js +240 -0
- package/lib/database/AcDbUcsTableRecord.js.map +1 -0
- package/lib/database/AcDbViewTableRecord.d.ts +9 -0
- package/lib/database/AcDbViewTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbViewTableRecord.js +148 -0
- package/lib/database/AcDbViewTableRecord.js.map +1 -1
- package/lib/database/AcDbViewportTableRecord.d.ts +8 -0
- package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -1
- package/lib/database/AcDbViewportTableRecord.js +253 -1
- package/lib/database/AcDbViewportTableRecord.js.map +1 -1
- package/lib/database/index.d.ts +4 -1
- package/lib/database/index.d.ts.map +1 -1
- package/lib/database/index.js +2 -0
- package/lib/database/index.js.map +1 -1
- package/lib/dxf/AcDbDxfAcdsDataReader.d.ts +25 -0
- package/lib/dxf/AcDbDxfAcdsDataReader.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfAcdsDataReader.js +98 -0
- package/lib/dxf/AcDbDxfAcdsDataReader.js.map +1 -0
- package/lib/dxf/AcDbDxfDimensionAssembler.d.ts +10 -0
- package/lib/dxf/AcDbDxfDimensionAssembler.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfDimensionAssembler.js +149 -0
- package/lib/dxf/AcDbDxfDimensionAssembler.js.map +1 -0
- package/lib/dxf/AcDbDxfDocumentReader.d.ts +105 -0
- package/lib/dxf/AcDbDxfDocumentReader.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfDocumentReader.js +1093 -0
- package/lib/dxf/AcDbDxfDocumentReader.js.map +1 -0
- package/lib/dxf/AcDbDxfEntityFactory.d.ts +14 -0
- package/lib/dxf/AcDbDxfEntityFactory.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfEntityFactory.js +147 -0
- package/lib/dxf/AcDbDxfEntityFactory.js.map +1 -0
- package/lib/dxf/AcDbDxfHeaderReader.d.ts +9 -0
- package/lib/dxf/AcDbDxfHeaderReader.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfHeaderReader.js +248 -0
- package/lib/dxf/AcDbDxfHeaderReader.js.map +1 -0
- package/lib/dxf/AcDbDxfObjectsReader.d.ts +38 -0
- package/lib/dxf/AcDbDxfObjectsReader.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfObjectsReader.js +533 -0
- package/lib/dxf/AcDbDxfObjectsReader.js.map +1 -0
- package/lib/dxf/AcDbDxfPairArrayReader.d.ts +27 -0
- package/lib/dxf/AcDbDxfPairArrayReader.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfPairArrayReader.js +69 -0
- package/lib/dxf/AcDbDxfPairArrayReader.js.map +1 -0
- package/lib/dxf/AcDbDxfPolylineAssembler.d.ts +11 -0
- package/lib/dxf/AcDbDxfPolylineAssembler.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfPolylineAssembler.js +318 -0
- package/lib/dxf/AcDbDxfPolylineAssembler.js.map +1 -0
- package/lib/dxf/AcDbDxfVersionCaps.d.ts +8 -0
- package/lib/dxf/AcDbDxfVersionCaps.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfVersionCaps.js +18 -0
- package/lib/dxf/AcDbDxfVersionCaps.js.map +1 -0
- package/lib/dxf/AcDbNativeDxfConverter.d.ts +31 -0
- package/lib/dxf/AcDbNativeDxfConverter.d.ts.map +1 -0
- package/lib/dxf/AcDbNativeDxfConverter.js +257 -0
- package/lib/dxf/AcDbNativeDxfConverter.js.map +1 -0
- package/lib/dxf/index.d.ts +12 -0
- package/lib/dxf/index.d.ts.map +1 -0
- package/lib/dxf/index.js +9 -0
- package/lib/dxf/index.js.map +1 -0
- package/lib/entity/AcDb3dSolid.d.ts +43 -0
- package/lib/entity/AcDb3dSolid.d.ts.map +1 -1
- package/lib/entity/AcDb3dSolid.js +154 -16
- package/lib/entity/AcDb3dSolid.js.map +1 -1
- package/lib/entity/AcDbArc.d.ts +9 -0
- package/lib/entity/AcDbArc.d.ts.map +1 -1
- package/lib/entity/AcDbArc.js +107 -3
- package/lib/entity/AcDbArc.js.map +1 -1
- package/lib/entity/AcDbAttribute.d.ts +1 -0
- package/lib/entity/AcDbAttribute.d.ts.map +1 -1
- package/lib/entity/AcDbAttribute.js +44 -0
- package/lib/entity/AcDbAttribute.js.map +1 -1
- package/lib/entity/AcDbAttributeDefinition.d.ts +1 -0
- package/lib/entity/AcDbAttributeDefinition.d.ts.map +1 -1
- package/lib/entity/AcDbAttributeDefinition.js +47 -0
- package/lib/entity/AcDbAttributeDefinition.js.map +1 -1
- package/lib/entity/AcDbBlockReference.d.ts +26 -0
- package/lib/entity/AcDbBlockReference.d.ts.map +1 -1
- package/lib/entity/AcDbBlockReference.js +185 -5
- package/lib/entity/AcDbBlockReference.js.map +1 -1
- package/lib/entity/AcDbCircle.d.ts +9 -0
- package/lib/entity/AcDbCircle.d.ts.map +1 -1
- package/lib/entity/AcDbCircle.js +73 -1
- package/lib/entity/AcDbCircle.js.map +1 -1
- package/lib/entity/AcDbEllipse.d.ts +2 -0
- package/lib/entity/AcDbEllipse.d.ts.map +1 -1
- package/lib/entity/AcDbEllipse.js +71 -0
- package/lib/entity/AcDbEllipse.js.map +1 -1
- package/lib/entity/AcDbEntity.d.ts +12 -0
- package/lib/entity/AcDbEntity.d.ts.map +1 -1
- package/lib/entity/AcDbEntity.js +97 -17
- package/lib/entity/AcDbEntity.js.map +1 -1
- package/lib/entity/AcDbFace.d.ts +1 -0
- package/lib/entity/AcDbFace.d.ts.map +1 -1
- package/lib/entity/AcDbFace.js +49 -1
- package/lib/entity/AcDbFace.js.map +1 -1
- package/lib/entity/AcDbFcf.d.ts +1 -0
- package/lib/entity/AcDbFcf.d.ts.map +1 -1
- package/lib/entity/AcDbFcf.js +71 -0
- package/lib/entity/AcDbFcf.js.map +1 -1
- package/lib/entity/AcDbHatch.d.ts +17 -0
- package/lib/entity/AcDbHatch.d.ts.map +1 -1
- package/lib/entity/AcDbHatch.js +629 -4
- package/lib/entity/AcDbHatch.js.map +1 -1
- package/lib/entity/AcDbLeader.d.ts +1 -0
- package/lib/entity/AcDbLeader.d.ts.map +1 -1
- package/lib/entity/AcDbLeader.js +135 -0
- package/lib/entity/AcDbLeader.js.map +1 -1
- package/lib/entity/AcDbLine.d.ts +16 -1
- package/lib/entity/AcDbLine.d.ts.map +1 -1
- package/lib/entity/AcDbLine.js +102 -3
- package/lib/entity/AcDbLine.js.map +1 -1
- package/lib/entity/AcDbMLeader.d.ts +22 -0
- package/lib/entity/AcDbMLeader.d.ts.map +1 -1
- package/lib/entity/AcDbMLeader.js +871 -11
- package/lib/entity/AcDbMLeader.js.map +1 -1
- package/lib/entity/AcDbMLine.d.ts +1 -0
- package/lib/entity/AcDbMLine.d.ts.map +1 -1
- package/lib/entity/AcDbMLine.js +168 -0
- package/lib/entity/AcDbMLine.js.map +1 -1
- package/lib/entity/AcDbMText.d.ts +46 -1
- package/lib/entity/AcDbMText.d.ts.map +1 -1
- package/lib/entity/AcDbMText.js +278 -4
- package/lib/entity/AcDbMText.js.map +1 -1
- package/lib/entity/AcDbOle2Frame.d.ts +12 -0
- package/lib/entity/AcDbOle2Frame.d.ts.map +1 -1
- package/lib/entity/AcDbOle2Frame.js +103 -1
- package/lib/entity/AcDbOle2Frame.js.map +1 -1
- package/lib/entity/AcDbOleFrame.d.ts +1 -0
- package/lib/entity/AcDbOleFrame.d.ts.map +1 -1
- package/lib/entity/AcDbOleFrame.js +44 -1
- package/lib/entity/AcDbOleFrame.js.map +1 -1
- package/lib/entity/AcDbPoint.d.ts +27 -1
- package/lib/entity/AcDbPoint.d.ts.map +1 -1
- package/lib/entity/AcDbPoint.js +113 -2
- package/lib/entity/AcDbPoint.js.map +1 -1
- package/lib/entity/AcDbPolyline.d.ts +22 -1
- package/lib/entity/AcDbPolyline.d.ts.map +1 -1
- package/lib/entity/AcDbPolyline.js +195 -1
- package/lib/entity/AcDbPolyline.js.map +1 -1
- package/lib/entity/AcDbProxyEntity.d.ts +4 -2
- package/lib/entity/AcDbProxyEntity.d.ts.map +1 -1
- package/lib/entity/AcDbProxyEntity.js +55 -3
- package/lib/entity/AcDbProxyEntity.js.map +1 -1
- package/lib/entity/AcDbRasterImage.d.ts +16 -0
- package/lib/entity/AcDbRasterImage.d.ts.map +1 -1
- package/lib/entity/AcDbRasterImage.js +156 -0
- package/lib/entity/AcDbRasterImage.js.map +1 -1
- package/lib/entity/AcDbRay.d.ts +1 -0
- package/lib/entity/AcDbRay.d.ts.map +1 -1
- package/lib/entity/AcDbRay.js +42 -0
- package/lib/entity/AcDbRay.js.map +1 -1
- package/lib/entity/AcDbShape.d.ts +1 -0
- package/lib/entity/AcDbShape.d.ts.map +1 -1
- package/lib/entity/AcDbShape.js +76 -1
- package/lib/entity/AcDbShape.js.map +1 -1
- package/lib/entity/AcDbSpline.d.ts +23 -1
- package/lib/entity/AcDbSpline.d.ts.map +1 -1
- package/lib/entity/AcDbSpline.js +226 -1
- package/lib/entity/AcDbSpline.js.map +1 -1
- package/lib/entity/AcDbTable.d.ts +5 -0
- package/lib/entity/AcDbTable.d.ts.map +1 -1
- package/lib/entity/AcDbTable.js +265 -1
- package/lib/entity/AcDbTable.js.map +1 -1
- package/lib/entity/AcDbText.d.ts +25 -1
- package/lib/entity/AcDbText.d.ts.map +1 -1
- package/lib/entity/AcDbText.js +175 -1
- package/lib/entity/AcDbText.js.map +1 -1
- package/lib/entity/AcDbTextExtentsHelpers.d.ts +2 -2
- package/lib/entity/AcDbTextExtentsHelpers.js +3 -3
- package/lib/entity/AcDbTextExtentsHelpers.js.map +1 -1
- package/lib/entity/AcDbTrace.d.ts +9 -1
- package/lib/entity/AcDbTrace.d.ts.map +1 -1
- package/lib/entity/AcDbTrace.js +84 -5
- package/lib/entity/AcDbTrace.js.map +1 -1
- package/lib/entity/AcDbViewport.d.ts +156 -0
- package/lib/entity/AcDbViewport.d.ts.map +1 -1
- package/lib/entity/AcDbViewport.js +852 -1
- package/lib/entity/AcDbViewport.js.map +1 -1
- package/lib/entity/AcDbXline.d.ts +1 -0
- package/lib/entity/AcDbXline.d.ts.map +1 -1
- package/lib/entity/AcDbXline.js +42 -0
- package/lib/entity/AcDbXline.js.map +1 -1
- package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +1 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDb3PointAngularDimension.js +163 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -1
- package/lib/entity/dimension/AcDbAlignedDimension.d.ts +2 -0
- package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDbAlignedDimension.js +109 -2
- package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -1
- package/lib/entity/dimension/AcDbArcDimension.d.ts +1 -0
- package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDbArcDimension.js +68 -0
- package/lib/entity/dimension/AcDbArcDimension.js.map +1 -1
- package/lib/entity/dimension/AcDbDiametricDimension.d.ts +1 -0
- package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDbDiametricDimension.js +77 -0
- package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -1
- package/lib/entity/dimension/AcDbDimension.d.ts +50 -1
- package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDbDimension.js +176 -5
- package/lib/entity/dimension/AcDbDimension.js.map +1 -1
- package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +1 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDbOrdinateDimension.js +46 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -1
- package/lib/entity/dimension/AcDbRadialDimension.d.ts +1 -0
- package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -1
- package/lib/entity/dimension/AcDbRadialDimension.js +69 -0
- package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -1
- package/lib/index.d.ts +7 -6
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +5 -4
- package/lib/index.js.map +1 -1
- package/lib/ly/AcLyLayerFilterIO.d.ts.map +1 -1
- package/lib/ly/AcLyLayerFilterIO.js +5 -0
- package/lib/ly/AcLyLayerFilterIO.js.map +1 -1
- package/lib/misc/AcDbMemoryEstimator.d.ts.map +1 -1
- package/lib/misc/AcDbMemoryEstimator.js +3 -0
- package/lib/misc/AcDbMemoryEstimator.js.map +1 -1
- package/lib/misc/AcDbOle2FrameGeometry.d.ts +49 -0
- package/lib/misc/AcDbOle2FrameGeometry.d.ts.map +1 -0
- package/lib/misc/AcDbOle2FrameGeometry.js +66 -0
- package/lib/misc/AcDbOle2FrameGeometry.js.map +1 -0
- package/lib/misc/AcDbRenderingCache.d.ts +159 -8
- package/lib/misc/AcDbRenderingCache.d.ts.map +1 -1
- package/lib/misc/AcDbRenderingCache.js +460 -70
- package/lib/misc/AcDbRenderingCache.js.map +1 -1
- package/lib/misc/index.d.ts +4 -1
- package/lib/misc/index.d.ts.map +1 -1
- package/lib/misc/index.js +2 -1
- package/lib/misc/index.js.map +1 -1
- package/lib/misc/proxyGraphic/AcDbProxyGraphic.d.ts +6 -5
- package/lib/misc/proxyGraphic/AcDbProxyGraphic.d.ts.map +1 -1
- package/lib/misc/proxyGraphic/AcDbProxyGraphic.js +9 -36
- package/lib/misc/proxyGraphic/AcDbProxyGraphic.js.map +1 -1
- package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.d.ts +12 -0
- package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.d.ts.map +1 -1
- package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.js +54 -0
- package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.js.map +1 -1
- package/lib/misc/proxyGraphic/index.d.ts +1 -1
- package/lib/misc/proxyGraphic/index.d.ts.map +1 -1
- package/lib/misc/proxyGraphic/index.js +1 -1
- package/lib/misc/proxyGraphic/index.js.map +1 -1
- package/lib/object/AcDbDictionary.d.ts +7 -0
- package/lib/object/AcDbDictionary.d.ts.map +1 -1
- package/lib/object/AcDbDictionary.js +35 -0
- package/lib/object/AcDbDictionary.js.map +1 -1
- package/lib/object/AcDbFilter.d.ts +95 -0
- package/lib/object/AcDbFilter.d.ts.map +1 -1
- package/lib/object/AcDbFilter.js +256 -1
- package/lib/object/AcDbFilter.js.map +1 -1
- package/lib/object/AcDbGroup.d.ts +26 -0
- package/lib/object/AcDbGroup.d.ts.map +1 -0
- package/lib/object/AcDbGroup.js +171 -0
- package/lib/object/AcDbGroup.js.map +1 -0
- package/lib/object/AcDbIndex.d.ts +1 -0
- package/lib/object/AcDbIndex.d.ts.map +1 -1
- package/lib/object/AcDbIndex.js +23 -0
- package/lib/object/AcDbIndex.js.map +1 -1
- package/lib/object/AcDbLayerFilter.d.ts +1 -0
- package/lib/object/AcDbLayerFilter.d.ts.map +1 -1
- package/lib/object/AcDbLayerFilter.js +21 -0
- package/lib/object/AcDbLayerFilter.js.map +1 -1
- package/lib/object/AcDbLayerIndex.d.ts +1 -0
- package/lib/object/AcDbLayerIndex.d.ts.map +1 -1
- package/lib/object/AcDbLayerIndex.js +38 -0
- package/lib/object/AcDbLayerIndex.js.map +1 -1
- package/lib/object/AcDbMLeaderStyle.d.ts +1 -0
- package/lib/object/AcDbMLeaderStyle.d.ts.map +1 -1
- package/lib/object/AcDbMLeaderStyle.js +158 -1
- package/lib/object/AcDbMLeaderStyle.js.map +1 -1
- package/lib/object/AcDbMlineStyle.d.ts +2 -0
- package/lib/object/AcDbMlineStyle.d.ts.map +1 -1
- package/lib/object/AcDbMlineStyle.js +88 -0
- package/lib/object/AcDbMlineStyle.js.map +1 -1
- package/lib/object/AcDbRasterImageDef.d.ts +49 -0
- package/lib/object/AcDbRasterImageDef.d.ts.map +1 -1
- package/lib/object/AcDbRasterImageDef.js +136 -2
- package/lib/object/AcDbRasterImageDef.js.map +1 -1
- package/lib/object/AcDbSortentsTable.d.ts +14 -0
- package/lib/object/AcDbSortentsTable.d.ts.map +1 -0
- package/lib/object/AcDbSortentsTable.js +122 -0
- package/lib/object/AcDbSortentsTable.js.map +1 -0
- package/lib/object/AcDbXrecord.d.ts +8 -0
- package/lib/object/AcDbXrecord.d.ts.map +1 -1
- package/lib/object/AcDbXrecord.js +43 -2
- package/lib/object/AcDbXrecord.js.map +1 -1
- package/lib/object/index.d.ts +2 -0
- package/lib/object/index.d.ts.map +1 -1
- package/lib/object/index.js +2 -0
- package/lib/object/index.js.map +1 -1
- package/lib/object/layout/AcDbLayout.d.ts +60 -1
- package/lib/object/layout/AcDbLayout.d.ts.map +1 -1
- package/lib/object/layout/AcDbLayout.js +237 -1
- package/lib/object/layout/AcDbLayout.js.map +1 -1
- package/lib/object/layout/AcDbPlotSettings.d.ts +11 -0
- package/lib/object/layout/AcDbPlotSettings.d.ts.map +1 -1
- package/lib/object/layout/AcDbPlotSettings.js +143 -0
- package/lib/object/layout/AcDbPlotSettings.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfPolylineAssembler.d.ts","sourceRoot":"","sources":["../../src/dxf/AcDbDxfPolylineAssembler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAwCtD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAIxE"}
|
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
var __values = (this && this.__values) || function(o) {
|
|
2
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
3
|
+
if (m) return m.call(o);
|
|
4
|
+
if (o && typeof o.length === "number") return {
|
|
5
|
+
next: function () {
|
|
6
|
+
if (o && i >= o.length) o = void 0;
|
|
7
|
+
return { value: o && o[i++], done: !o };
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
11
|
+
};
|
|
12
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
13
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
14
|
+
if (!m) return o;
|
|
15
|
+
var i = m.call(o), r, ar = [], e;
|
|
16
|
+
try {
|
|
17
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
18
|
+
}
|
|
19
|
+
catch (error) { e = { error: error }; }
|
|
20
|
+
finally {
|
|
21
|
+
try {
|
|
22
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
23
|
+
}
|
|
24
|
+
finally { if (e) throw e.error; }
|
|
25
|
+
}
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
29
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
30
|
+
if (ar || !(i in from)) {
|
|
31
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
32
|
+
ar[i] = from[i];
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
36
|
+
};
|
|
37
|
+
import { AcDb2dPolyline, AcDbPoly2dType } from '../entity/AcDb2dPolyline';
|
|
38
|
+
import { AcDb3dPolyline, AcDbPoly3dType } from '../entity/AcDb3dPolyline';
|
|
39
|
+
import { AcDbPolyFaceMesh } from '../entity/AcDbPolyFaceMesh';
|
|
40
|
+
import { AcDbPolygonMesh } from '../entity/AcDbPolygonMesh';
|
|
41
|
+
/** DXF VERTEX flag: spline frame control point (skip when assembling path). */
|
|
42
|
+
var VERTEX_SPLINE_CONTROL_POINT = 16;
|
|
43
|
+
/** DXF VERTEX flag: polyface mesh vertex/face bit. */
|
|
44
|
+
var VERTEX_POLYFACE = 128;
|
|
45
|
+
/** DXF VERTEX flag: polyface mesh coordinate vertex (with POLYFACE). */
|
|
46
|
+
var VERTEX_POLYFACE_MESH_VERTEX = 64;
|
|
47
|
+
/** DXF POLYLINE smooth surface type (group 75). */
|
|
48
|
+
var SMOOTH_QUADRATIC = 5;
|
|
49
|
+
var SMOOTH_CUBIC = 6;
|
|
50
|
+
/**
|
|
51
|
+
* Reads a POLYLINE header + following VERTEX entities until SEQEND and builds
|
|
52
|
+
* the matching AcDb 2d/3d/mesh/polyface polyline (parity with
|
|
53
|
+
* `AcDbEntityConverter.convertPolyline`).
|
|
54
|
+
*
|
|
55
|
+
* Expects the filer positioned just after the `(0, POLYLINE)` pair.
|
|
56
|
+
*/
|
|
57
|
+
export function acdbDxfInPolyline(filer) {
|
|
58
|
+
var header = readPolylineHeader(filer);
|
|
59
|
+
var vertices = readPolylineVertices(filer);
|
|
60
|
+
return assemblePolyline(header, vertices);
|
|
61
|
+
}
|
|
62
|
+
function readPolylineHeader(filer) {
|
|
63
|
+
var header = {
|
|
64
|
+
layer: '0',
|
|
65
|
+
lineType: 'ByLayer',
|
|
66
|
+
flag: 0,
|
|
67
|
+
elevation: 0,
|
|
68
|
+
startWidth: 0,
|
|
69
|
+
endWidth: 0,
|
|
70
|
+
meshM: 0,
|
|
71
|
+
meshN: 0,
|
|
72
|
+
smoothType: 0
|
|
73
|
+
};
|
|
74
|
+
while (!filer.atEndOfObject && !filer.atEof && !filer.atExtendedData) {
|
|
75
|
+
var item = filer.readItem();
|
|
76
|
+
if (!item)
|
|
77
|
+
break;
|
|
78
|
+
var code = Number(item.code);
|
|
79
|
+
var n = Number(item.value);
|
|
80
|
+
switch (code) {
|
|
81
|
+
case 5:
|
|
82
|
+
header.objectId = String(item.value);
|
|
83
|
+
break;
|
|
84
|
+
case 330:
|
|
85
|
+
header.ownerId = String(item.value);
|
|
86
|
+
break;
|
|
87
|
+
case 8:
|
|
88
|
+
header.layer = String(item.value);
|
|
89
|
+
break;
|
|
90
|
+
case 6:
|
|
91
|
+
header.lineType = String(item.value);
|
|
92
|
+
break;
|
|
93
|
+
case 62:
|
|
94
|
+
header.colorIndex = n;
|
|
95
|
+
break;
|
|
96
|
+
case 420:
|
|
97
|
+
header.trueColor = n;
|
|
98
|
+
break;
|
|
99
|
+
case 70:
|
|
100
|
+
header.flag = n;
|
|
101
|
+
break;
|
|
102
|
+
case 10:
|
|
103
|
+
case 20:
|
|
104
|
+
// Dummy XY for legacy 2d polyline elevation plane.
|
|
105
|
+
break;
|
|
106
|
+
case 30:
|
|
107
|
+
header.elevation = n;
|
|
108
|
+
break;
|
|
109
|
+
case 40:
|
|
110
|
+
header.startWidth = n;
|
|
111
|
+
break;
|
|
112
|
+
case 41:
|
|
113
|
+
header.endWidth = n;
|
|
114
|
+
break;
|
|
115
|
+
case 71:
|
|
116
|
+
header.meshM = n;
|
|
117
|
+
break;
|
|
118
|
+
case 72:
|
|
119
|
+
header.meshN = n;
|
|
120
|
+
break;
|
|
121
|
+
case 75:
|
|
122
|
+
header.smoothType = n;
|
|
123
|
+
break;
|
|
124
|
+
case 100:
|
|
125
|
+
// AcDbEntity / AcDb2dPolyline / AcDb3dPolyline / mesh markers
|
|
126
|
+
break;
|
|
127
|
+
default:
|
|
128
|
+
// Tolerate unknown POLYLINE fields until the next object.
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return header;
|
|
133
|
+
}
|
|
134
|
+
function readPolylineVertices(filer) {
|
|
135
|
+
var vertices = [];
|
|
136
|
+
while (!filer.atEof) {
|
|
137
|
+
var peek = filer.peekItem();
|
|
138
|
+
if (!peek)
|
|
139
|
+
break;
|
|
140
|
+
if (Number(peek.code) !== 0) {
|
|
141
|
+
filer.readItem();
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
var name_1 = String(peek.value).toUpperCase();
|
|
145
|
+
if (name_1 === 'SEQEND') {
|
|
146
|
+
filer.readItem();
|
|
147
|
+
filer.skipToEndOfObject();
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
if (name_1 === 'ENDSEC' || name_1 === 'ENDBLK' || name_1 === 'EOF') {
|
|
151
|
+
break;
|
|
152
|
+
}
|
|
153
|
+
if (name_1 !== 'VERTEX') {
|
|
154
|
+
// Unexpected sibling — leave for the caller.
|
|
155
|
+
break;
|
|
156
|
+
}
|
|
157
|
+
filer.readItem(); // consume (0, VERTEX)
|
|
158
|
+
vertices.push(readOneVertex(filer));
|
|
159
|
+
}
|
|
160
|
+
return vertices;
|
|
161
|
+
}
|
|
162
|
+
function readOneVertex(filer) {
|
|
163
|
+
var vertex = {
|
|
164
|
+
x: 0,
|
|
165
|
+
y: 0,
|
|
166
|
+
z: 0,
|
|
167
|
+
bulge: 0,
|
|
168
|
+
flag: 0,
|
|
169
|
+
faces: []
|
|
170
|
+
};
|
|
171
|
+
// Face indices may arrive as 71–74 (AutoCAD) or 10–13 ints (our dxfOut).
|
|
172
|
+
var faceFrom71 = [];
|
|
173
|
+
var faceFrom10 = [];
|
|
174
|
+
while (!filer.atEndOfObject && !filer.atEof && !filer.atExtendedData) {
|
|
175
|
+
var item = filer.readItem();
|
|
176
|
+
if (!item)
|
|
177
|
+
break;
|
|
178
|
+
var code = Number(item.code);
|
|
179
|
+
var n = Number(item.value);
|
|
180
|
+
switch (code) {
|
|
181
|
+
case 10:
|
|
182
|
+
vertex.x = n;
|
|
183
|
+
faceFrom10[0] = Math.trunc(n);
|
|
184
|
+
break;
|
|
185
|
+
case 20:
|
|
186
|
+
vertex.y = n;
|
|
187
|
+
break;
|
|
188
|
+
case 30:
|
|
189
|
+
vertex.z = n;
|
|
190
|
+
break;
|
|
191
|
+
case 11:
|
|
192
|
+
faceFrom10[1] = Math.trunc(n);
|
|
193
|
+
break;
|
|
194
|
+
case 12:
|
|
195
|
+
faceFrom10[2] = Math.trunc(n);
|
|
196
|
+
break;
|
|
197
|
+
case 13:
|
|
198
|
+
faceFrom10[3] = Math.trunc(n);
|
|
199
|
+
break;
|
|
200
|
+
case 42:
|
|
201
|
+
vertex.bulge = n;
|
|
202
|
+
break;
|
|
203
|
+
case 70:
|
|
204
|
+
vertex.flag = n;
|
|
205
|
+
break;
|
|
206
|
+
case 71:
|
|
207
|
+
faceFrom71[0] = Math.trunc(n);
|
|
208
|
+
break;
|
|
209
|
+
case 72:
|
|
210
|
+
faceFrom71[1] = Math.trunc(n);
|
|
211
|
+
break;
|
|
212
|
+
case 73:
|
|
213
|
+
faceFrom71[2] = Math.trunc(n);
|
|
214
|
+
break;
|
|
215
|
+
case 74:
|
|
216
|
+
faceFrom71[3] = Math.trunc(n);
|
|
217
|
+
break;
|
|
218
|
+
default:
|
|
219
|
+
break;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
var isFace = !!(vertex.flag & VERTEX_POLYFACE) &&
|
|
223
|
+
!(vertex.flag & VERTEX_POLYFACE_MESH_VERTEX);
|
|
224
|
+
if (isFace) {
|
|
225
|
+
var source = faceFrom71.length > 0 ? faceFrom71 : faceFrom10;
|
|
226
|
+
vertex.faces = source.filter(function (v) { return v !== 0 && v != null; });
|
|
227
|
+
}
|
|
228
|
+
return vertex;
|
|
229
|
+
}
|
|
230
|
+
function assemblePolyline(header, rawVertices) {
|
|
231
|
+
var e_1, _a;
|
|
232
|
+
var isClosed = !!(header.flag & 0x01);
|
|
233
|
+
var is3dPolyline = !!(header.flag & 0x08);
|
|
234
|
+
var isPolygonMesh = !!(header.flag & 0x10);
|
|
235
|
+
var isPolyfaceMesh = !!(header.flag & 0x40);
|
|
236
|
+
var isClosedN = !!(header.flag & 0x20);
|
|
237
|
+
var vertices = [];
|
|
238
|
+
var bulges = [];
|
|
239
|
+
var faces = [];
|
|
240
|
+
try {
|
|
241
|
+
for (var rawVertices_1 = __values(rawVertices), rawVertices_1_1 = rawVertices_1.next(); !rawVertices_1_1.done; rawVertices_1_1 = rawVertices_1.next()) {
|
|
242
|
+
var vertex = rawVertices_1_1.value;
|
|
243
|
+
if (vertex.flag & VERTEX_SPLINE_CONTROL_POINT)
|
|
244
|
+
continue;
|
|
245
|
+
if (isPolyfaceMesh && vertex.flag & VERTEX_POLYFACE) {
|
|
246
|
+
if (!(vertex.flag & VERTEX_POLYFACE_MESH_VERTEX)) {
|
|
247
|
+
if (vertex.faces.length >= 3) {
|
|
248
|
+
faces.push(__spreadArray([], __read(vertex.faces), false));
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
else {
|
|
252
|
+
vertices.push({ x: vertex.x, y: vertex.y, z: vertex.z });
|
|
253
|
+
bulges.push(vertex.bulge);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
vertices.push({ x: vertex.x, y: vertex.y, z: vertex.z });
|
|
258
|
+
bulges.push(vertex.bulge);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
263
|
+
finally {
|
|
264
|
+
try {
|
|
265
|
+
if (rawVertices_1_1 && !rawVertices_1_1.done && (_a = rawVertices_1.return)) _a.call(rawVertices_1);
|
|
266
|
+
}
|
|
267
|
+
finally { if (e_1) throw e_1.error; }
|
|
268
|
+
}
|
|
269
|
+
var entity;
|
|
270
|
+
if (isPolygonMesh) {
|
|
271
|
+
entity = new AcDbPolygonMesh(header.meshM, header.meshN, vertices, isClosed, isClosedN);
|
|
272
|
+
}
|
|
273
|
+
else if (isPolyfaceMesh) {
|
|
274
|
+
entity = new AcDbPolyFaceMesh(vertices, faces);
|
|
275
|
+
}
|
|
276
|
+
else if (is3dPolyline) {
|
|
277
|
+
var polyType = AcDbPoly3dType.SimplePoly;
|
|
278
|
+
if (header.flag & 0x04) {
|
|
279
|
+
if (header.smoothType === SMOOTH_CUBIC) {
|
|
280
|
+
polyType = AcDbPoly3dType.CubicSplinePoly;
|
|
281
|
+
}
|
|
282
|
+
else if (header.smoothType === SMOOTH_QUADRATIC) {
|
|
283
|
+
polyType = AcDbPoly3dType.QuadSplinePoly;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
entity = new AcDb3dPolyline(polyType, vertices, isClosed);
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
var polyType = AcDbPoly2dType.SimplePoly;
|
|
290
|
+
if (header.flag & 0x02) {
|
|
291
|
+
polyType = AcDbPoly2dType.FitCurvePoly;
|
|
292
|
+
}
|
|
293
|
+
else if (header.flag & 0x04) {
|
|
294
|
+
if (header.smoothType === SMOOTH_CUBIC) {
|
|
295
|
+
polyType = AcDbPoly2dType.CubicSplinePoly;
|
|
296
|
+
}
|
|
297
|
+
else if (header.smoothType === SMOOTH_QUADRATIC) {
|
|
298
|
+
polyType = AcDbPoly2dType.QuadSplinePoly;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
entity = new AcDb2dPolyline(polyType, vertices, header.elevation, isClosed, header.startWidth, header.endWidth, bulges);
|
|
302
|
+
}
|
|
303
|
+
applyCommon(entity, header);
|
|
304
|
+
return entity;
|
|
305
|
+
}
|
|
306
|
+
function applyCommon(entity, header) {
|
|
307
|
+
if (header.objectId)
|
|
308
|
+
entity.objectId = header.objectId;
|
|
309
|
+
if (header.ownerId)
|
|
310
|
+
entity.ownerId = header.ownerId;
|
|
311
|
+
entity.layer = header.layer;
|
|
312
|
+
entity.lineType = header.lineType;
|
|
313
|
+
if (header.colorIndex != null)
|
|
314
|
+
entity.color.colorIndex = header.colorIndex;
|
|
315
|
+
if (header.trueColor != null)
|
|
316
|
+
entity.color.setRGBValue(header.trueColor);
|
|
317
|
+
}
|
|
318
|
+
//# sourceMappingURL=AcDbDxfPolylineAssembler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfPolylineAssembler.js","sourceRoot":"","sources":["../../src/dxf/AcDbDxfPolylineAssembler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AcDbDwgVersion, type AcDbDxfVersionCapabilities } from '../database/AcDbDwgVersion';
|
|
2
|
+
export type { AcDbDxfVersionCapabilities };
|
|
3
|
+
/**
|
|
4
|
+
* Resolve DXF dialect capabilities for a version name, numeric value,
|
|
5
|
+
* {@link AcDbDwgVersion}, or capabilities object.
|
|
6
|
+
*/
|
|
7
|
+
export declare function acdbDxfVersionCaps(version?: AcDbDwgVersion | AcDbDxfVersionCapabilities | string | number | null): AcDbDxfVersionCapabilities;
|
|
8
|
+
//# sourceMappingURL=AcDbDxfVersionCaps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfVersionCaps.d.ts","sourceRoot":"","sources":["../../src/dxf/AcDbDxfVersionCaps.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,0BAA0B,EAChC,MAAM,4BAA4B,CAAA;AAEnC,YAAY,EAAE,0BAA0B,EAAE,CAAA;AAE1C;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,CAAC,EAAE,cAAc,GAAG,0BAA0B,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAC7E,0BAA0B,CAW5B"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AcDbDwgVersion } from '../database/AcDbDwgVersion';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve DXF dialect capabilities for a version name, numeric value,
|
|
4
|
+
* {@link AcDbDwgVersion}, or capabilities object.
|
|
5
|
+
*/
|
|
6
|
+
export function acdbDxfVersionCaps(version) {
|
|
7
|
+
if (version == null) {
|
|
8
|
+
return AcDbDwgVersion.latest.capabilities;
|
|
9
|
+
}
|
|
10
|
+
if (typeof version === 'object' && 'supportsHandles' in version) {
|
|
11
|
+
return version;
|
|
12
|
+
}
|
|
13
|
+
if (version instanceof AcDbDwgVersion) {
|
|
14
|
+
return version.capabilities;
|
|
15
|
+
}
|
|
16
|
+
return new AcDbDwgVersion(version).capabilities;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AcDbDxfVersionCaps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDxfVersionCaps.js","sourceRoot":"","sources":["../../src/dxf/AcDbDxfVersionCaps.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAEf,MAAM,4BAA4B,CAAA;AAInC;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAA8E;IAE9E,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QACpB,OAAO,cAAc,CAAC,MAAM,CAAC,YAAY,CAAA;IAC3C,CAAC;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,iBAAiB,IAAI,OAAO,EAAE,CAAC;QAChE,OAAO,OAAO,CAAA;IAChB,CAAC;IACD,IAAI,OAAO,YAAY,cAAc,EAAE,CAAC;QACtC,OAAO,OAAO,CAAC,YAAY,CAAA;IAC7B,CAAC;IACD,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,YAAY,CAAA;AACjD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { AcDbDatabase } from '../database/AcDbDatabase';
|
|
2
|
+
import { type AcDbConversionProgressCallback, AcDbDatabaseConverter, type AcDbDatabaseConverterConfig } from '../database/AcDbDatabaseConverter';
|
|
3
|
+
/**
|
|
4
|
+
* Native DXF → database converter.
|
|
5
|
+
*
|
|
6
|
+
* Streams DXF pairs through {@link AcDbDxfFiler} / {@link AcDbDxfDocumentReader}
|
|
7
|
+
* directly into {@link AcDbDatabase}, avoiding the ParsedDxf JSON intermediate
|
|
8
|
+
* used by `@mlightcad/dxf-json-converter`.
|
|
9
|
+
*
|
|
10
|
+
* Conversion stages mirror {@link AcDbDatabaseConverter}:
|
|
11
|
+
* `START → PARSE → FONT → ENTITY → END`. The reader fills the database quietly
|
|
12
|
+
* (entity-appended events batched); fonts load on FONT; then the batch flushes
|
|
13
|
+
* so the first draw happens with fonts already available — no mid-parse FONT
|
|
14
|
+
* or post-open regen.
|
|
15
|
+
*
|
|
16
|
+
* Mid-PARSE byte progress, chunked ENTITY flush, and time-budgeted UI yields
|
|
17
|
+
* keep the status bar / spinner responsive without stalling large files on
|
|
18
|
+
* per-chunk `requestAnimationFrame` waits.
|
|
19
|
+
*/
|
|
20
|
+
export declare class AcDbNativeDxfConverter extends AcDbDatabaseConverter<null> {
|
|
21
|
+
constructor(config?: AcDbDatabaseConverterConfig);
|
|
22
|
+
read(data: ArrayBuffer, db: AcDbDatabase, minimumChunkSize: number, progress?: AcDbConversionProgressCallback, _timeout?: number, _sysVars?: Record<string, number | boolean | string>): Promise<void>;
|
|
23
|
+
protected parse(_data: ArrayBuffer): Promise<{
|
|
24
|
+
model: null;
|
|
25
|
+
data: {
|
|
26
|
+
unknownEntityCount: number;
|
|
27
|
+
};
|
|
28
|
+
}>;
|
|
29
|
+
protected getFonts(_model: null): string[];
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=AcDbNativeDxfConverter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbNativeDxfConverter.d.ts","sourceRoot":"","sources":["../../src/dxf/AcDbNativeDxfConverter.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EACL,KAAK,8BAA8B,EACnC,qBAAqB,EACrB,KAAK,2BAA2B,EACjC,MAAM,mCAAmC,CAAA;AAe1C;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,sBAAuB,SAAQ,qBAAqB,CAAC,IAAI,CAAC;gBACzD,MAAM,GAAE,2BAAgC;IAOrC,IAAI,CACjB,IAAI,EAAE,WAAW,EACjB,EAAE,EAAE,YAAY,EAChB,gBAAgB,EAAE,MAAM,EACxB,QAAQ,CAAC,EAAE,8BAA8B,EACzC,QAAQ,CAAC,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;cAyF7B,KAAK,CAAC,KAAK,EAAE,WAAW;;;;;;cAI9B,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,MAAM,EAAE;CAGpD"}
|
|
@@ -0,0 +1,257 @@
|
|
|
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 __assign = (this && this.__assign) || function () {
|
|
17
|
+
__assign = Object.assign || function(t) {
|
|
18
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
19
|
+
s = arguments[i];
|
|
20
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
21
|
+
t[p] = s[p];
|
|
22
|
+
}
|
|
23
|
+
return t;
|
|
24
|
+
};
|
|
25
|
+
return __assign.apply(this, arguments);
|
|
26
|
+
};
|
|
27
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
28
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
29
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
30
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
31
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
32
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
33
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
37
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
38
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
39
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
40
|
+
function step(op) {
|
|
41
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
42
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
43
|
+
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;
|
|
44
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
45
|
+
switch (op[0]) {
|
|
46
|
+
case 0: case 1: t = op; break;
|
|
47
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
48
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
49
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
50
|
+
default:
|
|
51
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
52
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
53
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
54
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
55
|
+
if (t[2]) _.ops.pop();
|
|
56
|
+
_.trys.pop(); continue;
|
|
57
|
+
}
|
|
58
|
+
op = body.call(thisArg, _);
|
|
59
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
60
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
import { ACCM_DEFAULT_UI_YIELD_BUDGET_MS, AcCmUiYieldGate, accmYieldForPaint } from '@mlightcad/common';
|
|
64
|
+
import { AcDbDxfFiler } from '../base/AcDbDxfFiler';
|
|
65
|
+
import { AcDbDatabaseConverter } from '../database/AcDbDatabaseConverter';
|
|
66
|
+
import { AcDbDxfDocumentReader } from './AcDbDxfDocumentReader';
|
|
67
|
+
/**
|
|
68
|
+
* Progress weights mirror typical open cost: a small PARSE slice, a short FONT
|
|
69
|
+
* download, then most of the bar for ENTITY add/render (same idea as the old
|
|
70
|
+
* converter where ENTITY carried the largest step).
|
|
71
|
+
*/
|
|
72
|
+
var PARSE_START_PCT = 1;
|
|
73
|
+
var PARSE_END_PCT = 12;
|
|
74
|
+
var FONT_START_PCT = 13;
|
|
75
|
+
var FONT_END_PCT = 18;
|
|
76
|
+
var ENTITY_START_PCT = 20;
|
|
77
|
+
var ENTITY_END_PCT = 98;
|
|
78
|
+
/**
|
|
79
|
+
* Native DXF → database converter.
|
|
80
|
+
*
|
|
81
|
+
* Streams DXF pairs through {@link AcDbDxfFiler} / {@link AcDbDxfDocumentReader}
|
|
82
|
+
* directly into {@link AcDbDatabase}, avoiding the ParsedDxf JSON intermediate
|
|
83
|
+
* used by `@mlightcad/dxf-json-converter`.
|
|
84
|
+
*
|
|
85
|
+
* Conversion stages mirror {@link AcDbDatabaseConverter}:
|
|
86
|
+
* `START → PARSE → FONT → ENTITY → END`. The reader fills the database quietly
|
|
87
|
+
* (entity-appended events batched); fonts load on FONT; then the batch flushes
|
|
88
|
+
* so the first draw happens with fonts already available — no mid-parse FONT
|
|
89
|
+
* or post-open regen.
|
|
90
|
+
*
|
|
91
|
+
* Mid-PARSE byte progress, chunked ENTITY flush, and time-budgeted UI yields
|
|
92
|
+
* keep the status bar / spinner responsive without stalling large files on
|
|
93
|
+
* per-chunk `requestAnimationFrame` waits.
|
|
94
|
+
*/
|
|
95
|
+
var AcDbNativeDxfConverter = /** @class */ (function (_super) {
|
|
96
|
+
__extends(AcDbNativeDxfConverter, _super);
|
|
97
|
+
function AcDbNativeDxfConverter(config) {
|
|
98
|
+
if (config === void 0) { config = {}; }
|
|
99
|
+
return _super.call(this, __assign({ useWorker: false }, config)) || this;
|
|
100
|
+
}
|
|
101
|
+
AcDbNativeDxfConverter.prototype.read = function (data, db, minimumChunkSize, progress, _timeout, _sysVars) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
103
|
+
var emit, batchOpen, filer, totalBytes, lastParsePct_1, reader, result, chunkSize, lastEntityPct_1, yieldGate_1, error_1;
|
|
104
|
+
var _this = this;
|
|
105
|
+
return __generator(this, function (_a) {
|
|
106
|
+
switch (_a.label) {
|
|
107
|
+
case 0:
|
|
108
|
+
this.progress = progress;
|
|
109
|
+
emit = function (percentage, stage, status, stageData) { return __awaiter(_this, void 0, void 0, function () {
|
|
110
|
+
return __generator(this, function (_a) {
|
|
111
|
+
switch (_a.label) {
|
|
112
|
+
case 0:
|
|
113
|
+
if (!progress)
|
|
114
|
+
return [2 /*return*/];
|
|
115
|
+
return [4 /*yield*/, progress(percentage, stage, status, stageData)];
|
|
116
|
+
case 1:
|
|
117
|
+
_a.sent();
|
|
118
|
+
return [2 /*return*/];
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
}); };
|
|
122
|
+
return [4 /*yield*/, emit(0, 'START', 'START')];
|
|
123
|
+
case 1:
|
|
124
|
+
_a.sent();
|
|
125
|
+
return [4 /*yield*/, emit(PARSE_START_PCT, 'PARSE', 'START')
|
|
126
|
+
// Let the open-file overlay paint before sync-heavy parse work (once).
|
|
127
|
+
];
|
|
128
|
+
case 2:
|
|
129
|
+
_a.sent();
|
|
130
|
+
// Let the open-file overlay paint before sync-heavy parse work (once).
|
|
131
|
+
return [4 /*yield*/, accmYieldForPaint()
|
|
132
|
+
// Suppress entityAppended (and related) until FONT finishes so the viewer
|
|
133
|
+
// does not worldDraw text before fontLoader.load has run.
|
|
134
|
+
];
|
|
135
|
+
case 3:
|
|
136
|
+
// Let the open-file overlay paint before sync-heavy parse work (once).
|
|
137
|
+
_a.sent();
|
|
138
|
+
// Suppress entityAppended (and related) until FONT finishes so the viewer
|
|
139
|
+
// does not worldDraw text before fontLoader.load has run.
|
|
140
|
+
db.beginEventBatch();
|
|
141
|
+
batchOpen = true;
|
|
142
|
+
_a.label = 4;
|
|
143
|
+
case 4:
|
|
144
|
+
_a.trys.push([4, 13, , 14]);
|
|
145
|
+
filer = AcDbDxfFiler.fromBuffer(data, { database: db });
|
|
146
|
+
totalBytes = data.byteLength;
|
|
147
|
+
lastParsePct_1 = PARSE_START_PCT;
|
|
148
|
+
reader = new AcDbDxfDocumentReader(db, {
|
|
149
|
+
entityBatchSize: Math.max(1, minimumChunkSize || 200),
|
|
150
|
+
yieldBudgetMs: ACCM_DEFAULT_UI_YIELD_BUDGET_MS,
|
|
151
|
+
totalBytes: totalBytes,
|
|
152
|
+
onProgress: function (ratio) { return __awaiter(_this, void 0, void 0, function () {
|
|
153
|
+
var pct;
|
|
154
|
+
return __generator(this, function (_a) {
|
|
155
|
+
switch (_a.label) {
|
|
156
|
+
case 0:
|
|
157
|
+
pct = Math.min(PARSE_END_PCT - 1, PARSE_START_PCT +
|
|
158
|
+
Math.floor(ratio * (PARSE_END_PCT - PARSE_START_PCT)));
|
|
159
|
+
if (pct <= lastParsePct_1)
|
|
160
|
+
return [2 /*return*/];
|
|
161
|
+
lastParsePct_1 = pct;
|
|
162
|
+
return [4 /*yield*/, emit(pct, 'PARSE', 'IN-PROGRESS')];
|
|
163
|
+
case 1:
|
|
164
|
+
_a.sent();
|
|
165
|
+
return [2 /*return*/];
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
}); }
|
|
169
|
+
});
|
|
170
|
+
return [4 /*yield*/, reader.read(filer)];
|
|
171
|
+
case 5:
|
|
172
|
+
result = _a.sent();
|
|
173
|
+
return [4 /*yield*/, emit(PARSE_END_PCT, 'PARSE', 'END', {
|
|
174
|
+
unknownEntityCount: result.unknownEntityCount
|
|
175
|
+
})
|
|
176
|
+
// Same FONT contract as AcDbDxfConverter / AcDbDatabaseConverter.
|
|
177
|
+
];
|
|
178
|
+
case 6:
|
|
179
|
+
_a.sent();
|
|
180
|
+
// Same FONT contract as AcDbDxfConverter / AcDbDatabaseConverter.
|
|
181
|
+
return [4 /*yield*/, emit(FONT_START_PCT, 'FONT', 'START')];
|
|
182
|
+
case 7:
|
|
183
|
+
// Same FONT contract as AcDbDxfConverter / AcDbDatabaseConverter.
|
|
184
|
+
_a.sent();
|
|
185
|
+
return [4 /*yield*/, emit(FONT_END_PCT, 'FONT', 'END', result.fonts)];
|
|
186
|
+
case 8:
|
|
187
|
+
_a.sent();
|
|
188
|
+
return [4 /*yield*/, emit(ENTITY_START_PCT, 'ENTITY', 'START')];
|
|
189
|
+
case 9:
|
|
190
|
+
_a.sent();
|
|
191
|
+
chunkSize = Math.max(1, minimumChunkSize || 200);
|
|
192
|
+
lastEntityPct_1 = ENTITY_START_PCT;
|
|
193
|
+
yieldGate_1 = new AcCmUiYieldGate(ACCM_DEFAULT_UI_YIELD_BUDGET_MS);
|
|
194
|
+
// Flush queued entityAppended in chunks → first draw with fonts loaded,
|
|
195
|
+
// while advancing most of the open-file progress bar.
|
|
196
|
+
return [4 /*yield*/, db.endEventBatchChunked(chunkSize, function (flushed, total) { return __awaiter(_this, void 0, void 0, function () {
|
|
197
|
+
var pct;
|
|
198
|
+
return __generator(this, function (_a) {
|
|
199
|
+
switch (_a.label) {
|
|
200
|
+
case 0:
|
|
201
|
+
pct = total <= 0
|
|
202
|
+
? ENTITY_END_PCT
|
|
203
|
+
: Math.min(ENTITY_END_PCT, ENTITY_START_PCT +
|
|
204
|
+
Math.floor((flushed / total) * (ENTITY_END_PCT - ENTITY_START_PCT)));
|
|
205
|
+
if (!(pct > lastEntityPct_1)) return [3 /*break*/, 2];
|
|
206
|
+
lastEntityPct_1 = pct;
|
|
207
|
+
return [4 /*yield*/, emit(pct, 'ENTITY', 'IN-PROGRESS')];
|
|
208
|
+
case 1:
|
|
209
|
+
_a.sent();
|
|
210
|
+
_a.label = 2;
|
|
211
|
+
case 2:
|
|
212
|
+
// Time-budgeted single-frame yield — not per progress percent.
|
|
213
|
+
return [4 /*yield*/, yieldGate_1.maybeYield()];
|
|
214
|
+
case 3:
|
|
215
|
+
// Time-budgeted single-frame yield — not per progress percent.
|
|
216
|
+
_a.sent();
|
|
217
|
+
return [2 /*return*/];
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
}); })];
|
|
221
|
+
case 10:
|
|
222
|
+
// Flush queued entityAppended in chunks → first draw with fonts loaded,
|
|
223
|
+
// while advancing most of the open-file progress bar.
|
|
224
|
+
_a.sent();
|
|
225
|
+
batchOpen = false;
|
|
226
|
+
return [4 /*yield*/, emit(ENTITY_END_PCT, 'ENTITY', 'END')];
|
|
227
|
+
case 11:
|
|
228
|
+
_a.sent();
|
|
229
|
+
return [4 /*yield*/, emit(100, 'END', 'END')];
|
|
230
|
+
case 12:
|
|
231
|
+
_a.sent();
|
|
232
|
+
return [3 /*break*/, 14];
|
|
233
|
+
case 13:
|
|
234
|
+
error_1 = _a.sent();
|
|
235
|
+
if (batchOpen) {
|
|
236
|
+
db.endEventBatch();
|
|
237
|
+
}
|
|
238
|
+
throw error_1;
|
|
239
|
+
case 14: return [2 /*return*/];
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
});
|
|
243
|
+
};
|
|
244
|
+
AcDbNativeDxfConverter.prototype.parse = function (_data) {
|
|
245
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
246
|
+
return __generator(this, function (_a) {
|
|
247
|
+
return [2 /*return*/, { model: null, data: { unknownEntityCount: 0 } }];
|
|
248
|
+
});
|
|
249
|
+
});
|
|
250
|
+
};
|
|
251
|
+
AcDbNativeDxfConverter.prototype.getFonts = function (_model) {
|
|
252
|
+
return [];
|
|
253
|
+
};
|
|
254
|
+
return AcDbNativeDxfConverter;
|
|
255
|
+
}(AcDbDatabaseConverter));
|
|
256
|
+
export { AcDbNativeDxfConverter };
|
|
257
|
+
//# sourceMappingURL=AcDbNativeDxfConverter.js.map
|