Skip to main content

BimIfcLoaderElement

Represents an IFC file and provides access to its data.

Implements

Index

Properties

publicreadonlyclasses

classes: BimIfcClass[] = []

All BimIfcClass instances referenced by BimProduct‘s in the IFC file this instance represents.

publicreadonlydiscipline

discipline: Discipline

The discipline of the IFC file this instance represents.

publicreadonlyfloors

floors: BimIfcBuildingStorey[] = []

All IfcBuildingStorey (BimIfcBuildingStorey) instances in the IFC file this instance represents.

publicreadonlyifcHttpResource

ifcHttpResource: BimChangeIfc

publicreadonlyifcName

ifcName: string

The name of the IFC file this instance represents.

publicreadonlyindex

The IFC index (.idx file) of the IFC file this instance represents. This describes (in a very raw format) the content of the IFC file. It does not include any geometry or property sets.

publicoptionalreadonlyloadOptions

The BimApiIfcObjectsLoadOptions options (if any) that was used when this instance was created.

publicreadonlyloader

The loader this instance belongs to.

publicreadonlymaterials

materials: Materials

Reference to a Materials instance.

publicreadonlymeshCount

meshCount: number

The total number of BimProductMesh instances in the IFC file this instance represents. Same as ifcProductsWithGeometryCount.

publicreadonlyproducts

products: BimIfcObject[] = []

All IFC products in the IFC file this instance represents. Here represented as a flat list.

publicreadonlyproject

project: BimIfcObject

The IfcProject instance of the IFC file this instance represents.

publicreadonlyspaces

spaces: BimIfcSpace[] = []

All IfcSpace (BimIfcSpace) instances in the IFC file this instance represents.

publicreadonlystyles

styles: BimIfcStyle[] = []

All IFC styles that the BimProductMesh instances in the IFC file refers to. The styles are used to color the meshes.

publicoptionalreadonlytransform

transform?: Matrix

An optional transform for the IFC file. This transform will be applied to all IFC product geometries

publicreadonlytransformsRepository

transformsRepository: BimTransformsRepository

Reference to the transform repository this instance uses when transforming IFC product geometries.

publicreadonlytypeObjectRepository

typeObjectRepository: BimTypeObjectRepository

Reference to the type object repository this instance uses for type properties.

Accessors

publicgeometryUrl

  • get geometryUrl(): undefined | URL
  • Url where the IFC geometry (.geom file) will be retrieved from.


    Returns undefined | URL

publicifc

  • The IFC change (file) this instance represents.


    Returns BimChangeIfc

publicifcProductsWithGeometryCount

  • get ifcProductsWithGeometryCount(): number
  • The total number of BimProductMesh instances in the IFC file this instance represents. Same as meshCount.


    Returns number

publicifcUrl

  • get ifcUrl(): URL
  • The url where the contents of the IFC file can be retrieved from.


    Returns URL

publicindexUrl

  • get indexUrl(): undefined | URL
  • Url where the IFC index (.idx file) will be retrieved from.


    Returns undefined | URL

publicnumberOfIndices

  • get numberOfIndices(): number
  • The total number of indices contained in all instances of BimProductMesh in this IFC file.


    Returns number

publicnumberOfTriangles

  • get numberOfTriangles(): number
  • The total number of triangles contained in all instances of BimProductMesh in this IFC file.


    Returns number

publicnumberOfVertices

  • get numberOfVertices(): number
  • The total number of vertices contained in all instances of BimProductMesh in this IFC file.


    Returns number

publicpropertiesUrl

  • get propertiesUrl(): undefined | URL
  • Url where the IFC property set (.prop file) will be retrieved from.


    Returns undefined | URL

Methods

publicensureVertexDataLoaded

  • ensureVertexDataLoaded(): Promise<boolean>
  • Ensures that the vertex data is loaded.


    Returns Promise<boolean>

    A promise that resolves to a boolean. See it as a signal. I will be true if the call actualy loaded the data. Otherwhise it will be false (data loading is either in progress or has completed).

publicgetVertexData

  • Gets the vertex data for a given product mesh descriptor.


    Parameters

    Returns BimVertexData

    The vertex data.

publicloadPropertySets

  • loadPropertySets(clearCache?: boolean): Promise<boolean>
  • Loads the property sets and assigns them to the IFC products contained within this instance.


    Parameters

    • clearCache: boolean = false

    Returns Promise<boolean>

    A promise that resolves to a boolean indicating whether the property set was loade

publicwriteVertexData

  • writeVertexData(ifcProductMesh: BimProductMesh, transform: FastTransform, destination: GeometryArrays, offset: GeometryArrayOffset, aabb: { max: Vector3; min: Vector3 }, options: { includeNormals?: boolean }): void
  • Writes the vertex data to the specified destination.


    Parameters

    • ifcProductMesh: BimProductMesh

      The IFC product mesh.

    • transform: FastTransform

      The transformation matrix.

    • destination: GeometryArrays

      The destination geometry arrays.

    • offset: GeometryArrayOffset

      The offset in the geometry arrays.

    • aabb: { max: Vector3; min: Vector3 }

      The axis-aligned bounding box.

    • options: { includeNormals?: boolean }

    Returns void

publicstaticcreate