# Interface MergeId

Represents a unique identifier for merging IFC product meshes based on spatial locality and rendering properties.

Each `MergeId` groups BimProductMesh instances that share similar characteristics, allowing them to be merged into a single BabylonJS mesh for optimized rendering.

interface MergeId {
cubeCellCenter: Vector3;
cubeCellId: Vector3;
cullingDistance: number;
cullOnCameraMove: boolean;
id: string;
ifcProductMeshes: BimProductMesh[];
indiceCount: number;
primitiveCount: number;
}

##### Index

### Properties

cubeCellCenter
cubeCellId
cullingDistance
cullOnCameraMove
id
ifcProductMeshes
indiceCount
primitiveCount

## Properties

### `Readonly` cubeCellCenter

cubeCellCenter: Vector3

Center point of the grid cell in world space coordinates.

### `Readonly` cubeCellId

cubeCellId: Vector3

Grid cell coordinates (integer indices, not world space).

### `Readonly` cullingDistance

cullingDistance: number

Distance at which this merge group should be culled. -1 means no distance culling.

### `Readonly` cullOnCameraMove

cullOnCameraMove: boolean

Whether meshes in this group should be culled when the camera moves.

### `Readonly` id

id: string

Unique string identifier encoding all merge properties (prefix, opacity, cull, level, cell coords, size).

### `Readonly` ifcProductMeshes

ifcProductMeshes: BimProductMesh[]

Array of product meshes assigned to this merge group.

### `Readonly` indiceCount

indiceCount: number

Total index count of all meshes in this merge group.

### `Readonly` primitiveCount

primitiveCount: number

Total primitive count of all meshes in this merge group.