OptionaldataOptional DataModel paired with sceneModel. Required by the
default IFC SpaceExtractor; ignored by geometry-only
extractors.
OptionalextractorStrategy override — defaults to the IFC extractor. Swap to
extractSpacesFromGeometry for non-IFC sources, or provide
a custom extractor for proprietary schemas.
OptionaloptionsPer-call tuning. All fields optional; see CameraTourPlanOptions for defaults.
OptionalplannerStrategy override — defaults to planTourTwoOpt (greedy
nearest-neighbour seed, then 2-opt-refined for shorter tours
on convoluted floor plans). Swap to planTourGreedy to skip
the refinement pass when latency matters more than tour
quality (e.g. headless precompute that runs per save).
OptionalsamplerStrategy override — defaults to the visibility-grid sampler,
which raycasts from candidates against the scene collision
index and scores by coverage. Swap to sampleRoomCentroid
for a cheaper "one viewpoint per room" path.
Source SceneModel — the geometry the camera will walk
through. The collision index is read off sceneModel.scene
internally for occlusion + raycasting work.
Top-level input to planCameraTour. Couples the source model with optional semantic data and per-stage strategy overrides.
The extractor default is the IFC extractor — it walks
dataModel.objectsByType["IfcSpace"]plusIfcRelSpaceBoundary/IfcDooradjacency. Supply a custom extractor (or the geometry-fallback one) for SceneModels without a paired DataModel.