Class AcDbDatabaseConverter<TModel>Abstract

Abstract base class for database converters.

This class provides the foundation for converting various file formats (such as DXF, DWG) into AcDbDatabase objects. It handles the conversion process in stages and provides progress tracking capabilities.

class MyConverter extends AcDbDatabaseConverter<MyModel> {
protected parse(data: string | ArrayBuffer): MyModel {
// Implementation for parsing data
}

protected processEntities(model: MyModel, db: AcDbDatabase) {
// Implementation for processing entities
}
}

Type Parameters

  • TModel = unknown

    The type of the parsed model data

Hierarchy (View Summary)

Constructors

Properties

Optional progress callback for tracking conversion progress

Methods

  • Reads and converts data into an AcDbDatabase.

    This method orchestrates the entire conversion process, including parsing, processing various components (fonts, linetypes, styles, etc.), and building the final database.

    Parameters

    • data: string | ArrayBuffer

      The input data to convert (string or ArrayBuffer)

    • db: AcDbDatabase

      The database to populate with converted data

    • minimumChunkSize: number

      Minimum chunk size for batch processing

    • Optionalprogress: AcDbConversionProgressCallback

      Optional progress callback

    Returns Promise<void>

    Promise that resolves when conversion is complete

    const converter = new MyConverter();
    const database = new AcDbDatabase();
    await converter.read(dxfData, database, 100, progressCallback);