Class: GoIFCModels

GoIFCModels

Manages the IFC models, including loading, caching, and storing model data.

new GoIFCModels(goIFCComponents)

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 25

Creates an instance of GoIFCModels.

Name Type Description
goIFCComponents GoIFCComponents

The GoIFCComponents instance.

Members

goIFCComponents

Retrieves the GoIFCComponents instance associated with this class.

Methods

__loadModelFromCache(id, loader, cachedModel){Promise.<FragmentsGroup>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 718

This function loads the model from the cache.

Name Type Description
id string

The id of the model.

loader GoIFCLoader

The loader.

cachedModel any

The cached model.

Returns:
Type Description
Promise.<FragmentsGroup> The loaded model.

addToLinksData(serialId, data){boolean}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 672

Adds link data to the internal store and updates the Express ID to serial ID relations. Only adds if the data doesn't already exist to avoid overwriting existing data.

Name Type Description
serialId number

The serial ID of the link data.

data ClientLinksData

The link data to add.

Returns:
Type Description
boolean
  • Returns true if data was added, false if it already existed.

getClientDataExpressIdRelations(){Map.<number, number>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 474

Retrieves the map of Express ID to client data ID relations.

Returns:
Type Description
Map.<number, number> The map of Express ID to client data ID relations.

getClientDataFromExpressId(expressId){ClientLinksData|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 462

Retrieves the client data associated with a given Express ID.

Name Type Description
expressId number

The Express ID to look up.

Returns:
Type Description
ClientLinksData | undefined The client data associated with the Express ID or undefined if not found.

getClientDataIdFromExpressId(expressId){number|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 483

Retrieves the client data ID associated with a given Express ID.

Name Type Description
expressId number

The Express ID to look up.

Returns:
Type Description
number | undefined The client data ID associated with the Express ID or undefined if not found.

getFragment(expressID, modelID){Fragment|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 503

Retrieves the fragment associated with a given Express ID and model ID.

Name Type Description
expressID number

The Express ID of the fragment.

modelID string

The model ID containing the fragment.

Returns:
Type Description
Fragment | undefined The fragment if found, otherwise undefined.

getFragmentById(fragmentID){Fragment|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 541

Retrieves the fragment associated with a given fragment ID.

Name Type Description
fragmentID string

The ID of the fragment to retrieve.

Returns:
Type Description
Fragment | undefined The fragment if found, otherwise undefined.

getLinkData(serialId){ClientLinksData|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 637

Retrieves the link data associated with a given serial ID.

Name Type Description
serialId number

The serial ID of the link data.

Returns:
Type Description
ClientLinksData | undefined The link data if found, otherwise undefined.

getLinksData(){Map.<number, ClientLinksData>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 645

Retrieves all the link data.

Returns:
Type Description
Map.<number, ClientLinksData> A map of all client link data.

getLinksDataArray(){Array.<ClientLinksData>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 653

Retrieves all the link data as an array.

Returns:
Type Description
Array.<ClientLinksData> An array of all client link data.

getMeshesInFragment(expressID, fragment){Array.<THREE.Mesh>|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 571

Retrieves the meshes contained within a fragment for a given Express ID.

Name Type Description
expressID number

The Express ID associated with the fragment.

fragment Fragment

The fragment containing the meshes.

Returns:
Type Description
Array.<THREE.Mesh> | undefined An array of meshes contained within the fragment, or undefined if not found.

getModel(id){FragmentsGroup|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 221

Retrieves a specific model by its identifier.

Name Type Description
id string

The identifier of the model.

Returns:
Type Description
FragmentsGroup | undefined The model or undefined if not found.

getModelbyFragmentId(fragmentID){FragmentsGroup|undefined}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 555

Retrieves the model containing a fragment with a given fragment ID.

Name Type Description
fragmentID string

The ID of the fragment to find.

Returns:
Type Description
FragmentsGroup | undefined The model containing the fragment if found, otherwise undefined.

getModels(){Map.<string, FragmentsGroup>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 171

Retrieves all models stored.

Returns:
Type Description
Map.<string, FragmentsGroup> A map of all models.

getModelsArray(){Array.<FragmentsGroup>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 229

Retrieves all models as an array.

Returns:
Type Description
Array.<FragmentsGroup> An array of all models.

getModelsInfo(){Map.<number, IModelData>}

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 491

Retrieves the map of model IDs to model data.

Returns:
Type Description
Map.<number, IModelData> The map of model IDs to model data.

removeLinkData(serialId)

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 699

Removes link data associated with a given serial ID and updates the Express ID to serial ID relations.

Name Type Description
serialId number

The serial ID of the link data to remove.

setLinksData(data)

Interactions/IFC/interact/GoIFCComponents/subClasses/GoIFCModels.ts, line 661

Sets the link data.

Name Type Description
data Map.<number, ClientLinksData>

A map of client link data to set.