@mlightcad/data-model 1.11.2 → 1.12.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 +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 +40 -0
- package/lib/base/AcDbObject.d.ts.map +1 -1
- package/lib/base/AcDbObject.js +144 -14
- package/lib/base/AcDbObject.js.map +1 -1
- package/lib/base/index.d.ts +9 -2
- package/lib/base/index.d.ts.map +1 -1
- package/lib/base/index.js +4 -1
- package/lib/base/index.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 +71 -8
- package/lib/database/AcDbDatabase.d.ts.map +1 -1
- package/lib/database/AcDbDatabase.js +381 -76
- package/lib/database/AcDbDatabase.js.map +1 -1
- package/lib/database/AcDbDatabaseConverterManager.d.ts +5 -0
- package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -1
- package/lib/database/AcDbDatabaseConverterManager.js +5 -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/AcDbSystemVariables.d.ts +3 -1
- package/lib/database/AcDbSystemVariables.d.ts.map +1 -1
- package/lib/database/AcDbSystemVariables.js +2 -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 +101 -0
- package/lib/dxf/AcDbDxfDocumentReader.d.ts.map +1 -0
- package/lib/dxf/AcDbDxfDocumentReader.js +1100 -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 +30 -0
- package/lib/dxf/AcDbNativeDxfConverter.d.ts.map +1 -0
- package/lib/dxf/AcDbNativeDxfConverter.js +266 -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/dxf/registerNativeDxfConverter.d.ts +2 -0
- package/lib/dxf/registerNativeDxfConverter.d.ts.map +1 -0
- package/lib/dxf/registerNativeDxfConverter.js +12 -0
- package/lib/dxf/registerNativeDxfConverter.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 +91 -1
- 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 +1 -0
- package/lib/entity/AcDbOle2Frame.d.ts.map +1 -1
- package/lib/entity/AcDbOle2Frame.js +83 -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 +174 -0
- package/lib/entity/AcDbViewport.d.ts.map +1 -1
- package/lib/entity/AcDbViewport.js +890 -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 +8 -6
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -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/AcDbPreviewIcon.d.ts +11 -0
- package/lib/misc/AcDbPreviewIcon.d.ts.map +1 -1
- package/lib/misc/AcDbPreviewIcon.js +39 -3
- package/lib/misc/AcDbPreviewIcon.js.map +1 -1
- package/lib/misc/index.d.ts +2 -2
- package/lib/misc/index.d.ts.map +1 -1
- package/lib/misc/index.js +2 -2
- 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 +6 -5
|
@@ -103,6 +103,7 @@ import { AcDbObject, TEMP_OBJECT_ID_PREFIX } from '../base/AcDbObject';
|
|
|
103
103
|
import { AcDbOpenMode } from '../base/AcDbOpenMode';
|
|
104
104
|
import { AcDbRegenerator } from '../converter/AcDbRegenerator';
|
|
105
105
|
import { AcDbDatabaseConverterManager, AcDbFileType } from './AcDbDatabaseConverterManager';
|
|
106
|
+
import { AcDbPolyline } from '../entity/AcDbPolyline';
|
|
106
107
|
import { ACAD_APPID, ACTIVE_VPORT_NAME, ByBlock, ByLayer, DEFAULT_MLEADER_STYLE, DEFAULT_MLINE_STYLE, DEFAULT_LINE_TYPE, DEFAULT_TEXT_STYLE, MLIGHTCAD_APPID } from '../misc/AcDbConstants';
|
|
107
108
|
import { AcDbAngleUnits } from '../misc/AcDbAngleUnits';
|
|
108
109
|
import { AcDbDataGenerator } from '../misc/AcDbDataGenerator';
|
|
@@ -115,6 +116,7 @@ import { AcDbMlineStyle } from '../object/AcDbMlineStyle';
|
|
|
115
116
|
import { AcDbXrecord } from '../object/AcDbXrecord';
|
|
116
117
|
import { AcLyLayerFilterTree } from '../ly/AcLyLayerFilterTree';
|
|
117
118
|
import { ACAD_LAYERFILTERS_NAME, ACLY_DICTIONARY_NAME, acdbLayerGroupsToResultBuffer, acdbSerializeLayerFilterTree } from '../ly/AcLyLayerFilterIO';
|
|
119
|
+
import { acdbBytesToHexString } from '../misc/proxyGraphic';
|
|
118
120
|
import { AcDbBlockTable } from './AcDbBlockTable';
|
|
119
121
|
import { AcDbBlockTableRecord } from './AcDbBlockTableRecord';
|
|
120
122
|
import { AcDbOpenDatabaseError } from './AcDbOpenDatabaseError';
|
|
@@ -126,6 +128,7 @@ import { AcDbLinetypeTable } from './AcDbLinetypeTable';
|
|
|
126
128
|
import { AcDbLinetypeTableRecord } from './AcDbLinetypeTableRecord';
|
|
127
129
|
import { AcDbTextStyleTable } from './AcDbTextStyleTable';
|
|
128
130
|
import { AcDbTextStyleTableRecord } from './AcDbTextStyleTableRecord';
|
|
131
|
+
import { AcDbUcsTable } from './AcDbUcsTable';
|
|
129
132
|
import { AcDbViewTable } from './AcDbViewTable';
|
|
130
133
|
import { AcDbViewportTable } from './AcDbViewportTable';
|
|
131
134
|
import { AcDbViewportTableRecord } from './AcDbViewportTableRecord';
|
|
@@ -228,6 +231,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
228
231
|
_this._hplayer = '.';
|
|
229
232
|
_this._hptransparency = new AcCmTransparency();
|
|
230
233
|
_this._textstyle = DEFAULT_TEXT_STYLE;
|
|
234
|
+
_this._dimstyle = DEFAULT_TEXT_STYLE;
|
|
231
235
|
_this._extents = new AcGeBox3d();
|
|
232
236
|
// TODO: Default value is 1 (imperial) or 4 (metric)
|
|
233
237
|
_this._insunits = AcDbUnitsValue.Millimeters;
|
|
@@ -235,6 +239,8 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
235
239
|
_this._measurement = 1;
|
|
236
240
|
_this._ltscale = 1;
|
|
237
241
|
_this._lwdisplay = false;
|
|
242
|
+
_this._tilemode = true;
|
|
243
|
+
_this._psltscale = true;
|
|
238
244
|
_this._pdmode = 0;
|
|
239
245
|
_this._pdsize = 0;
|
|
240
246
|
_this._osmode = 0;
|
|
@@ -246,18 +252,21 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
246
252
|
dimStyleTable: new AcDbDimStyleTable(_this),
|
|
247
253
|
linetypeTable: new AcDbLinetypeTable(_this),
|
|
248
254
|
textStyleTable: new AcDbTextStyleTable(_this),
|
|
255
|
+
ucsTable: new AcDbUcsTable(_this),
|
|
249
256
|
viewTable: new AcDbViewTable(_this),
|
|
250
257
|
layerTable: new AcDbLayerTable(_this),
|
|
251
258
|
viewportTable: new AcDbViewportTable(_this)
|
|
252
259
|
};
|
|
253
260
|
_this._objects = {
|
|
254
261
|
dictionary: new AcDbDictionary(_this),
|
|
262
|
+
group: new AcDbDictionary(_this),
|
|
255
263
|
imageDefinition: new AcDbDictionary(_this),
|
|
256
264
|
layerFilter: new AcDbDictionary(_this),
|
|
257
265
|
layerIndex: new AcDbDictionary(_this),
|
|
258
266
|
layout: new AcDbLayoutDictionary(_this),
|
|
259
267
|
mleaderStyle: new AcDbDictionary(_this),
|
|
260
268
|
mlineStyle: new AcDbDictionary(_this),
|
|
269
|
+
sortentsTable: new AcDbDictionary(_this),
|
|
261
270
|
xrecord: new AcDbDictionary(_this)
|
|
262
271
|
};
|
|
263
272
|
_this._layerFilters = new AcLyLayerFilterTree();
|
|
@@ -451,12 +460,14 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
451
460
|
AcDbDatabase.prototype.getRootDictionaries = function () {
|
|
452
461
|
return [
|
|
453
462
|
this.objects.dictionary,
|
|
463
|
+
this.objects.group,
|
|
454
464
|
this.objects.imageDefinition,
|
|
455
465
|
this.objects.layerFilter,
|
|
456
466
|
this.objects.layerIndex,
|
|
457
467
|
this.objects.layout,
|
|
458
468
|
this.objects.mleaderStyle,
|
|
459
469
|
this.objects.mlineStyle,
|
|
470
|
+
this.objects.sortentsTable,
|
|
460
471
|
this.objects.xrecord
|
|
461
472
|
];
|
|
462
473
|
};
|
|
@@ -480,6 +491,77 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
480
491
|
this.flushEventBatch();
|
|
481
492
|
}
|
|
482
493
|
};
|
|
494
|
+
/**
|
|
495
|
+
* Ends the outermost event batch, flushing `entityAppended` notifications in
|
|
496
|
+
* chunks so converters can report ENTITY progress while the viewer adds/renders.
|
|
497
|
+
*
|
|
498
|
+
* Nested batches still require matching {@link endEventBatch} /
|
|
499
|
+
* {@link endEventBatchChunked} calls; only the outermost close flushes.
|
|
500
|
+
*
|
|
501
|
+
* @param chunkSize - Max entities per `entityAppended` dispatch
|
|
502
|
+
* @param onChunk - Called after each chunk with `(flushed, total)`
|
|
503
|
+
*/
|
|
504
|
+
AcDbDatabase.prototype.endEventBatchChunked = function (chunkSize, onChunk) {
|
|
505
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
506
|
+
var appended, total, size, flushed, i, end, chunk;
|
|
507
|
+
return __generator(this, function (_a) {
|
|
508
|
+
switch (_a.label) {
|
|
509
|
+
case 0:
|
|
510
|
+
if (this._eventBatchDepth <= 0) {
|
|
511
|
+
return [2 /*return*/];
|
|
512
|
+
}
|
|
513
|
+
this._eventBatchDepth--;
|
|
514
|
+
if (this._eventBatchDepth !== 0) {
|
|
515
|
+
return [2 /*return*/];
|
|
516
|
+
}
|
|
517
|
+
this.transactionManager.flushPendingEntityModifiedEvents();
|
|
518
|
+
this.transactionManager.flushPendingLayerModifiedEvents();
|
|
519
|
+
appended = this._pendingEntityAppended;
|
|
520
|
+
this._pendingEntityAppended = [];
|
|
521
|
+
total = appended.length;
|
|
522
|
+
size = Math.max(1, chunkSize);
|
|
523
|
+
if (total === 0) {
|
|
524
|
+
this.flushEventBatchRemainder();
|
|
525
|
+
return [2 /*return*/];
|
|
526
|
+
}
|
|
527
|
+
flushed = 0;
|
|
528
|
+
_a.label = 1;
|
|
529
|
+
case 1:
|
|
530
|
+
_a.trys.push([1, , 6, 7]);
|
|
531
|
+
i = 0;
|
|
532
|
+
_a.label = 2;
|
|
533
|
+
case 2:
|
|
534
|
+
if (!(i < total)) return [3 /*break*/, 5];
|
|
535
|
+
end = Math.min(i + size, total);
|
|
536
|
+
chunk = appended.slice(i, end);
|
|
537
|
+
this.events.entityAppended.dispatch({
|
|
538
|
+
database: this,
|
|
539
|
+
entity: chunk
|
|
540
|
+
});
|
|
541
|
+
flushed = end;
|
|
542
|
+
if (!onChunk) return [3 /*break*/, 4];
|
|
543
|
+
return [4 /*yield*/, onChunk(end, total)];
|
|
544
|
+
case 3:
|
|
545
|
+
_a.sent();
|
|
546
|
+
_a.label = 4;
|
|
547
|
+
case 4:
|
|
548
|
+
i += size;
|
|
549
|
+
return [3 /*break*/, 2];
|
|
550
|
+
case 5: return [3 /*break*/, 7];
|
|
551
|
+
case 6:
|
|
552
|
+
if (flushed < total) {
|
|
553
|
+
this.events.entityAppended.dispatch({
|
|
554
|
+
database: this,
|
|
555
|
+
entity: appended.slice(flushed)
|
|
556
|
+
});
|
|
557
|
+
}
|
|
558
|
+
this.flushEventBatchRemainder();
|
|
559
|
+
return [7 /*endfinally*/];
|
|
560
|
+
case 7: return [2 /*return*/];
|
|
561
|
+
}
|
|
562
|
+
});
|
|
563
|
+
});
|
|
564
|
+
};
|
|
483
565
|
/**
|
|
484
566
|
* Returns true when database events are being batched.
|
|
485
567
|
*/
|
|
@@ -560,7 +642,6 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
560
642
|
* Appended and erased entities are dispatched in batch arrays where applicable.
|
|
561
643
|
*/
|
|
562
644
|
AcDbDatabase.prototype.flushEventBatch = function () {
|
|
563
|
-
var e_1, _a, e_2, _b;
|
|
564
645
|
if (this._pendingEntityAppended.length > 0) {
|
|
565
646
|
var appended = this._pendingEntityAppended;
|
|
566
647
|
this._pendingEntityAppended = [];
|
|
@@ -569,6 +650,11 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
569
650
|
entity: appended
|
|
570
651
|
});
|
|
571
652
|
}
|
|
653
|
+
this.flushEventBatchRemainder();
|
|
654
|
+
};
|
|
655
|
+
/** Flushes non-append batch queues (erase / dictionary) after entity appends. */
|
|
656
|
+
AcDbDatabase.prototype.flushEventBatchRemainder = function () {
|
|
657
|
+
var e_1, _a, e_2, _b;
|
|
572
658
|
if (this._pendingEntityErased.length > 0) {
|
|
573
659
|
var erased = this._pendingEntityErased;
|
|
574
660
|
this._pendingEntityErased = [];
|
|
@@ -757,6 +843,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
757
843
|
this._tables.linetypeTable,
|
|
758
844
|
this._tables.appIdTable,
|
|
759
845
|
this._tables.textStyleTable,
|
|
846
|
+
this._tables.ucsTable,
|
|
760
847
|
this._tables.viewTable,
|
|
761
848
|
this._tables.viewportTable
|
|
762
849
|
]), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
@@ -774,12 +861,14 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
774
861
|
try {
|
|
775
862
|
for (var _e = __values([
|
|
776
863
|
this._objects.dictionary,
|
|
864
|
+
this._objects.group,
|
|
777
865
|
this._objects.imageDefinition,
|
|
778
866
|
this._objects.layerFilter,
|
|
779
867
|
this._objects.layerIndex,
|
|
780
868
|
this._objects.layout,
|
|
781
869
|
this._objects.mleaderStyle,
|
|
782
870
|
this._objects.mlineStyle,
|
|
871
|
+
this._objects.sortentsTable,
|
|
783
872
|
this._objects.xrecord
|
|
784
873
|
]), _f = _e.next(); !_f.done; _f = _e.next()) {
|
|
785
874
|
var dictionary = _f.value;
|
|
@@ -1257,6 +1346,29 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1257
1346
|
_this._dwgname = nextValue;
|
|
1258
1347
|
});
|
|
1259
1348
|
};
|
|
1349
|
+
Object.defineProperty(AcDbDatabase.prototype, "thumbnailImage", {
|
|
1350
|
+
/**
|
|
1351
|
+
* Gets or sets the drawing thumbnail preview image.
|
|
1352
|
+
*
|
|
1353
|
+
* Corresponds to AutoCAD .NET `Database.ThumbnailBitmap`, DXF
|
|
1354
|
+
* `THUMBNAILIMAGE` section (group codes 90/310), and the DWG file preview.
|
|
1355
|
+
* Stored as raw image bytes (typically BMP/DIB or PNG).
|
|
1356
|
+
*
|
|
1357
|
+
* @returns Thumbnail image bytes, or `undefined` when none exist.
|
|
1358
|
+
*/
|
|
1359
|
+
get: function () {
|
|
1360
|
+
return this._thumbnailImage;
|
|
1361
|
+
},
|
|
1362
|
+
set: function (value) {
|
|
1363
|
+
if (!value || value.length === 0) {
|
|
1364
|
+
this._thumbnailImage = undefined;
|
|
1365
|
+
return;
|
|
1366
|
+
}
|
|
1367
|
+
this._thumbnailImage = value;
|
|
1368
|
+
},
|
|
1369
|
+
enumerable: false,
|
|
1370
|
+
configurable: true
|
|
1371
|
+
});
|
|
1260
1372
|
/**
|
|
1261
1373
|
* Returns whether entities on the given layer should be drawn under the
|
|
1262
1374
|
* current {@link drawNoPlotLayers} setting.
|
|
@@ -1271,6 +1383,28 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1271
1383
|
var layer = this.tables.layerTable.getAt(layerName);
|
|
1272
1384
|
return layer == null || layer.isPlottable;
|
|
1273
1385
|
};
|
|
1386
|
+
Object.defineProperty(AcDbDatabase.prototype, "tilemode", {
|
|
1387
|
+
/** TILEMODE: true = model space (1), false = paper space (0). */
|
|
1388
|
+
get: function () {
|
|
1389
|
+
return this._tilemode;
|
|
1390
|
+
},
|
|
1391
|
+
set: function (value) {
|
|
1392
|
+
this._tilemode = value;
|
|
1393
|
+
},
|
|
1394
|
+
enumerable: false,
|
|
1395
|
+
configurable: true
|
|
1396
|
+
});
|
|
1397
|
+
Object.defineProperty(AcDbDatabase.prototype, "psltscale", {
|
|
1398
|
+
/** PSLTSCALE: paper space linetype scaling. */
|
|
1399
|
+
get: function () {
|
|
1400
|
+
return this._psltscale;
|
|
1401
|
+
},
|
|
1402
|
+
set: function (value) {
|
|
1403
|
+
this._psltscale = value;
|
|
1404
|
+
},
|
|
1405
|
+
enumerable: false,
|
|
1406
|
+
configurable: true
|
|
1407
|
+
});
|
|
1274
1408
|
Object.defineProperty(AcDbDatabase.prototype, "cecolor", {
|
|
1275
1409
|
/**
|
|
1276
1410
|
* Gets the color of new objects as they are created.
|
|
@@ -1517,6 +1651,22 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1517
1651
|
enumerable: false,
|
|
1518
1652
|
configurable: true
|
|
1519
1653
|
});
|
|
1654
|
+
Object.defineProperty(AcDbDatabase.prototype, "dimstyle", {
|
|
1655
|
+
/**
|
|
1656
|
+
* The dimension style name for new dimension objects (`$DIMSTYLE`).
|
|
1657
|
+
*/
|
|
1658
|
+
get: function () {
|
|
1659
|
+
return this._dimstyle;
|
|
1660
|
+
},
|
|
1661
|
+
set: function (value) {
|
|
1662
|
+
var _this = this;
|
|
1663
|
+
this.updateSysVar(AcDbSystemVariables.DIMSTYLE, this._dimstyle, value !== null && value !== void 0 ? value : DEFAULT_TEXT_STYLE, function (nextValue) {
|
|
1664
|
+
_this._dimstyle = nextValue;
|
|
1665
|
+
});
|
|
1666
|
+
},
|
|
1667
|
+
enumerable: false,
|
|
1668
|
+
configurable: true
|
|
1669
|
+
});
|
|
1520
1670
|
Object.defineProperty(AcDbDatabase.prototype, "angbase", {
|
|
1521
1671
|
/**
|
|
1522
1672
|
* The zero (0) base angle with respect to the current UCS in radians.
|
|
@@ -1778,7 +1928,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1778
1928
|
_b.label = 1;
|
|
1779
1929
|
case 1:
|
|
1780
1930
|
_b.trys.push([1, 3, , 4]);
|
|
1781
|
-
return [4 /*yield*/, options.fontLoader
|
|
1931
|
+
return [4 /*yield*/, this.loadFontsWithProgress(options.fontLoader, fonts_1, percentage)];
|
|
1782
1932
|
case 2:
|
|
1783
1933
|
_b.sent();
|
|
1784
1934
|
return [3 /*break*/, 4];
|
|
@@ -1805,6 +1955,49 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1805
1955
|
});
|
|
1806
1956
|
}); };
|
|
1807
1957
|
};
|
|
1958
|
+
/**
|
|
1959
|
+
* Loads fonts while emitting FONT IN-PROGRESS so the open-file bar keeps
|
|
1960
|
+
* moving during multi-font downloads (native DXF parses on the main thread
|
|
1961
|
+
* and previously appeared stuck at the FONT stage).
|
|
1962
|
+
*/
|
|
1963
|
+
AcDbDatabase.prototype.loadFontsWithProgress = function (fontLoader, fonts, basePercentage) {
|
|
1964
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
1965
|
+
var span, i, pct;
|
|
1966
|
+
return __generator(this, function (_a) {
|
|
1967
|
+
switch (_a.label) {
|
|
1968
|
+
case 0:
|
|
1969
|
+
if (!(fonts.length <= 1)) return [3 /*break*/, 2];
|
|
1970
|
+
return [4 /*yield*/, fontLoader.load(fonts)];
|
|
1971
|
+
case 1:
|
|
1972
|
+
_a.sent();
|
|
1973
|
+
return [2 /*return*/];
|
|
1974
|
+
case 2:
|
|
1975
|
+
span = Math.max(1, Math.min(5, 19 - basePercentage));
|
|
1976
|
+
i = 0;
|
|
1977
|
+
_a.label = 3;
|
|
1978
|
+
case 3:
|
|
1979
|
+
if (!(i < fonts.length)) return [3 /*break*/, 6];
|
|
1980
|
+
return [4 /*yield*/, fontLoader.load([fonts[i]])];
|
|
1981
|
+
case 4:
|
|
1982
|
+
_a.sent();
|
|
1983
|
+
pct = Math.min(19, basePercentage + Math.round(((i + 1) / fonts.length) * span));
|
|
1984
|
+
this.events.openProgress.dispatch({
|
|
1985
|
+
database: this,
|
|
1986
|
+
percentage: pct,
|
|
1987
|
+
stage: 'CONVERSION',
|
|
1988
|
+
subStage: 'FONT',
|
|
1989
|
+
subStageStatus: 'IN-PROGRESS',
|
|
1990
|
+
data: fonts
|
|
1991
|
+
});
|
|
1992
|
+
_a.label = 5;
|
|
1993
|
+
case 5:
|
|
1994
|
+
i++;
|
|
1995
|
+
return [3 /*break*/, 3];
|
|
1996
|
+
case 6: return [2 /*return*/];
|
|
1997
|
+
}
|
|
1998
|
+
});
|
|
1999
|
+
});
|
|
2000
|
+
};
|
|
1808
2001
|
/**
|
|
1809
2002
|
* Read AutoCAD DXF or DWG drawing specified by the URL into the database object.
|
|
1810
2003
|
* The method automatically detects the file type based on the URL extension:
|
|
@@ -1921,36 +2114,44 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1921
2114
|
});
|
|
1922
2115
|
};
|
|
1923
2116
|
/**
|
|
1924
|
-
* Exports the current database into
|
|
2117
|
+
* Exports the current database into DXF (ASCII string or binary bytes).
|
|
1925
2118
|
*
|
|
1926
2119
|
* The `fileName` parameter is kept for ObjectARX API parity. In this web
|
|
1927
2120
|
* implementation the method returns the DXF payload instead of writing the
|
|
1928
2121
|
* filesystem directly.
|
|
1929
2122
|
*
|
|
1930
|
-
* This is the top-level DXF export entry point. It emits the sectioned
|
|
1931
|
-
* structure in the canonical order: HEADER, TABLES, BLOCKS, ENTITIES,
|
|
1932
|
-
* OBJECTS, and EOF.
|
|
1933
|
-
*
|
|
1934
2123
|
* @param _fileName - Kept for ObjectARX parity. Ignored in this implementation.
|
|
1935
2124
|
* @param precision - Numeric precision used by the DXF filer.
|
|
1936
2125
|
* @param version - Target DXF/DWG version name or value.
|
|
1937
|
-
* @param
|
|
1938
|
-
*
|
|
2126
|
+
* @param optionsOrThumbnail - Legacy boolean thumbnail flag, or options with
|
|
2127
|
+
* `saveThumbnailImage` and `format: 'ascii' | 'binary'`.
|
|
2128
|
+
* @returns ASCII DXF string, or `Uint8Array` when format is `'binary'`.
|
|
1939
2129
|
*/
|
|
1940
|
-
AcDbDatabase.prototype.dxfOut = function (_fileName, precision, version,
|
|
2130
|
+
AcDbDatabase.prototype.dxfOut = function (_fileName, precision, version, optionsOrThumbnail) {
|
|
2131
|
+
var _a, _b;
|
|
1941
2132
|
if (precision === void 0) { precision = 16; }
|
|
1942
2133
|
if (version === void 0) { version = this.version.name; }
|
|
1943
|
-
if (
|
|
2134
|
+
if (optionsOrThumbnail === void 0) { optionsOrThumbnail = false; }
|
|
1944
2135
|
this.ensureDatabaseDefaults();
|
|
1945
2136
|
if (this._layerFilters.root.getNestedFilters().length > 0 &&
|
|
1946
2137
|
!this.tables.layerTable.extensionDictionary) {
|
|
1947
2138
|
this.tables.layerTable.extensionDictionary = this.generateHandle();
|
|
1948
2139
|
}
|
|
2140
|
+
var options = typeof optionsOrThumbnail === 'boolean'
|
|
2141
|
+
? {
|
|
2142
|
+
saveThumbnailImage: optionsOrThumbnail,
|
|
2143
|
+
format: 'ascii'
|
|
2144
|
+
}
|
|
2145
|
+
: {
|
|
2146
|
+
saveThumbnailImage: (_a = optionsOrThumbnail.saveThumbnailImage) !== null && _a !== void 0 ? _a : false,
|
|
2147
|
+
format: (_b = optionsOrThumbnail.format) !== null && _b !== void 0 ? _b : 'ascii'
|
|
2148
|
+
};
|
|
1949
2149
|
var outVersion = version instanceof AcDbDwgVersion ? version : new AcDbDwgVersion(version);
|
|
1950
2150
|
var filer = new AcDbDxfFiler({
|
|
1951
2151
|
database: this,
|
|
1952
2152
|
precision: precision,
|
|
1953
|
-
version: outVersion
|
|
2153
|
+
version: outVersion,
|
|
2154
|
+
outputFormat: options.format
|
|
1954
2155
|
});
|
|
1955
2156
|
this.writeDxfHeaderSection(filer);
|
|
1956
2157
|
this.writeDxfClassesSection(filer);
|
|
@@ -1958,8 +2159,9 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
1958
2159
|
this.writeDxfBlocksSection(filer);
|
|
1959
2160
|
this.writeDxfEntitiesSection(filer);
|
|
1960
2161
|
this.writeDxfObjectsSection(filer);
|
|
2162
|
+
this.writeDxfThumbnailImageSection(filer, options.saveThumbnailImage);
|
|
1961
2163
|
filer.writeStart('EOF');
|
|
1962
|
-
return filer.toString();
|
|
2164
|
+
return options.format === 'binary' ? filer.toBinary() : filer.toString();
|
|
1963
2165
|
};
|
|
1964
2166
|
/**
|
|
1965
2167
|
* Triggers xxxAppended events with data in the database to redraw the associated viewer.
|
|
@@ -2274,7 +2476,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2274
2476
|
filer.writeString(1, (_b = (_a = filer.version) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : this.version.name);
|
|
2275
2477
|
filer.writeString(9, '$HANDSEED');
|
|
2276
2478
|
filer.writeString(5, filer.nextHandle.toString(16).toUpperCase());
|
|
2277
|
-
if (filer.
|
|
2479
|
+
if (filer.capabilities.supportsUtf8CodePage) {
|
|
2278
2480
|
filer.writeString(9, '$DWGCODEPAGE');
|
|
2279
2481
|
filer.writeString(3, 'UTF-8');
|
|
2280
2482
|
}
|
|
@@ -2290,13 +2492,28 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2290
2492
|
filer.writeInt16(70, this.measurement);
|
|
2291
2493
|
filer.writeString(9, '$LTSCALE');
|
|
2292
2494
|
filer.writeDouble(40, this.ltscale);
|
|
2293
|
-
filer.
|
|
2294
|
-
|
|
2495
|
+
if (filer.capabilities.supportsLineWeight) {
|
|
2496
|
+
filer.writeString(9, '$LWDISPLAY');
|
|
2497
|
+
filer.writeInt16(70, this.lwdisplay ? 1 : 0);
|
|
2498
|
+
}
|
|
2499
|
+
filer.writeString(9, '$CELTSCALE');
|
|
2500
|
+
filer.writeDouble(40, this.celtscale);
|
|
2501
|
+
if (filer.capabilities.supportsLineWeight) {
|
|
2502
|
+
filer.writeString(9, '$CELWEIGHT');
|
|
2503
|
+
filer.writeLineWeight(370, this.celweight);
|
|
2504
|
+
}
|
|
2505
|
+
filer.writeString(9, '$CECOLOR');
|
|
2506
|
+
filer.writeCmColor(this.cecolor);
|
|
2507
|
+
filer.writeString(9, '$TILEMODE');
|
|
2508
|
+
filer.writeInt16(70, this.tilemode ? 1 : 0);
|
|
2509
|
+
filer.writeString(9, '$PSLTSCALE');
|
|
2510
|
+
filer.writeInt16(70, this.psltscale ? 1 : 0);
|
|
2295
2511
|
filer.writeString(9, '$CLAYER');
|
|
2296
2512
|
filer.writeString(8, this.clayer);
|
|
2297
2513
|
filer.writeString(9, '$CELTYPE');
|
|
2298
2514
|
filer.writeString(6, this.celtype);
|
|
2299
|
-
if (
|
|
2515
|
+
if (filer.capabilities.supportsTransparency &&
|
|
2516
|
+
!this.cetransparency.isInvalid) {
|
|
2300
2517
|
filer.writeString(9, '$CETRANSPARENCY');
|
|
2301
2518
|
filer.writeTransparency(this.cetransparency);
|
|
2302
2519
|
}
|
|
@@ -2316,12 +2533,15 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2316
2533
|
}
|
|
2317
2534
|
filer.writeString(9, '$HPLAYER');
|
|
2318
2535
|
filer.writeString(8, this.hplayer);
|
|
2319
|
-
if (
|
|
2536
|
+
if (filer.capabilities.supportsTransparency &&
|
|
2537
|
+
!this.hptransparency.isInvalid) {
|
|
2320
2538
|
filer.writeString(9, '$HPTRANSPARENCY');
|
|
2321
2539
|
filer.writeTransparency(this.hptransparency);
|
|
2322
2540
|
}
|
|
2323
2541
|
filer.writeString(9, '$TEXTSTYLE');
|
|
2324
2542
|
filer.writeString(7, this.textstyle);
|
|
2543
|
+
filer.writeString(9, '$DIMSTYLE');
|
|
2544
|
+
filer.writeString(2, this.dimstyle);
|
|
2325
2545
|
filer.writeString(9, '$ANGBASE');
|
|
2326
2546
|
filer.writeAngle(50, this.angbase);
|
|
2327
2547
|
filer.writeString(9, '$ANGDIR');
|
|
@@ -2354,7 +2574,8 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2354
2574
|
*/
|
|
2355
2575
|
AcDbDatabase.prototype.writeDxfClassesSection = function (filer) {
|
|
2356
2576
|
var e_10, _a;
|
|
2357
|
-
if (
|
|
2577
|
+
if (!filer.capabilities.supportsClassesSection ||
|
|
2578
|
+
this._classes.length === 0) {
|
|
2358
2579
|
return;
|
|
2359
2580
|
}
|
|
2360
2581
|
filer.startSection('CLASSES');
|
|
@@ -2390,12 +2611,13 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2390
2611
|
filer.startSection('TABLES');
|
|
2391
2612
|
this.writeDxfTable(filer, 'VPORT', this.tables.viewportTable, this.tables.viewportTable.newIterator(), 'VPORT');
|
|
2392
2613
|
this.writeDxfTable(filer, 'VIEW', this.tables.viewTable, this.tables.viewTable.newIterator(), 'VIEW');
|
|
2614
|
+
this.writeDxfTable(filer, 'UCS', this.tables.ucsTable, this.tables.ucsTable.newIterator(), 'UCS');
|
|
2393
2615
|
this.writeDxfTable(filer, 'LTYPE', this.tables.linetypeTable, this.tables.linetypeTable.newIterator(), 'LTYPE');
|
|
2394
2616
|
this.writeDxfTable(filer, 'LAYER', this.tables.layerTable, this.tables.layerTable.newIterator(), 'LAYER');
|
|
2395
2617
|
this.writeDxfTable(filer, 'STYLE', this.tables.textStyleTable, this.tables.textStyleTable.newIterator(true), 'STYLE');
|
|
2396
2618
|
this.writeDxfTable(filer, 'APPID', this.tables.appIdTable, this.tables.appIdTable.newIterator(), 'APPID');
|
|
2397
2619
|
this.writeDxfTable(filer, 'DIMSTYLE', this.tables.dimStyleTable, this.tables.dimStyleTable.newIterator(), 'DIMSTYLE');
|
|
2398
|
-
if (version.
|
|
2620
|
+
if (version.capabilities.supportsBlockRecordTable) {
|
|
2399
2621
|
this.writeDxfTable(filer, 'BLOCK_RECORD', this.tables.blockTable, this.tables.blockTable.newIterator(), 'BLOCK_RECORD');
|
|
2400
2622
|
}
|
|
2401
2623
|
filer.endSection();
|
|
@@ -2482,14 +2704,17 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2482
2704
|
* @param filer - DXF output writer.
|
|
2483
2705
|
*/
|
|
2484
2706
|
AcDbDatabase.prototype.writeDxfObjectsSection = function (filer) {
|
|
2485
|
-
var e_15, _a, e_16, _b, e_17, _c, e_18, _d, e_19, _e, e_20, _f, e_21, _g;
|
|
2707
|
+
var e_15, _a, e_16, _b, e_17, _c, e_18, _d, e_19, _e, e_20, _f, e_21, _g, e_22, _h, e_23, _j;
|
|
2708
|
+
if (!filer.capabilities.supportsObjectsSection) {
|
|
2709
|
+
return;
|
|
2710
|
+
}
|
|
2486
2711
|
filer.startSection('OBJECTS');
|
|
2487
2712
|
var rootDict = this.objects.dictionary;
|
|
2488
2713
|
rootDict.ownerId = '0';
|
|
2489
2714
|
var writeDictionary = function (dict) {
|
|
2490
2715
|
// Dictionary entries (3/350 pairs) are embedded in the DICTIONARY object.
|
|
2491
2716
|
filer.writeStart('DICTIONARY');
|
|
2492
|
-
dict.dxfOut(filer);
|
|
2717
|
+
dict.dxfOut(filer, true);
|
|
2493
2718
|
};
|
|
2494
2719
|
var ensureRootEntry = function (key, dict) {
|
|
2495
2720
|
if (rootDict.getAt(key) !== dict) {
|
|
@@ -2502,6 +2727,18 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2502
2727
|
}
|
|
2503
2728
|
};
|
|
2504
2729
|
ensureRootEntry('ACAD_LAYOUT', this.objects.layout);
|
|
2730
|
+
if (this.objects.group.numEntries > 0) {
|
|
2731
|
+
ensureRootEntry('ACAD_GROUP', this.objects.group);
|
|
2732
|
+
}
|
|
2733
|
+
else {
|
|
2734
|
+
dropRootEntry('ACAD_GROUP');
|
|
2735
|
+
}
|
|
2736
|
+
if (this.objects.sortentsTable.numEntries > 0) {
|
|
2737
|
+
ensureRootEntry('ACAD_SORTENTS', this.objects.sortentsTable);
|
|
2738
|
+
}
|
|
2739
|
+
else {
|
|
2740
|
+
dropRootEntry('ACAD_SORTENTS');
|
|
2741
|
+
}
|
|
2505
2742
|
if (this.objects.mleaderStyle.numEntries > 0) {
|
|
2506
2743
|
ensureRootEntry('ACAD_MLEADERSTYLE', this.objects.mleaderStyle);
|
|
2507
2744
|
}
|
|
@@ -2528,6 +2765,12 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2528
2765
|
}
|
|
2529
2766
|
writeDictionary(rootDict);
|
|
2530
2767
|
writeDictionary(this.objects.layout);
|
|
2768
|
+
if (this.objects.group.numEntries > 0) {
|
|
2769
|
+
writeDictionary(this.objects.group);
|
|
2770
|
+
}
|
|
2771
|
+
if (this.objects.sortentsTable.numEntries > 0) {
|
|
2772
|
+
writeDictionary(this.objects.sortentsTable);
|
|
2773
|
+
}
|
|
2531
2774
|
if (this.objects.mleaderStyle.numEntries > 0) {
|
|
2532
2775
|
writeDictionary(this.objects.mleaderStyle);
|
|
2533
2776
|
}
|
|
@@ -2541,103 +2784,133 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2541
2784
|
writeDictionary(this.objects.xrecord);
|
|
2542
2785
|
}
|
|
2543
2786
|
try {
|
|
2544
|
-
for (var
|
|
2545
|
-
var
|
|
2787
|
+
for (var _k = __values(this.objects.layout.entries()), _l = _k.next(); !_l.done; _l = _k.next()) {
|
|
2788
|
+
var _m = __read(_l.value, 2), _ = _m[0], layout = _m[1];
|
|
2546
2789
|
filer.writeStart('LAYOUT');
|
|
2547
|
-
layout.dxfOut(filer);
|
|
2790
|
+
layout.dxfOut(filer, true);
|
|
2548
2791
|
}
|
|
2549
2792
|
}
|
|
2550
2793
|
catch (e_15_1) { e_15 = { error: e_15_1 }; }
|
|
2551
2794
|
finally {
|
|
2552
2795
|
try {
|
|
2553
|
-
if (
|
|
2796
|
+
if (_l && !_l.done && (_a = _k.return)) _a.call(_k);
|
|
2554
2797
|
}
|
|
2555
2798
|
finally { if (e_15) throw e_15.error; }
|
|
2556
2799
|
}
|
|
2557
2800
|
try {
|
|
2558
|
-
for (var
|
|
2559
|
-
var
|
|
2560
|
-
|
|
2561
|
-
|
|
2801
|
+
for (var _o = __values(this.objects.group.entries()), _p = _o.next(); !_p.done; _p = _o.next()) {
|
|
2802
|
+
var _q = __read(_p.value, 2), key = _q[0], group = _q[1];
|
|
2803
|
+
if (!group.name)
|
|
2804
|
+
group.name = key;
|
|
2805
|
+
filer.writeStart('GROUP');
|
|
2806
|
+
group.dxfOut(filer, true);
|
|
2562
2807
|
}
|
|
2563
2808
|
}
|
|
2564
2809
|
catch (e_16_1) { e_16 = { error: e_16_1 }; }
|
|
2565
2810
|
finally {
|
|
2566
2811
|
try {
|
|
2567
|
-
if (
|
|
2812
|
+
if (_p && !_p.done && (_b = _o.return)) _b.call(_o);
|
|
2568
2813
|
}
|
|
2569
2814
|
finally { if (e_16) throw e_16.error; }
|
|
2570
2815
|
}
|
|
2571
2816
|
try {
|
|
2572
|
-
for (var
|
|
2573
|
-
var
|
|
2574
|
-
filer.writeStart('
|
|
2575
|
-
|
|
2817
|
+
for (var _r = __values(this.objects.sortentsTable.entries()), _s = _r.next(); !_s.done; _s = _r.next()) {
|
|
2818
|
+
var _t = __read(_s.value, 2), _ = _t[0], sortents = _t[1];
|
|
2819
|
+
filer.writeStart('SORTENTSTABLE');
|
|
2820
|
+
sortents.dxfOut(filer, true);
|
|
2576
2821
|
}
|
|
2577
2822
|
}
|
|
2578
2823
|
catch (e_17_1) { e_17 = { error: e_17_1 }; }
|
|
2579
2824
|
finally {
|
|
2580
2825
|
try {
|
|
2581
|
-
if (
|
|
2826
|
+
if (_s && !_s.done && (_c = _r.return)) _c.call(_r);
|
|
2582
2827
|
}
|
|
2583
2828
|
finally { if (e_17) throw e_17.error; }
|
|
2584
2829
|
}
|
|
2585
2830
|
try {
|
|
2586
|
-
for (var
|
|
2587
|
-
var
|
|
2588
|
-
filer.writeStart('
|
|
2589
|
-
|
|
2831
|
+
for (var _u = __values(this.objects.imageDefinition.entries()), _v = _u.next(); !_v.done; _v = _u.next()) {
|
|
2832
|
+
var _w = __read(_v.value, 2), _ = _w[0], imageDef = _w[1];
|
|
2833
|
+
filer.writeStart('IMAGEDEF');
|
|
2834
|
+
imageDef.dxfOut(filer, true);
|
|
2590
2835
|
}
|
|
2591
2836
|
}
|
|
2592
2837
|
catch (e_18_1) { e_18 = { error: e_18_1 }; }
|
|
2593
2838
|
finally {
|
|
2594
2839
|
try {
|
|
2595
|
-
if (
|
|
2840
|
+
if (_v && !_v.done && (_d = _u.return)) _d.call(_u);
|
|
2596
2841
|
}
|
|
2597
2842
|
finally { if (e_18) throw e_18.error; }
|
|
2598
2843
|
}
|
|
2599
2844
|
try {
|
|
2600
|
-
for (var
|
|
2601
|
-
var
|
|
2602
|
-
filer.writeStart('
|
|
2603
|
-
|
|
2845
|
+
for (var _x = __values(this.objects.layerFilter.entries()), _y = _x.next(); !_y.done; _y = _x.next()) {
|
|
2846
|
+
var _z = __read(_y.value, 2), _ = _z[0], layerFilter = _z[1];
|
|
2847
|
+
filer.writeStart('LAYER_FILTER');
|
|
2848
|
+
layerFilter.dxfOut(filer, true);
|
|
2604
2849
|
}
|
|
2605
2850
|
}
|
|
2606
2851
|
catch (e_19_1) { e_19 = { error: e_19_1 }; }
|
|
2607
2852
|
finally {
|
|
2608
2853
|
try {
|
|
2609
|
-
if (
|
|
2854
|
+
if (_y && !_y.done && (_e = _x.return)) _e.call(_x);
|
|
2610
2855
|
}
|
|
2611
2856
|
finally { if (e_19) throw e_19.error; }
|
|
2612
2857
|
}
|
|
2613
2858
|
try {
|
|
2614
|
-
for (var
|
|
2615
|
-
var
|
|
2616
|
-
filer.writeStart('
|
|
2617
|
-
|
|
2859
|
+
for (var _0 = __values(this.objects.layerIndex.entries()), _1 = _0.next(); !_1.done; _1 = _0.next()) {
|
|
2860
|
+
var _2 = __read(_1.value, 2), _ = _2[0], layerIndex = _2[1];
|
|
2861
|
+
filer.writeStart('LAYER_INDEX');
|
|
2862
|
+
layerIndex.dxfOut(filer, true);
|
|
2618
2863
|
}
|
|
2619
2864
|
}
|
|
2620
2865
|
catch (e_20_1) { e_20 = { error: e_20_1 }; }
|
|
2621
2866
|
finally {
|
|
2622
2867
|
try {
|
|
2623
|
-
if (
|
|
2868
|
+
if (_1 && !_1.done && (_f = _0.return)) _f.call(_0);
|
|
2624
2869
|
}
|
|
2625
2870
|
finally { if (e_20) throw e_20.error; }
|
|
2626
2871
|
}
|
|
2627
2872
|
try {
|
|
2628
|
-
for (var
|
|
2629
|
-
var
|
|
2630
|
-
filer.writeStart('
|
|
2631
|
-
|
|
2873
|
+
for (var _3 = __values(this.objects.mleaderStyle.entries()), _4 = _3.next(); !_4.done; _4 = _3.next()) {
|
|
2874
|
+
var _5 = __read(_4.value, 2), _ = _5[0], mleaderStyle = _5[1];
|
|
2875
|
+
filer.writeStart('MLEADERSTYLE');
|
|
2876
|
+
mleaderStyle.dxfOut(filer, true);
|
|
2632
2877
|
}
|
|
2633
2878
|
}
|
|
2634
2879
|
catch (e_21_1) { e_21 = { error: e_21_1 }; }
|
|
2635
2880
|
finally {
|
|
2636
2881
|
try {
|
|
2637
|
-
if (
|
|
2882
|
+
if (_4 && !_4.done && (_g = _3.return)) _g.call(_3);
|
|
2638
2883
|
}
|
|
2639
2884
|
finally { if (e_21) throw e_21.error; }
|
|
2640
2885
|
}
|
|
2886
|
+
try {
|
|
2887
|
+
for (var _6 = __values(this.objects.mlineStyle.entries()), _7 = _6.next(); !_7.done; _7 = _6.next()) {
|
|
2888
|
+
var _8 = __read(_7.value, 2), _ = _8[0], mlineStyle = _8[1];
|
|
2889
|
+
filer.writeStart('MLINESTYLE');
|
|
2890
|
+
mlineStyle.dxfOut(filer, true);
|
|
2891
|
+
}
|
|
2892
|
+
}
|
|
2893
|
+
catch (e_22_1) { e_22 = { error: e_22_1 }; }
|
|
2894
|
+
finally {
|
|
2895
|
+
try {
|
|
2896
|
+
if (_7 && !_7.done && (_h = _6.return)) _h.call(_6);
|
|
2897
|
+
}
|
|
2898
|
+
finally { if (e_22) throw e_22.error; }
|
|
2899
|
+
}
|
|
2900
|
+
try {
|
|
2901
|
+
for (var _9 = __values(this.objects.xrecord.entries()), _10 = _9.next(); !_10.done; _10 = _9.next()) {
|
|
2902
|
+
var _11 = __read(_10.value, 2), _ = _11[0], xrecord = _11[1];
|
|
2903
|
+
filer.writeStart('XRECORD');
|
|
2904
|
+
xrecord.dxfOut(filer, true);
|
|
2905
|
+
}
|
|
2906
|
+
}
|
|
2907
|
+
catch (e_23_1) { e_23 = { error: e_23_1 }; }
|
|
2908
|
+
finally {
|
|
2909
|
+
try {
|
|
2910
|
+
if (_10 && !_10.done && (_j = _9.return)) _j.call(_9);
|
|
2911
|
+
}
|
|
2912
|
+
finally { if (e_23) throw e_23.error; }
|
|
2913
|
+
}
|
|
2641
2914
|
this.writeAcLyLayerFilterObjects(filer);
|
|
2642
2915
|
filer.endSection();
|
|
2643
2916
|
};
|
|
@@ -2649,7 +2922,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2649
2922
|
* @param filer - DXF output writer.
|
|
2650
2923
|
*/
|
|
2651
2924
|
AcDbDatabase.prototype.writeAcLyLayerFilterObjects = function (filer) {
|
|
2652
|
-
var
|
|
2925
|
+
var e_24, _a, e_25, _b, e_26, _c, e_27, _d, e_28, _e;
|
|
2653
2926
|
var _this = this;
|
|
2654
2927
|
var _f;
|
|
2655
2928
|
var serialized = acdbSerializeLayerFilterTree(this._layerFilters);
|
|
@@ -2666,7 +2939,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2666
2939
|
var rootAclyEntries = [];
|
|
2667
2940
|
var rootAcadEntries = [];
|
|
2668
2941
|
var emit = function (node, parentAclyHandle, addToLegacy) {
|
|
2669
|
-
var
|
|
2942
|
+
var e_29, _a;
|
|
2670
2943
|
var xHandle = _this.generateHandle();
|
|
2671
2944
|
var extensionDictionaryId;
|
|
2672
2945
|
if (node.children.length > 0) {
|
|
@@ -2682,12 +2955,12 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2682
2955
|
});
|
|
2683
2956
|
}
|
|
2684
2957
|
}
|
|
2685
|
-
catch (
|
|
2958
|
+
catch (e_29_1) { e_29 = { error: e_29_1 }; }
|
|
2686
2959
|
finally {
|
|
2687
2960
|
try {
|
|
2688
2961
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
2689
2962
|
}
|
|
2690
|
-
finally { if (
|
|
2963
|
+
finally { if (e_29) throw e_29.error; }
|
|
2691
2964
|
}
|
|
2692
2965
|
dicts.push({
|
|
2693
2966
|
handle: extHandle,
|
|
@@ -2721,12 +2994,12 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2721
2994
|
});
|
|
2722
2995
|
}
|
|
2723
2996
|
}
|
|
2724
|
-
catch (
|
|
2997
|
+
catch (e_24_1) { e_24 = { error: e_24_1 }; }
|
|
2725
2998
|
finally {
|
|
2726
2999
|
try {
|
|
2727
3000
|
if (_h && !_h.done && (_a = _g.return)) _a.call(_g);
|
|
2728
3001
|
}
|
|
2729
|
-
finally { if (
|
|
3002
|
+
finally { if (e_24) throw e_24.error; }
|
|
2730
3003
|
}
|
|
2731
3004
|
var layerExtEntries = new Map();
|
|
2732
3005
|
var existingLayerExt = this.getObjectById(layerExtHandle);
|
|
@@ -2737,12 +3010,12 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2737
3010
|
layerExtEntries.set(key, value.objectId);
|
|
2738
3011
|
}
|
|
2739
3012
|
}
|
|
2740
|
-
catch (
|
|
3013
|
+
catch (e_25_1) { e_25 = { error: e_25_1 }; }
|
|
2741
3014
|
finally {
|
|
2742
3015
|
try {
|
|
2743
3016
|
if (_k && !_k.done && (_b = _j.return)) _b.call(_j);
|
|
2744
3017
|
}
|
|
2745
|
-
finally { if (
|
|
3018
|
+
finally { if (e_25) throw e_25.error; }
|
|
2746
3019
|
}
|
|
2747
3020
|
}
|
|
2748
3021
|
layerExtEntries.set(ACLY_DICTIONARY_NAME, aclyHandle);
|
|
@@ -2773,27 +3046,27 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2773
3046
|
filer.writeInt16(280, 1);
|
|
2774
3047
|
filer.writeInt16(281, 1);
|
|
2775
3048
|
try {
|
|
2776
|
-
for (var _m = (
|
|
3049
|
+
for (var _m = (e_27 = void 0, __values(dict.entries)), _o = _m.next(); !_o.done; _o = _m.next()) {
|
|
2777
3050
|
var entry = _o.value;
|
|
2778
3051
|
filer.writeString(3, entry.name);
|
|
2779
3052
|
filer.writeObjectId(350, entry.id);
|
|
2780
3053
|
}
|
|
2781
3054
|
}
|
|
2782
|
-
catch (
|
|
3055
|
+
catch (e_27_1) { e_27 = { error: e_27_1 }; }
|
|
2783
3056
|
finally {
|
|
2784
3057
|
try {
|
|
2785
3058
|
if (_o && !_o.done && (_d = _m.return)) _d.call(_m);
|
|
2786
3059
|
}
|
|
2787
|
-
finally { if (
|
|
3060
|
+
finally { if (e_27) throw e_27.error; }
|
|
2788
3061
|
}
|
|
2789
3062
|
}
|
|
2790
3063
|
}
|
|
2791
|
-
catch (
|
|
3064
|
+
catch (e_26_1) { e_26 = { error: e_26_1 }; }
|
|
2792
3065
|
finally {
|
|
2793
3066
|
try {
|
|
2794
3067
|
if (dicts_1_1 && !dicts_1_1.done && (_c = dicts_1.return)) _c.call(dicts_1);
|
|
2795
3068
|
}
|
|
2796
|
-
finally { if (
|
|
3069
|
+
finally { if (e_26) throw e_26.error; }
|
|
2797
3070
|
}
|
|
2798
3071
|
try {
|
|
2799
3072
|
for (var xrecs_1 = __values(xrecs), xrecs_1_1 = xrecs_1.next(); !xrecs_1_1.done; xrecs_1_1 = xrecs_1.next()) {
|
|
@@ -2809,12 +3082,12 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2809
3082
|
xrecord.dxfOut(filer);
|
|
2810
3083
|
}
|
|
2811
3084
|
}
|
|
2812
|
-
catch (
|
|
3085
|
+
catch (e_28_1) { e_28 = { error: e_28_1 }; }
|
|
2813
3086
|
finally {
|
|
2814
3087
|
try {
|
|
2815
3088
|
if (xrecs_1_1 && !xrecs_1_1.done && (_e = xrecs_1.return)) _e.call(xrecs_1);
|
|
2816
3089
|
}
|
|
2817
|
-
finally { if (
|
|
3090
|
+
finally { if (e_28) throw e_28.error; }
|
|
2818
3091
|
}
|
|
2819
3092
|
};
|
|
2820
3093
|
/**
|
|
@@ -2827,7 +3100,7 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2827
3100
|
* @param recordType - DXF record type name for each table record.
|
|
2828
3101
|
*/
|
|
2829
3102
|
AcDbDatabase.prototype.writeDxfTable = function (filer, tableName, table, records, recordType) {
|
|
2830
|
-
var
|
|
3103
|
+
var e_30, _a;
|
|
2831
3104
|
var items = __spreadArray([], __read(records), false);
|
|
2832
3105
|
filer.startTable(tableName);
|
|
2833
3106
|
table.dxfOut(filer);
|
|
@@ -2840,15 +3113,15 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2840
3113
|
continue;
|
|
2841
3114
|
}
|
|
2842
3115
|
filer.writeStart(recordType);
|
|
2843
|
-
record.dxfOut(filer);
|
|
3116
|
+
record.dxfOut(filer, true);
|
|
2844
3117
|
}
|
|
2845
3118
|
}
|
|
2846
|
-
catch (
|
|
3119
|
+
catch (e_30_1) { e_30 = { error: e_30_1 }; }
|
|
2847
3120
|
finally {
|
|
2848
3121
|
try {
|
|
2849
3122
|
if (items_1_1 && !items_1_1.done && (_a = items_1.return)) _a.call(items_1);
|
|
2850
3123
|
}
|
|
2851
|
-
finally { if (
|
|
3124
|
+
finally { if (e_30) throw e_30.error; }
|
|
2852
3125
|
}
|
|
2853
3126
|
filer.endTable();
|
|
2854
3127
|
};
|
|
@@ -2863,8 +3136,36 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2863
3136
|
* @param entity - Entity to serialize.
|
|
2864
3137
|
*/
|
|
2865
3138
|
AcDbDatabase.prototype.writeDxfEntity = function (filer, entity) {
|
|
3139
|
+
if (entity instanceof AcDbPolyline &&
|
|
3140
|
+
!filer.capabilities.supportsLwPolyline) {
|
|
3141
|
+
filer.writeStart('POLYLINE');
|
|
3142
|
+
entity.dxfOutAs2dPolyline(filer, true);
|
|
3143
|
+
return;
|
|
3144
|
+
}
|
|
2866
3145
|
filer.writeStart(entity.dxfTypeName);
|
|
2867
|
-
entity.dxfOut(filer);
|
|
3146
|
+
entity.dxfOut(filer, true);
|
|
3147
|
+
};
|
|
3148
|
+
/**
|
|
3149
|
+
* Writes THUMBNAILIMAGE when preview bytes are present and export requested.
|
|
3150
|
+
*/
|
|
3151
|
+
AcDbDatabase.prototype.writeDxfThumbnailImageSection = function (filer, saveThumbnailImage) {
|
|
3152
|
+
if (saveThumbnailImage === void 0) { saveThumbnailImage = false; }
|
|
3153
|
+
var bytes = this._thumbnailImage;
|
|
3154
|
+
if (!saveThumbnailImage || !bytes || bytes.length === 0) {
|
|
3155
|
+
return;
|
|
3156
|
+
}
|
|
3157
|
+
if (!filer.capabilities.supportsObjectsSection) {
|
|
3158
|
+
// Thumbnail section is post-R12; skip for AC1009.
|
|
3159
|
+
return;
|
|
3160
|
+
}
|
|
3161
|
+
var chunkSize = 127;
|
|
3162
|
+
filer.startSection('THUMBNAILIMAGE');
|
|
3163
|
+
filer.writeInt32(90, bytes.length);
|
|
3164
|
+
for (var offset = 0; offset < bytes.length; offset += chunkSize) {
|
|
3165
|
+
var chunk = bytes.subarray(offset, offset + chunkSize);
|
|
3166
|
+
filer.writeString(310, acdbBytesToHexString(chunk));
|
|
3167
|
+
}
|
|
3168
|
+
filer.endSection();
|
|
2868
3169
|
};
|
|
2869
3170
|
/**
|
|
2870
3171
|
* Clears all data from the database.
|
|
@@ -2885,15 +3186,19 @@ var AcDbDatabase = /** @class */ (function (_super) {
|
|
|
2885
3186
|
this._tables.dimStyleTable.removeAll();
|
|
2886
3187
|
this._tables.linetypeTable.removeAll();
|
|
2887
3188
|
this._tables.textStyleTable.removeAll();
|
|
3189
|
+
this._tables.ucsTable.removeAll();
|
|
2888
3190
|
this._tables.viewTable.removeAll();
|
|
2889
3191
|
this._tables.layerTable.removeAll();
|
|
2890
3192
|
this._tables.viewportTable.removeAll();
|
|
3193
|
+
this._tables.appIdTable.removeAll();
|
|
2891
3194
|
this._objects.layout.removeAll();
|
|
3195
|
+
this._objects.group.removeAll();
|
|
2892
3196
|
this._objects.imageDefinition.removeAll();
|
|
2893
3197
|
this._objects.layerFilter.removeAll();
|
|
2894
3198
|
this._objects.layerIndex.removeAll();
|
|
2895
3199
|
this._objects.mleaderStyle.removeAll();
|
|
2896
3200
|
this._objects.mlineStyle.removeAll();
|
|
3201
|
+
this._objects.sortentsTable.removeAll();
|
|
2897
3202
|
this._objects.xrecord.removeAll();
|
|
2898
3203
|
this._layerFilters = new AcLyLayerFilterTree();
|
|
2899
3204
|
this._currentSpace = undefined;
|