Compute positioned 3D markers from BCF topics.
This is a pure function — no DOM, no renderer dependency. It takes a lookup callback so any renderer can provide entity bounds.
Array of BCF topics to create markers for
Callback to resolve IFC GlobalId → bounding box (Y-up)
Optional
Optional configuration
Array of positioned markers (topics without derivable positions are skipped)
Compute positioned 3D markers from BCF topics.
This is a pure function — no DOM, no renderer dependency. It takes a lookup callback so any renderer can provide entity bounds.