@mlightcad/data-model 1.0.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/LICENSE +21 -0
- package/README.md +116 -0
- package/dist/data-model.js +19887 -0
- package/dist/data-model.umd.cjs +5 -0
- package/lib/base/AcDbHostApplicationServices.d.ts +30 -0
- package/lib/base/AcDbHostApplicationServices.d.ts.map +1 -0
- package/lib/base/AcDbHostApplicationServices.js +54 -0
- package/lib/base/AcDbHostApplicationServices.js.map +1 -0
- package/lib/base/AcDbObject.d.ts +70 -0
- package/lib/base/AcDbObject.d.ts.map +1 -0
- package/lib/base/AcDbObject.js +113 -0
- package/lib/base/AcDbObject.js.map +1 -0
- package/lib/base/index.d.ts +3 -0
- package/lib/base/index.d.ts.map +1 -0
- package/lib/base/index.js +3 -0
- package/lib/base/index.js.map +1 -0
- package/lib/converter/AcDbBatchProcessing.d.ts +43 -0
- package/lib/converter/AcDbBatchProcessing.d.ts.map +1 -0
- package/lib/converter/AcDbBatchProcessing.js +165 -0
- package/lib/converter/AcDbBatchProcessing.js.map +1 -0
- package/lib/converter/AcDbDxfConverter.d.ts +39 -0
- package/lib/converter/AcDbDxfConverter.d.ts.map +1 -0
- package/lib/converter/AcDbDxfConverter.js +567 -0
- package/lib/converter/AcDbDxfConverter.js.map +1 -0
- package/lib/converter/AcDbDxfParseWorker.d.ts +2 -0
- package/lib/converter/AcDbDxfParseWorker.d.ts.map +1 -0
- package/lib/converter/AcDbDxfParseWorker.js +6 -0
- package/lib/converter/AcDbDxfParseWorker.js.map +1 -0
- package/lib/converter/AcDbEntitiyConverter.d.ts +36 -0
- package/lib/converter/AcDbEntitiyConverter.d.ts.map +1 -0
- package/lib/converter/AcDbEntitiyConverter.js +491 -0
- package/lib/converter/AcDbEntitiyConverter.js.map +1 -0
- package/lib/converter/AcDbObjectConverter.d.ts +9 -0
- package/lib/converter/AcDbObjectConverter.d.ts.map +1 -0
- package/lib/converter/AcDbObjectConverter.js +30 -0
- package/lib/converter/AcDbObjectConverter.js.map +1 -0
- package/lib/converter/index.d.ts +3 -0
- package/lib/converter/index.d.ts.map +1 -0
- package/lib/converter/index.js +3 -0
- package/lib/converter/index.js.map +1 -0
- package/lib/database/AcDbBlockTable.d.ts +15 -0
- package/lib/database/AcDbBlockTable.d.ts.map +1 -0
- package/lib/database/AcDbBlockTable.js +46 -0
- package/lib/database/AcDbBlockTable.js.map +1 -0
- package/lib/database/AcDbBlockTableRecord.d.ts +49 -0
- package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbBlockTableRecord.js +108 -0
- package/lib/database/AcDbBlockTableRecord.js.map +1 -0
- package/lib/database/AcDbDatabase.d.ts +211 -0
- package/lib/database/AcDbDatabase.d.ts.map +1 -0
- package/lib/database/AcDbDatabase.js +395 -0
- package/lib/database/AcDbDatabase.js.map +1 -0
- package/lib/database/AcDbDatabaseConverter.d.ts +120 -0
- package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -0
- package/lib/database/AcDbDatabaseConverter.js +376 -0
- package/lib/database/AcDbDatabaseConverter.js.map +1 -0
- package/lib/database/AcDbDatabaseConverterManager.d.ts +59 -0
- package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -0
- package/lib/database/AcDbDatabaseConverterManager.js +98 -0
- package/lib/database/AcDbDatabaseConverterManager.js.map +1 -0
- package/lib/database/AcDbDatabaseConverterRegister.d.ts +54 -0
- package/lib/database/AcDbDatabaseConverterRegister.d.ts.map +1 -0
- package/lib/database/AcDbDatabaseConverterRegister.js +84 -0
- package/lib/database/AcDbDatabaseConverterRegister.js.map +1 -0
- package/lib/database/AcDbDimStyleTable.d.ts +11 -0
- package/lib/database/AcDbDimStyleTable.d.ts.map +1 -0
- package/lib/database/AcDbDimStyleTable.js +29 -0
- package/lib/database/AcDbDimStyleTable.js.map +1 -0
- package/lib/database/AcDbDimStyleTableRecord.d.ts +682 -0
- package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbDimStyleTableRecord.js +1250 -0
- package/lib/database/AcDbDimStyleTableRecord.js.map +1 -0
- package/lib/database/AcDbLayerTable.d.ts +14 -0
- package/lib/database/AcDbLayerTable.d.ts.map +1 -0
- package/lib/database/AcDbLayerTable.js +55 -0
- package/lib/database/AcDbLayerTable.js.map +1 -0
- package/lib/database/AcDbLayerTableRecord.d.ts +98 -0
- package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbLayerTableRecord.js +235 -0
- package/lib/database/AcDbLayerTableRecord.js.map +1 -0
- package/lib/database/AcDbLinetypeTable.d.ts +11 -0
- package/lib/database/AcDbLinetypeTable.d.ts.map +1 -0
- package/lib/database/AcDbLinetypeTable.js +29 -0
- package/lib/database/AcDbLinetypeTable.js.map +1 -0
- package/lib/database/AcDbLinetypeTableRecord.d.ts +47 -0
- package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbLinetypeTableRecord.js +97 -0
- package/lib/database/AcDbLinetypeTableRecord.js.map +1 -0
- package/lib/database/AcDbSymbolTable.d.ts +74 -0
- package/lib/database/AcDbSymbolTable.d.ts.map +1 -0
- package/lib/database/AcDbSymbolTable.js +136 -0
- package/lib/database/AcDbSymbolTable.js.map +1 -0
- package/lib/database/AcDbSymbolTableRecord.d.ts +16 -0
- package/lib/database/AcDbSymbolTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbSymbolTableRecord.js +44 -0
- package/lib/database/AcDbSymbolTableRecord.js.map +1 -0
- package/lib/database/AcDbTextStyleTable.d.ts +14 -0
- package/lib/database/AcDbTextStyleTable.d.ts.map +1 -0
- package/lib/database/AcDbTextStyleTable.js +78 -0
- package/lib/database/AcDbTextStyleTable.js.map +1 -0
- package/lib/database/AcDbTextStyleTableRecord.d.ts +67 -0
- package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbTextStyleTableRecord.js +166 -0
- package/lib/database/AcDbTextStyleTableRecord.js.map +1 -0
- package/lib/database/AcDbViewportTable.d.ts +11 -0
- package/lib/database/AcDbViewportTable.d.ts.map +1 -0
- package/lib/database/AcDbViewportTable.js +29 -0
- package/lib/database/AcDbViewportTable.js.map +1 -0
- package/lib/database/AcDbViewportTableRecord.d.ts +89 -0
- package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbViewportTableRecord.js +262 -0
- package/lib/database/AcDbViewportTableRecord.js.map +1 -0
- package/lib/database/index.d.ts +18 -0
- package/lib/database/index.d.ts.map +1 -0
- package/lib/database/index.js +18 -0
- package/lib/database/index.js.map +1 -0
- package/lib/entity/AcDbArc.d.ts +67 -0
- package/lib/entity/AcDbArc.d.ts.map +1 -0
- package/lib/entity/AcDbArc.js +154 -0
- package/lib/entity/AcDbArc.js.map +1 -0
- package/lib/entity/AcDbBlockReference.d.ts +54 -0
- package/lib/entity/AcDbBlockReference.d.ts.map +1 -0
- package/lib/entity/AcDbBlockReference.js +168 -0
- package/lib/entity/AcDbBlockReference.js.map +1 -0
- package/lib/entity/AcDbCircle.d.ts +51 -0
- package/lib/entity/AcDbCircle.d.ts.map +1 -0
- package/lib/entity/AcDbCircle.js +115 -0
- package/lib/entity/AcDbCircle.js.map +1 -0
- package/lib/entity/AcDbCurve.d.ts +9 -0
- package/lib/entity/AcDbCurve.d.ts.map +1 -0
- package/lib/entity/AcDbCurve.js +25 -0
- package/lib/entity/AcDbCurve.js.map +1 -0
- package/lib/entity/AcDbEllipse.d.ts +53 -0
- package/lib/entity/AcDbEllipse.d.ts.map +1 -0
- package/lib/entity/AcDbEllipse.js +119 -0
- package/lib/entity/AcDbEllipse.js.map +1 -0
- package/lib/entity/AcDbEntity.d.ts +103 -0
- package/lib/entity/AcDbEntity.d.ts.map +1 -0
- package/lib/entity/AcDbEntity.js +292 -0
- package/lib/entity/AcDbEntity.js.map +1 -0
- package/lib/entity/AcDbHatch.d.ts +116 -0
- package/lib/entity/AcDbHatch.d.ts.map +1 -0
- package/lib/entity/AcDbHatch.js +200 -0
- package/lib/entity/AcDbHatch.js.map +1 -0
- package/lib/entity/AcDbLeader.d.ts +94 -0
- package/lib/entity/AcDbLeader.d.ts.map +1 -0
- package/lib/entity/AcDbLeader.js +217 -0
- package/lib/entity/AcDbLeader.js.map +1 -0
- package/lib/entity/AcDbLine.d.ts +55 -0
- package/lib/entity/AcDbLine.d.ts.map +1 -0
- package/lib/entity/AcDbLine.js +158 -0
- package/lib/entity/AcDbLine.js.map +1 -0
- package/lib/entity/AcDbMText.d.ts +119 -0
- package/lib/entity/AcDbMText.d.ts.map +1 -0
- package/lib/entity/AcDbMText.js +300 -0
- package/lib/entity/AcDbMText.js.map +1 -0
- package/lib/entity/AcDbPoint.d.ts +32 -0
- package/lib/entity/AcDbPoint.d.ts.map +1 -0
- package/lib/entity/AcDbPoint.js +75 -0
- package/lib/entity/AcDbPoint.js.map +1 -0
- package/lib/entity/AcDbPolyline.d.ts +72 -0
- package/lib/entity/AcDbPolyline.d.ts.map +1 -0
- package/lib/entity/AcDbPolyline.js +154 -0
- package/lib/entity/AcDbPolyline.js.map +1 -0
- package/lib/entity/AcDbRasterImage.d.ts +163 -0
- package/lib/entity/AcDbRasterImage.d.ts.map +1 -0
- package/lib/entity/AcDbRasterImage.js +406 -0
- package/lib/entity/AcDbRasterImage.js.map +1 -0
- package/lib/entity/AcDbRay.d.ts +42 -0
- package/lib/entity/AcDbRay.d.ts.map +1 -0
- package/lib/entity/AcDbRay.js +102 -0
- package/lib/entity/AcDbRay.js.map +1 -0
- package/lib/entity/AcDbSpline.d.ts +37 -0
- package/lib/entity/AcDbSpline.d.ts.map +1 -0
- package/lib/entity/AcDbSpline.js +71 -0
- package/lib/entity/AcDbSpline.js.map +1 -0
- package/lib/entity/AcDbTable.d.ts +141 -0
- package/lib/entity/AcDbTable.d.ts.map +1 -0
- package/lib/entity/AcDbTable.js +358 -0
- package/lib/entity/AcDbTable.js.map +1 -0
- package/lib/entity/AcDbText.d.ts +110 -0
- package/lib/entity/AcDbText.d.ts.map +1 -0
- package/lib/entity/AcDbText.js +255 -0
- package/lib/entity/AcDbText.js.map +1 -0
- package/lib/entity/AcDbTrace.d.ts +64 -0
- package/lib/entity/AcDbTrace.d.ts.map +1 -0
- package/lib/entity/AcDbTrace.js +145 -0
- package/lib/entity/AcDbTrace.js.map +1 -0
- package/lib/entity/AcDbViewport.d.ts +58 -0
- package/lib/entity/AcDbViewport.d.ts.map +1 -0
- package/lib/entity/AcDbViewport.js +179 -0
- package/lib/entity/AcDbViewport.js.map +1 -0
- package/lib/entity/AcDbWipeout.d.ts +9 -0
- package/lib/entity/AcDbWipeout.d.ts.map +1 -0
- package/lib/entity/AcDbWipeout.js +40 -0
- package/lib/entity/AcDbWipeout.js.map +1 -0
- package/lib/entity/AcDbXline.d.ts +42 -0
- package/lib/entity/AcDbXline.d.ts.map +1 -0
- package/lib/entity/AcDbXline.js +102 -0
- package/lib/entity/AcDbXline.js.map +1 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +46 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.js +111 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbAlignedDimension.d.ts +77 -0
- package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbAlignedDimension.js +203 -0
- package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbArcDimension.d.ts +46 -0
- package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbArcDimension.js +111 -0
- package/lib/entity/dimension/AcDbArcDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbDiametricDimension.d.ts +69 -0
- package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbDiametricDimension.js +199 -0
- package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbDimension.d.ts +161 -0
- package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbDimension.js +375 -0
- package/lib/entity/dimension/AcDbDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +44 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.js +99 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbRadialDimension.d.ts +69 -0
- package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbRadialDimension.js +148 -0
- package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -0
- package/lib/entity/dimension/index.d.ts +8 -0
- package/lib/entity/dimension/index.d.ts.map +1 -0
- package/lib/entity/dimension/index.js +8 -0
- package/lib/entity/dimension/index.js.map +1 -0
- package/lib/entity/index.d.ts +23 -0
- package/lib/entity/index.d.ts.map +1 -0
- package/lib/entity/index.js +23 -0
- package/lib/entity/index.js.map +1 -0
- package/lib/index.d.ts +10 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +10 -0
- package/lib/index.js.map +1 -0
- package/lib/misc/AcDbAngleUnits.d.ts +8 -0
- package/lib/misc/AcDbAngleUnits.d.ts.map +1 -0
- package/lib/misc/AcDbAngleUnits.js +9 -0
- package/lib/misc/AcDbAngleUnits.js.map +1 -0
- package/lib/misc/AcDbConstants.d.ts +4 -0
- package/lib/misc/AcDbConstants.d.ts.map +1 -0
- package/lib/misc/AcDbConstants.js +4 -0
- package/lib/misc/AcDbConstants.js.map +1 -0
- package/lib/misc/AcDbDimArrowType.d.ts +86 -0
- package/lib/misc/AcDbDimArrowType.d.ts.map +1 -0
- package/lib/misc/AcDbDimArrowType.js +87 -0
- package/lib/misc/AcDbDimArrowType.js.map +1 -0
- package/lib/misc/AcDbObjectIterator.d.ts +16 -0
- package/lib/misc/AcDbObjectIterator.d.ts.map +1 -0
- package/lib/misc/AcDbObjectIterator.js +28 -0
- package/lib/misc/AcDbObjectIterator.js.map +1 -0
- package/lib/misc/AcDbOsnapMode.d.ts +43 -0
- package/lib/misc/AcDbOsnapMode.d.ts.map +1 -0
- package/lib/misc/AcDbOsnapMode.js +44 -0
- package/lib/misc/AcDbOsnapMode.js.map +1 -0
- package/lib/misc/AcDbRenderingCache.d.ts +61 -0
- package/lib/misc/AcDbRenderingCache.d.ts.map +1 -0
- package/lib/misc/AcDbRenderingCache.js +154 -0
- package/lib/misc/AcDbRenderingCache.js.map +1 -0
- package/lib/misc/AcDbUnitsValue.d.ts +51 -0
- package/lib/misc/AcDbUnitsValue.d.ts.map +1 -0
- package/lib/misc/AcDbUnitsValue.js +71 -0
- package/lib/misc/AcDbUnitsValue.js.map +1 -0
- package/lib/misc/index.d.ts +8 -0
- package/lib/misc/index.d.ts.map +1 -0
- package/lib/misc/index.js +8 -0
- package/lib/misc/index.js.map +1 -0
- package/lib/object/AcDbDictionary.d.ts +80 -0
- package/lib/object/AcDbDictionary.d.ts.map +1 -0
- package/lib/object/AcDbDictionary.js +144 -0
- package/lib/object/AcDbDictionary.js.map +1 -0
- package/lib/object/AcDbRasterImageDef.d.ts +25 -0
- package/lib/object/AcDbRasterImageDef.d.ts.map +1 -0
- package/lib/object/AcDbRasterImageDef.js +54 -0
- package/lib/object/AcDbRasterImageDef.js.map +1 -0
- package/lib/object/index.d.ts +4 -0
- package/lib/object/index.d.ts.map +1 -0
- package/lib/object/index.js +4 -0
- package/lib/object/index.js.map +1 -0
- package/lib/object/layout/AcDbLayout.d.ts +51 -0
- package/lib/object/layout/AcDbLayout.d.ts.map +1 -0
- package/lib/object/layout/AcDbLayout.js +120 -0
- package/lib/object/layout/AcDbLayout.js.map +1 -0
- package/lib/object/layout/AcDbLayoutDictionary.d.ts +19 -0
- package/lib/object/layout/AcDbLayoutDictionary.d.ts.map +1 -0
- package/lib/object/layout/AcDbLayoutDictionary.js +94 -0
- package/lib/object/layout/AcDbLayoutDictionary.js.map +1 -0
- package/lib/object/layout/AcDbLayoutManager.d.ts +101 -0
- package/lib/object/layout/AcDbLayoutManager.d.ts.map +1 -0
- package/lib/object/layout/AcDbLayoutManager.js +154 -0
- package/lib/object/layout/AcDbLayoutManager.js.map +1 -0
- package/lib/object/layout/index.d.ts +4 -0
- package/lib/object/layout/index.d.ts.map +1 -0
- package/lib/object/layout/index.js +4 -0
- package/lib/object/layout/index.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbSpline.js","sourceRoot":"","sources":["../../src/entity/AcDbSpline.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAGL,YAAY,EACb,MAAM,4BAA4B,CAAA;AAGnC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC;;GAEG;AACH;IAAgC,8BAAS;IAwBvC,oBAAY,CAAW,EAAE,CAAW,EAAE,CAAW;QAC/C,YAAA,MAAK,WAAE,SAAA;QACP,IAAM,UAAU,GACd,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAA;QAE9D,IAAI,UAAU,IAAI,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,UAAU,CAAC,kBAAkB,CAAA;QACrC,CAAC;QACD,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,KAAI,CAAC,IAAI,GAAG,IAAI,YAAY,CAC1B,CAAoB,EACpB,CAAiC,CAClC,CAAA;QACH,CAAC;aAAM,CAAC;YACN,KAAI,CAAC,IAAI,GAAG,IAAI,YAAY,CAC1B,CAAoB,EACpB,CAAa,EACb,CAAyB,CAC1B,CAAA;QACH,CAAC;;IACH,CAAC;IAKD,sBAAI,wCAAgB;QAHpB;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;QACtB,CAAC;;;OAAA;IAKD,sBAAI,8BAAM;QAHV;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;QACzB,CAAC;aACD,UAAW,KAAc;YACvB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QAC1B,CAAC;;;OAHA;IAKD;;OAEG;IACH,yBAAI,GAAJ,UAAK,QAAsB;QACzB,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QACvC,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC/C,CAAC;IACH,iBAAC;AAAD,CAAC,AAtED,CAAgC,SAAS,GAsExC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { AcGeBox3d } from '@mlightcad/geometry-engine';
|
|
2
|
+
import { AcGiEntity, AcGiMTextAttachmentPoint, AcGiRenderer } from '@mlightcad/graphic-interface';
|
|
3
|
+
import { AcDbBlockReference } from './AcDbBlockReference';
|
|
4
|
+
export interface AcDbTableCell {
|
|
5
|
+
text: string;
|
|
6
|
+
attachmentPoint: AcGiMTextAttachmentPoint;
|
|
7
|
+
textStyle?: string;
|
|
8
|
+
rotation?: number;
|
|
9
|
+
cellType: number;
|
|
10
|
+
flagValue?: number;
|
|
11
|
+
mergedValue?: number;
|
|
12
|
+
autoFit?: number;
|
|
13
|
+
borderWidth?: number;
|
|
14
|
+
borderHeight?: number;
|
|
15
|
+
overrideFlag?: number;
|
|
16
|
+
virtualEdgeFlag?: number;
|
|
17
|
+
fieldObjetId?: string;
|
|
18
|
+
blockTableRecordId?: string;
|
|
19
|
+
blockScale?: number;
|
|
20
|
+
blockAttrNum?: number;
|
|
21
|
+
attrDefineId?: string[];
|
|
22
|
+
attrText?: string;
|
|
23
|
+
textHeight: number;
|
|
24
|
+
extendedCellFlags?: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* The class represents the table entity in AutoCAD. A table is generally thought of as an n x m rectangular
|
|
28
|
+
* array of cells whose contents consist of annotation objects, primarily text. Tables often contain a title
|
|
29
|
+
* row, a header row, and multiple data rows.
|
|
30
|
+
*
|
|
31
|
+
* After creating a new table object using the constructor, applications usually need to set the table style,
|
|
32
|
+
* number of rows and columns, column width, row height, insert position, width direction, and normal vector.
|
|
33
|
+
* Applications can also enter text or block contents into each cell using methods of this class.
|
|
34
|
+
*/
|
|
35
|
+
export declare class AcDbTable extends AcDbBlockReference {
|
|
36
|
+
private _attachmentPoint;
|
|
37
|
+
private _numRows;
|
|
38
|
+
private _numColumns;
|
|
39
|
+
private _rowHeight;
|
|
40
|
+
private _columnWidth;
|
|
41
|
+
private _cells;
|
|
42
|
+
constructor(name: string, numRows: number, numColumns: number);
|
|
43
|
+
/**
|
|
44
|
+
* Cell alignment value of this table.
|
|
45
|
+
*/
|
|
46
|
+
get attachmentPoint(): AcGiMTextAttachmentPoint;
|
|
47
|
+
set attachmentPoint(value: AcGiMTextAttachmentPoint);
|
|
48
|
+
/**
|
|
49
|
+
* The number of rows in the table.
|
|
50
|
+
*/
|
|
51
|
+
get numRows(): number;
|
|
52
|
+
set numRows(value: number);
|
|
53
|
+
/**
|
|
54
|
+
* The number of columns in the table.
|
|
55
|
+
*/
|
|
56
|
+
get numColumns(): number;
|
|
57
|
+
set numColumns(value: number);
|
|
58
|
+
/**
|
|
59
|
+
* Get the number of contents in the specified cell.
|
|
60
|
+
* @param row Input row index. It should be more than or equal to 0 and less than the number of rows.
|
|
61
|
+
* @param col Input column index. It should be more than or equal to 0 and less than the number of columns.
|
|
62
|
+
* @returns Return the number of contents in the specified cell.
|
|
63
|
+
*/
|
|
64
|
+
numContents(row: number, col: number): number;
|
|
65
|
+
/**
|
|
66
|
+
* Get the row height of the specified row in the table.
|
|
67
|
+
* @param index Input zero-based row index
|
|
68
|
+
* @returns Return the row height of the specified row in the table.
|
|
69
|
+
*/
|
|
70
|
+
rowHeight(index: number): number;
|
|
71
|
+
/**
|
|
72
|
+
* Set the row height for the specified row index in the table.
|
|
73
|
+
* @param index Input zero-based row index
|
|
74
|
+
* @param height Input height to be used for the specified row
|
|
75
|
+
*/
|
|
76
|
+
setRowHeight(index: number, height: number): void;
|
|
77
|
+
/**
|
|
78
|
+
* Set a uniform row height for all the rows in the table.
|
|
79
|
+
* @param height Input height to be used for all the rows in the table
|
|
80
|
+
*/
|
|
81
|
+
setUniformRowHeight(height: number): void;
|
|
82
|
+
/**
|
|
83
|
+
* Get the column width at the specified column index in the table.
|
|
84
|
+
*/
|
|
85
|
+
columnWidth(index: number): number;
|
|
86
|
+
/**
|
|
87
|
+
* Set a uniform column width for all the columns in the table.
|
|
88
|
+
* @param width Input uniform width to be used for all the columns in the table
|
|
89
|
+
*/
|
|
90
|
+
setUniformColumnWidth(width: number): void;
|
|
91
|
+
/**
|
|
92
|
+
* Set the column width at the specified column index in the table.
|
|
93
|
+
* @param index Input zero-based column index
|
|
94
|
+
* @param width Input width to be used for the specified column
|
|
95
|
+
*/
|
|
96
|
+
setColumnWidth(index: number, width: number): void;
|
|
97
|
+
/**
|
|
98
|
+
* Get the cell by index.
|
|
99
|
+
* @param index Input cell index
|
|
100
|
+
* @returns Return the specified cell by index
|
|
101
|
+
*/
|
|
102
|
+
cell(index: number): AcDbTableCell | undefined;
|
|
103
|
+
/**
|
|
104
|
+
* Set the cell by index.
|
|
105
|
+
* @param index Input cell index
|
|
106
|
+
*/
|
|
107
|
+
setCell(index: number, cell: AcDbTableCell): void;
|
|
108
|
+
/**
|
|
109
|
+
* Get text string in the specified cell.
|
|
110
|
+
* @param row Input integer specifying the zero-based row index for the cell
|
|
111
|
+
* @param col Input integer specifying the zero-based column index for the cell
|
|
112
|
+
* @param content Input content index. It should be more than or equal to 0 and less than the number of contents.
|
|
113
|
+
*/
|
|
114
|
+
textString(row: number, col: number, content?: number): string;
|
|
115
|
+
/**
|
|
116
|
+
* Set the text for the first content at the specified content index.
|
|
117
|
+
* @param row Input integer specifying the zero-based row index for the cell
|
|
118
|
+
* @param col Input integer specifying the zero-based column index for the cell
|
|
119
|
+
* @param text Input text string
|
|
120
|
+
*/
|
|
121
|
+
setTextString(row: number, col: number, text: string): void;
|
|
122
|
+
/**
|
|
123
|
+
* Return true if the content of the specified cell is empty
|
|
124
|
+
* @param row Input integer specifying the zero-based row index for the cell
|
|
125
|
+
* @param col Input integer specifying the zero-based column index for the cell
|
|
126
|
+
* @returns Return true if the content of the specified cell is empty. Otherwise, return false.
|
|
127
|
+
*/
|
|
128
|
+
isEmpty(row: number, col: number): boolean;
|
|
129
|
+
/**
|
|
130
|
+
* @inheritdoc
|
|
131
|
+
*/
|
|
132
|
+
get geometricExtents(): AcGeBox3d;
|
|
133
|
+
/**
|
|
134
|
+
* @inheritdoc
|
|
135
|
+
*/
|
|
136
|
+
draw(renderer: AcGiRenderer): AcGiEntity;
|
|
137
|
+
private fillVisited;
|
|
138
|
+
private getTextStyle;
|
|
139
|
+
private getTableTextOffset;
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=AcDbTable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbTable.d.ts","sourceRoot":"","sources":["../../src/entity/AcDbTable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,358 @@
|
|
|
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
|
+
import { AcGeBox3d, AcGeMatrix3d, AcGeQuaternion, AcGeVector3d } from '@mlightcad/geometry-engine';
|
|
28
|
+
import { AcGiMTextAttachmentPoint } from '@mlightcad/graphic-interface';
|
|
29
|
+
import { AcDbBlockReference } from './AcDbBlockReference';
|
|
30
|
+
var tempVector = /*@__PURE__*/ new AcGeVector3d();
|
|
31
|
+
/**
|
|
32
|
+
* The class represents the table entity in AutoCAD. A table is generally thought of as an n x m rectangular
|
|
33
|
+
* array of cells whose contents consist of annotation objects, primarily text. Tables often contain a title
|
|
34
|
+
* row, a header row, and multiple data rows.
|
|
35
|
+
*
|
|
36
|
+
* After creating a new table object using the constructor, applications usually need to set the table style,
|
|
37
|
+
* number of rows and columns, column width, row height, insert position, width direction, and normal vector.
|
|
38
|
+
* Applications can also enter text or block contents into each cell using methods of this class.
|
|
39
|
+
*/
|
|
40
|
+
var AcDbTable = /** @class */ (function (_super) {
|
|
41
|
+
__extends(AcDbTable, _super);
|
|
42
|
+
function AcDbTable(name, numRows, numColumns) {
|
|
43
|
+
var _this = _super.call(this, name) || this;
|
|
44
|
+
_this._attachmentPoint = AcGiMTextAttachmentPoint.TopLeft;
|
|
45
|
+
_this._numColumns = numColumns;
|
|
46
|
+
_this._numRows = numRows;
|
|
47
|
+
_this._columnWidth = new Array(numColumns);
|
|
48
|
+
_this._rowHeight = new Array(numRows);
|
|
49
|
+
_this._cells = new Array(numRows * numColumns);
|
|
50
|
+
return _this;
|
|
51
|
+
}
|
|
52
|
+
Object.defineProperty(AcDbTable.prototype, "attachmentPoint", {
|
|
53
|
+
/**
|
|
54
|
+
* Cell alignment value of this table.
|
|
55
|
+
*/
|
|
56
|
+
get: function () {
|
|
57
|
+
return this._attachmentPoint;
|
|
58
|
+
},
|
|
59
|
+
set: function (value) {
|
|
60
|
+
this._attachmentPoint = value;
|
|
61
|
+
},
|
|
62
|
+
enumerable: false,
|
|
63
|
+
configurable: true
|
|
64
|
+
});
|
|
65
|
+
Object.defineProperty(AcDbTable.prototype, "numRows", {
|
|
66
|
+
/**
|
|
67
|
+
* The number of rows in the table.
|
|
68
|
+
*/
|
|
69
|
+
get: function () {
|
|
70
|
+
return this._numRows;
|
|
71
|
+
},
|
|
72
|
+
set: function (value) {
|
|
73
|
+
this._numRows = value;
|
|
74
|
+
},
|
|
75
|
+
enumerable: false,
|
|
76
|
+
configurable: true
|
|
77
|
+
});
|
|
78
|
+
Object.defineProperty(AcDbTable.prototype, "numColumns", {
|
|
79
|
+
/**
|
|
80
|
+
* The number of columns in the table.
|
|
81
|
+
*/
|
|
82
|
+
get: function () {
|
|
83
|
+
return this._numColumns;
|
|
84
|
+
},
|
|
85
|
+
set: function (value) {
|
|
86
|
+
this._numColumns = value;
|
|
87
|
+
},
|
|
88
|
+
enumerable: false,
|
|
89
|
+
configurable: true
|
|
90
|
+
});
|
|
91
|
+
/**
|
|
92
|
+
* Get the number of contents in the specified cell.
|
|
93
|
+
* @param row Input row index. It should be more than or equal to 0 and less than the number of rows.
|
|
94
|
+
* @param col Input column index. It should be more than or equal to 0 and less than the number of columns.
|
|
95
|
+
* @returns Return the number of contents in the specified cell.
|
|
96
|
+
*/
|
|
97
|
+
// @ts-expect-error not use '_' prefix so that typedoc can the correct parameter to generate doc
|
|
98
|
+
AcDbTable.prototype.numContents = function (row, col) {
|
|
99
|
+
// TODO: Implement it
|
|
100
|
+
return 1;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Get the row height of the specified row in the table.
|
|
104
|
+
* @param index Input zero-based row index
|
|
105
|
+
* @returns Return the row height of the specified row in the table.
|
|
106
|
+
*/
|
|
107
|
+
AcDbTable.prototype.rowHeight = function (index) {
|
|
108
|
+
return this._rowHeight[index];
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Set the row height for the specified row index in the table.
|
|
112
|
+
* @param index Input zero-based row index
|
|
113
|
+
* @param height Input height to be used for the specified row
|
|
114
|
+
*/
|
|
115
|
+
AcDbTable.prototype.setRowHeight = function (index, height) {
|
|
116
|
+
this._rowHeight[index] = height;
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* Set a uniform row height for all the rows in the table.
|
|
120
|
+
* @param height Input height to be used for all the rows in the table
|
|
121
|
+
*/
|
|
122
|
+
AcDbTable.prototype.setUniformRowHeight = function (height) {
|
|
123
|
+
this._rowHeight.fill(height);
|
|
124
|
+
};
|
|
125
|
+
/**
|
|
126
|
+
* Get the column width at the specified column index in the table.
|
|
127
|
+
*/
|
|
128
|
+
AcDbTable.prototype.columnWidth = function (index) {
|
|
129
|
+
return this._columnWidth[index];
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Set a uniform column width for all the columns in the table.
|
|
133
|
+
* @param width Input uniform width to be used for all the columns in the table
|
|
134
|
+
*/
|
|
135
|
+
AcDbTable.prototype.setUniformColumnWidth = function (width) {
|
|
136
|
+
this._columnWidth.fill(width);
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Set the column width at the specified column index in the table.
|
|
140
|
+
* @param index Input zero-based column index
|
|
141
|
+
* @param width Input width to be used for the specified column
|
|
142
|
+
*/
|
|
143
|
+
AcDbTable.prototype.setColumnWidth = function (index, width) {
|
|
144
|
+
this._columnWidth[index] = width;
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Get the cell by index.
|
|
148
|
+
* @param index Input cell index
|
|
149
|
+
* @returns Return the specified cell by index
|
|
150
|
+
*/
|
|
151
|
+
AcDbTable.prototype.cell = function (index) {
|
|
152
|
+
if (index < 0 || index >= this._cells.length)
|
|
153
|
+
return undefined;
|
|
154
|
+
return this._cells[index];
|
|
155
|
+
};
|
|
156
|
+
/**
|
|
157
|
+
* Set the cell by index.
|
|
158
|
+
* @param index Input cell index
|
|
159
|
+
*/
|
|
160
|
+
AcDbTable.prototype.setCell = function (index, cell) {
|
|
161
|
+
this._cells[index] = cell;
|
|
162
|
+
};
|
|
163
|
+
/**
|
|
164
|
+
* Get text string in the specified cell.
|
|
165
|
+
* @param row Input integer specifying the zero-based row index for the cell
|
|
166
|
+
* @param col Input integer specifying the zero-based column index for the cell
|
|
167
|
+
* @param content Input content index. It should be more than or equal to 0 and less than the number of contents.
|
|
168
|
+
*/
|
|
169
|
+
// @ts-expect-error not use '_' prefix so that typedoc can the correct parameter to generate doc
|
|
170
|
+
AcDbTable.prototype.textString = function (row, col, content) {
|
|
171
|
+
return this._cells[row * col].text;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Set the text for the first content at the specified content index.
|
|
175
|
+
* @param row Input integer specifying the zero-based row index for the cell
|
|
176
|
+
* @param col Input integer specifying the zero-based column index for the cell
|
|
177
|
+
* @param text Input text string
|
|
178
|
+
*/
|
|
179
|
+
AcDbTable.prototype.setTextString = function (row, col, text) {
|
|
180
|
+
this._cells[row * col].text = text;
|
|
181
|
+
};
|
|
182
|
+
/**
|
|
183
|
+
* Return true if the content of the specified cell is empty
|
|
184
|
+
* @param row Input integer specifying the zero-based row index for the cell
|
|
185
|
+
* @param col Input integer specifying the zero-based column index for the cell
|
|
186
|
+
* @returns Return true if the content of the specified cell is empty. Otherwise, return false.
|
|
187
|
+
*/
|
|
188
|
+
AcDbTable.prototype.isEmpty = function (row, col) {
|
|
189
|
+
return !this._cells[row * col].text;
|
|
190
|
+
};
|
|
191
|
+
Object.defineProperty(AcDbTable.prototype, "geometricExtents", {
|
|
192
|
+
/**
|
|
193
|
+
* @inheritdoc
|
|
194
|
+
*/
|
|
195
|
+
get: function () {
|
|
196
|
+
// TODO: Implement it
|
|
197
|
+
return new AcGeBox3d();
|
|
198
|
+
},
|
|
199
|
+
enumerable: false,
|
|
200
|
+
configurable: true
|
|
201
|
+
});
|
|
202
|
+
/**
|
|
203
|
+
* @inheritdoc
|
|
204
|
+
*/
|
|
205
|
+
AcDbTable.prototype.draw = function (renderer) {
|
|
206
|
+
var _a, _b;
|
|
207
|
+
var allRowHeights = 0, allColumnWidths = 0;
|
|
208
|
+
var indices = new Uint16Array(this.numColumns * this.numRows * 8);
|
|
209
|
+
var points = new Float32Array((this.numColumns + 1) * (this.numRows + 1) * 3);
|
|
210
|
+
var index = 0;
|
|
211
|
+
for (var i = 0; i <= this.numRows; i++) {
|
|
212
|
+
allRowHeights -= i > 0 ? this.rowHeight(i - 1) : 0;
|
|
213
|
+
allColumnWidths = 0;
|
|
214
|
+
for (var j = 0; j <= this.numColumns; j++) {
|
|
215
|
+
allColumnWidths += j > 0 ? this.columnWidth(j - 1) : 0;
|
|
216
|
+
points[index++] = allColumnWidths;
|
|
217
|
+
points[index++] = allRowHeights;
|
|
218
|
+
points[index++] = 0;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
var results = [];
|
|
222
|
+
var visited = new Array(this.numRows * this.numColumns).fill(false);
|
|
223
|
+
allColumnWidths = 0;
|
|
224
|
+
index = 0;
|
|
225
|
+
var cellIndex = 0;
|
|
226
|
+
for (var i = 0; i < this.numColumns; i++) {
|
|
227
|
+
allColumnWidths += i > 0 ? this.columnWidth(i - 1) : 0;
|
|
228
|
+
allRowHeights = 0;
|
|
229
|
+
for (var j = 0; j < this.numRows; j++) {
|
|
230
|
+
allRowHeights += j > 0 ? this.rowHeight(j - 1) : 0;
|
|
231
|
+
var cell = this.cell(j * this.numColumns + i);
|
|
232
|
+
cellIndex = j * this.numColumns + i;
|
|
233
|
+
if (cell && !visited[cellIndex]) {
|
|
234
|
+
var columnSpan = (_a = cell.borderWidth) !== null && _a !== void 0 ? _a : 1;
|
|
235
|
+
var rowSpan = (_b = cell.borderHeight) !== null && _b !== void 0 ? _b : 1;
|
|
236
|
+
this.fillVisited(visited, cellIndex, this.numColumns, columnSpan, rowSpan);
|
|
237
|
+
// Draw top border line of the current cell by considering merged cell
|
|
238
|
+
indices[index++] = i + j * (this.numColumns + 1);
|
|
239
|
+
indices[index++] = i + j * (this.numColumns + 1) + columnSpan;
|
|
240
|
+
// Calcuate width of the cell by considering merged cell
|
|
241
|
+
var width = points[indices[index - 1] * 3] - allColumnWidths;
|
|
242
|
+
// Draw right border line of the current cell by considering merged cell
|
|
243
|
+
var tmp = i + (j + rowSpan) * (this.numColumns + 1) + columnSpan;
|
|
244
|
+
if (i + columnSpan == this.numColumns) {
|
|
245
|
+
indices[index++] = i + j * (this.numColumns + 1) + columnSpan;
|
|
246
|
+
indices[index++] = tmp;
|
|
247
|
+
}
|
|
248
|
+
// Calcuate height of the cell by considering merged cell
|
|
249
|
+
var height = -points[tmp * 3 + 1] - allRowHeights;
|
|
250
|
+
// Draw bottom border line of the current cell by considering merged cell
|
|
251
|
+
if (j + rowSpan == this.numRows) {
|
|
252
|
+
indices[index++] =
|
|
253
|
+
i + (j + rowSpan) * (this.numColumns + 1) + rowSpan;
|
|
254
|
+
indices[index++] = i + (j + rowSpan) * (this.numColumns + 1);
|
|
255
|
+
}
|
|
256
|
+
// Draw left border line of the current cell by considering merged cell
|
|
257
|
+
indices[index++] = i + (j + rowSpan) * (this.numColumns + 1);
|
|
258
|
+
indices[index++] = i + j * (this.numColumns + 1);
|
|
259
|
+
// Draw text
|
|
260
|
+
if (cell.text) {
|
|
261
|
+
var attachmentPoint = cell.attachmentPoint ||
|
|
262
|
+
this.attachmentPoint ||
|
|
263
|
+
AcGiMTextAttachmentPoint.MiddleCenter;
|
|
264
|
+
var offset = this.getTableTextOffset(attachmentPoint, width, height);
|
|
265
|
+
var mtextData = {
|
|
266
|
+
text: cell.text,
|
|
267
|
+
height: cell.textHeight,
|
|
268
|
+
width: width,
|
|
269
|
+
position: tempVector
|
|
270
|
+
.set(allColumnWidths, -allRowHeights, 0)
|
|
271
|
+
.clone()
|
|
272
|
+
.add(offset),
|
|
273
|
+
rotation: this.rotation,
|
|
274
|
+
attachmentPoint: attachmentPoint
|
|
275
|
+
};
|
|
276
|
+
var textStyle = __assign(__assign({}, this.getTextStyle(cell)), { color: this.color.color });
|
|
277
|
+
results.push(renderer.mtext(mtextData, textStyle));
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
results.push(renderer.lineSegments(points, 3, indices, this.lineStyle));
|
|
283
|
+
var group = renderer.group(results);
|
|
284
|
+
var quaternion = new AcGeQuaternion();
|
|
285
|
+
quaternion.setFromAxisAngle(AcGeVector3d.Z_AXIS, this.rotation);
|
|
286
|
+
_tmpMatrix.compose(this.position, quaternion, this.scaleFactors);
|
|
287
|
+
group.applyMatrix(_tmpMatrix);
|
|
288
|
+
return group;
|
|
289
|
+
};
|
|
290
|
+
AcDbTable.prototype.fillVisited = function (visited, currentIndex, columnCount, columnSpan, rowSpan) {
|
|
291
|
+
if (rowSpan == 1 && columnSpan == 1) {
|
|
292
|
+
visited[currentIndex] = true;
|
|
293
|
+
}
|
|
294
|
+
else {
|
|
295
|
+
for (var i = 0; i < columnSpan; ++i) {
|
|
296
|
+
for (var j = 0; j < rowSpan; ++j) {
|
|
297
|
+
visited[currentIndex + i + j * columnCount] = true;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
};
|
|
302
|
+
AcDbTable.prototype.getTextStyle = function (cell) {
|
|
303
|
+
var textStyleTable = this.database.tables.textStyleTable;
|
|
304
|
+
var style;
|
|
305
|
+
if (cell.textStyle) {
|
|
306
|
+
style = textStyleTable.getAt(cell.textStyle);
|
|
307
|
+
}
|
|
308
|
+
if (!style) {
|
|
309
|
+
style = (textStyleTable.getAt('STANDARD') ||
|
|
310
|
+
textStyleTable.getAt('Standard'));
|
|
311
|
+
}
|
|
312
|
+
return style.textStyle;
|
|
313
|
+
};
|
|
314
|
+
AcDbTable.prototype.getTableTextOffset = function (textAlign, width, height) {
|
|
315
|
+
var offset = new AcGeVector3d();
|
|
316
|
+
switch (textAlign) {
|
|
317
|
+
case 1:
|
|
318
|
+
break;
|
|
319
|
+
case 2:
|
|
320
|
+
// Top Center
|
|
321
|
+
offset.setX(width / 2);
|
|
322
|
+
break;
|
|
323
|
+
case 3:
|
|
324
|
+
// Top Right
|
|
325
|
+
offset.setX(width);
|
|
326
|
+
break;
|
|
327
|
+
case 4:
|
|
328
|
+
// Middle Left
|
|
329
|
+
offset.setY(-height / 2);
|
|
330
|
+
break;
|
|
331
|
+
case 5:
|
|
332
|
+
// Middle Center
|
|
333
|
+
offset.set(width / 2, -height / 2, 0);
|
|
334
|
+
break;
|
|
335
|
+
case 6:
|
|
336
|
+
// Middle Right
|
|
337
|
+
offset.set(width, -height / 2, 0);
|
|
338
|
+
break;
|
|
339
|
+
case 7:
|
|
340
|
+
// Bottom Left
|
|
341
|
+
offset.setY(-height);
|
|
342
|
+
break;
|
|
343
|
+
case 8:
|
|
344
|
+
// Bottom Center
|
|
345
|
+
offset.set(width / 2, -height, 0);
|
|
346
|
+
break;
|
|
347
|
+
case 9:
|
|
348
|
+
// Bottom Right
|
|
349
|
+
offset.set(width, -height, 0);
|
|
350
|
+
break;
|
|
351
|
+
}
|
|
352
|
+
return offset;
|
|
353
|
+
};
|
|
354
|
+
return AcDbTable;
|
|
355
|
+
}(AcDbBlockReference));
|
|
356
|
+
export { AcDbTable };
|
|
357
|
+
var _tmpMatrix = /*@__PURE__*/ new AcGeMatrix3d();
|
|
358
|
+
//# sourceMappingURL=AcDbTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbTable.js","sourceRoot":"","sources":["../../src/entity/AcDbTable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { AcGeBox3d, AcGePoint3d } from '@mlightcad/geometry-engine';
|
|
2
|
+
import { AcGiRenderer } from '@mlightcad/graphic-interface';
|
|
3
|
+
import { AcDbEntity } from './AcDbEntity';
|
|
4
|
+
/**
|
|
5
|
+
* The horizontal mode of the text
|
|
6
|
+
*/
|
|
7
|
+
export declare enum AcDbTextHorizontalMode {
|
|
8
|
+
LEFT = 0,
|
|
9
|
+
CENTER = 1,
|
|
10
|
+
RIGHT = 2,
|
|
11
|
+
ALIGNED = 3,
|
|
12
|
+
MIDDLE = 4,
|
|
13
|
+
FIT = 5
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The vertical mode of the text
|
|
17
|
+
*/
|
|
18
|
+
export declare enum AcDbTextVerticalMode {
|
|
19
|
+
BASELINE = 0,
|
|
20
|
+
BOTTOM = 1,
|
|
21
|
+
MIDDLE = 2,
|
|
22
|
+
TOP = 3
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The class represents the text entity in AutoCAD.
|
|
26
|
+
*/
|
|
27
|
+
export declare class AcDbText extends AcDbEntity {
|
|
28
|
+
private _textString;
|
|
29
|
+
private _thickness;
|
|
30
|
+
private _height;
|
|
31
|
+
private _position;
|
|
32
|
+
private _rotation;
|
|
33
|
+
private _oblique;
|
|
34
|
+
private _horizontalMode;
|
|
35
|
+
private _verticalModel;
|
|
36
|
+
private _styleName;
|
|
37
|
+
private _widthFactor;
|
|
38
|
+
constructor();
|
|
39
|
+
/**
|
|
40
|
+
* The text string used by this entity
|
|
41
|
+
*/
|
|
42
|
+
get textString(): string;
|
|
43
|
+
set textString(value: string);
|
|
44
|
+
/**
|
|
45
|
+
* The thickness for the text. The thickness is the text's dimension along its normal vector
|
|
46
|
+
* direction (sometimes called the extrusion direction).
|
|
47
|
+
*/
|
|
48
|
+
get thickness(): number;
|
|
49
|
+
set thickness(value: number);
|
|
50
|
+
/**
|
|
51
|
+
* The height of the text. The height value is used as a scale factor for both height and width
|
|
52
|
+
* of the text.
|
|
53
|
+
*/
|
|
54
|
+
get height(): number;
|
|
55
|
+
set height(value: number);
|
|
56
|
+
/**
|
|
57
|
+
* The insertion point of the text in WCS coordinates.
|
|
58
|
+
*/
|
|
59
|
+
get position(): AcGePoint3d;
|
|
60
|
+
set position(value: AcGePoint3d);
|
|
61
|
+
/**
|
|
62
|
+
* The rotation angle of the text. The rotation angle is relative to the X axis of the text's OCS,
|
|
63
|
+
* with positive angles going counterclockwise when looking down the Z axis toward the origin. The
|
|
64
|
+
* OCS X axis is determined by using the text's normal vector, the WCS Z axis, and the arbitrary
|
|
65
|
+
* axis algorithm.
|
|
66
|
+
*/
|
|
67
|
+
get rotation(): number;
|
|
68
|
+
set rotation(value: number);
|
|
69
|
+
/**
|
|
70
|
+
* The oblique angle (in radians) of the text. The obliquing angle is the angle from the text's
|
|
71
|
+
* vertical; that is, the top of the text "slants" relative to the bottom, the same as the slope
|
|
72
|
+
* in this italic text. Positive angles slant characters forward at their tops. Negative angles
|
|
73
|
+
* have 2pi added to them to convert them to their positive equivalent.
|
|
74
|
+
*/
|
|
75
|
+
get oblique(): number;
|
|
76
|
+
set oblique(value: number);
|
|
77
|
+
/**
|
|
78
|
+
* The horizontal mode of the text
|
|
79
|
+
*/
|
|
80
|
+
get horizontalMode(): AcDbTextHorizontalMode;
|
|
81
|
+
set horizontalMode(value: AcDbTextHorizontalMode);
|
|
82
|
+
/**
|
|
83
|
+
* The vertical mode of the text
|
|
84
|
+
*/
|
|
85
|
+
get verticalMode(): AcDbTextVerticalMode;
|
|
86
|
+
set verticalMode(value: AcDbTextVerticalMode);
|
|
87
|
+
/**
|
|
88
|
+
* The style name stored in text style table record and used by this text entity
|
|
89
|
+
*/
|
|
90
|
+
get styleName(): string;
|
|
91
|
+
set styleName(value: string);
|
|
92
|
+
/**
|
|
93
|
+
* The width factor (also referred to as the relative X-scale factor) for the text. The widthFactor
|
|
94
|
+
* is applied to the text's width to allow the width to be adjusted independently of the height.
|
|
95
|
+
* For example, if the widthFactor value is 0.8, then the text is drawn with a width that is 80% of
|
|
96
|
+
* its normal "unadjusted" width.
|
|
97
|
+
*/
|
|
98
|
+
get widthFactor(): number;
|
|
99
|
+
set widthFactor(value: number);
|
|
100
|
+
/**
|
|
101
|
+
* @inheritdoc
|
|
102
|
+
*/
|
|
103
|
+
get geometricExtents(): AcGeBox3d;
|
|
104
|
+
private getTextStyle;
|
|
105
|
+
/**
|
|
106
|
+
* @inheritdoc
|
|
107
|
+
*/
|
|
108
|
+
draw(renderer: AcGiRenderer): import("@mlightcad/graphic-interface").AcGiEntity;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=AcDbText.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbText.d.ts","sourceRoot":"","sources":["../../src/entity/AcDbText.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EAKL,YAAY,EACb,MAAM,8BAA8B,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC;;GAEG;AACH,oBAAY,sBAAsB;IAChC,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;IACT,OAAO,IAAI;IACX,MAAM,IAAI;IACV,GAAG,IAAI;CACR;AAED;;GAEG;AACH,oBAAY,oBAAoB;IAC9B,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,MAAM,IAAI;IACV,GAAG,IAAI;CACR;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,UAAU;IACtC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,YAAY,CAAQ;;IAgB5B;;OAEG;IACH,IAAI,UAAU,IAGQ,MAAM,CAD3B;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAE3B;IAED;;;OAGG;IACH,IAAI,SAAS,IAGQ,MAAM,CAD1B;IACD,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,EAE1B;IAED;;;OAGG;IACH,IAAI,MAAM,IAGQ,MAAM,CADvB;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAEvB;IAED;;OAEG;IACH,IAAI,QAAQ,IAGQ,WAAW,CAD9B;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,WAAW,EAE9B;IAED;;;;;OAKG;IACH,IAAI,QAAQ,IAGQ,MAAM,CADzB;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEzB;IAED;;;;;OAKG;IACH,IAAI,OAAO,IAGQ,MAAM,CADxB;IACD,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAExB;IAED;;OAEG;IACH,IAAI,cAAc,IAGQ,sBAAsB,CAD/C;IACD,IAAI,cAAc,CAAC,KAAK,EAAE,sBAAsB,EAE/C;IAED;;OAEG;IACH,IAAI,YAAY,IAGQ,oBAAoB,CAD3C;IACD,IAAI,YAAY,CAAC,KAAK,EAAE,oBAAoB,EAE3C;IAED;;OAEG;IACH,IAAI,SAAS,IAGQ,MAAM,CAD1B;IACD,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,EAE1B;IAED;;;;;OAKG;IACH,IAAI,WAAW,IAGQ,MAAM,CAD5B;IACD,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAE5B;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,SAAS,CAGhC;IAED,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,IAAI,CAAC,QAAQ,EAAE,YAAY;CAiB5B"}
|