Implements

Constructors

  • Construct wwih a wasm module.

    Parameters

    • modelID: number
    • data: Uint8Array<ArrayBufferLike>
    • wasmModule: any

      The wasm module.

    • Optionalsettings: Loadersettings
    • Optionalprecomputed: Ap214ProxyLoadState

    Returns IfcApiProxyAP214

Properties

_isCoordinated: boolean = false
conwaywasm: ConwayGeometry
fs?: any = undefined
identity: number[] = ...
linearScalingFactor: number = 1
model: [default, AP214SceneBuilder, Map<number, [Vector<PlacedGeometry>, FlatMesh]>, Map<number, [GeometryObject, CanonicalMaterial, number[]]>, Vector<FlatMesh>, mat4]
modelID: number
NormalizeMat: mat4 = ...
properties: AP214Properties = ...

Contains all the logic and methods regarding properties, psets, qsets, etc.

Accessors

  • get sourceIsExternal(): boolean
  • Are the model's source bytes spilled to an external store (served through on-demand windows) rather than fully resident?

    Returns boolean

    True after spillSourceToExternalStore.

  • get StepModel(): default
  • Get the underlying step model for this.

    Returns default

    The underlying step model.

Methods

  • Closes a model and frees all related memory

    Returns void

  • Creates a map between element ExpressIDs and GlobalIDs. Each element has two entries, (ExpressID -> GlobalID) and (GlobalID -> ExpressID).

    Returns void

  • Creates a new model and returns a modelID number (unimplemented)

    Parameters

    • Optionalsettings: Loadersettings

      settings for generating data the model

    Returns number

    model ID

  • Page in the byte range backing a record so a following synchronous read succeeds. Fast no-op while the source is fully resident.

    Parameters

    • expressID: number

      The record's express ID.

    Returns Promise<void>

    Resolves when resident.

  • Parameters

    • modelID: number

    Returns Uint8Array<ArrayBufferLike>

    unimplemented

  • Parameters

    • ptr: number
    • size: number

    Returns Uint32Array<ArrayBufferLike>

  • Parameters

    • expressID: number
    • flatten: boolean = false

    Returns void

    line data

  • Parameters

    • heap: Uint32Array<ArrayBufferLike> | Float32Array<ArrayBufferLike>
    • startPtr: number
    • sizeBytes: number

    Returns Uint32Array<ArrayBufferLike> | Float32Array<ArrayBufferLike>

  • Parameters

    • ptr: number
    • size: number

    Returns Float32Array<ArrayBufferLike>

  • Parameters

    • input: string

      FILE_HEADER from step header

    Returns string[]

    array of fields in FILE_NAME

  • Drop this model's materialised entity/descriptor cache (and lazily rebuilt vtable data), returning that memory to the JS heap. Entities rematerialise transparently on next access.

    Returns void

  • Parameters

    • transformationMatrix: number[]

    Returns void

  • Release the resident source buffer and serve subsequent record reads through fixed-size windows paged in from the given external store — see StepModelBase.spillSourceToExternalStore.

    AP214 property access is served from indexes built by a one-time full-model sweep of synchronous reads, so they are primed here while the source is still resident; post-spill property reads are then pure map lookups. (getAllItemsOfType(_, verbose=true) still reads raw lines synchronously and is not supported post-spill.)

    Parameters

    • store: StepExternalByteStore

      The external byte store.

    • OptionalchunkBytes: number

      Optional window size in bytes.

    • OptionalmaxResidentChunks: number

      Optional residency cap in windows.

    Returns void

  • Parameters

    • lineObject: any

    Returns void

  • Parameters

    Returns void

  • Cooperative construction (conway extension, used by OpenModelAsync): identical parse/extraction to the constructor path, but the data parse periodically yields to the event loop so progress UI can repaint — issue #301 §2. Geometry extraction stays synchronous (the AP214 thunk-tree walk has no flat product loop yet) and reports as a heartbeat phase.

    Parameters

    • modelID: number

      The model ID being opened.

    • data: Uint8Array<ArrayBufferLike>

      The STEP data buffer.

    • wasmModule: any

      The wasm module.

    • Optionalsettings: Loadersettings

      Loader settings (ON_PROGRESS / ON_MODEL_INFO honored).

    Returns Promise<IfcApiProxyAP214>

    The constructed proxy.