CutOptions
Defined in: network/lod.ts:2467
Properties
Section titled “Properties”boundaries?
Section titled “boundaries?”
optionalboundaries?:CutBoundaries
Defined in: network/lod.ts:2505
Collect the expanded aggregates whose boundary circle (cx/cy + extent: the disc, after a
nested layout — see BoundaryDiscs) meets the view (#329) — the modules the engine rings with
lod({ moduleBoundary }). Each one the walk expands (in the fade band: one whose children it draws)
is recorded with its children’s alpha, at O(1) per expanded node the walk visits anyway; the walk
itself and the returned frontier are unchanged. A tree’s single root (a module tree’s: the whole
network) is never collected.
expandPx?
Section titled “expandPx?”
optionalexpandPx?:number
Defined in: network/lod.ts:2477
Expand an aggregate into its children once its on-screen footprint (diameter = 2·extent·k, in
px) reaches this threshold; below it the aggregate draws as a single glyph — unless its members’
glyphs would not overlap at this zoom (k ≥ LODTree.clearZoom, #426), when it expands
whatever its size. So the threshold only sets how coarse the map is where members would overlap.
Larger → coarser (fewer, bigger glyphs); smaller → finer. An absolute pixel size — omit it to get
the tree-adaptive default (defaultExpandPx: 48 px for a binary coarsening tree, more for a
coarser-branching one such as a provided module partition).
fadeAlpha?
Section titled “fadeAlpha?”
optionalfadeAlpha?:Float32Array<ArrayBufferLike>
Defined in: network/lod.ts:2496
Scratch buffer, indexed by tree-node id (length ≥ tree.size), the cut fills with each emitted
node’s draw alpha when fadeBand > 0 (only frontier nodes are written; stale entries are
never read). Reusable across frames to avoid per-frame GC. Required when fadeBand > 0.
With boundaries, an expanded aggregate that is not itself drawn gets its children’s alpha
here too (the alpha its ring and anchored links fade with).
fadeBand?
Section titled “fadeBand?”
optionalfadeBand?:number
Defined in: network/lod.ts:2488
Cross-fade band (#133): half-width, as a fraction of expandPx, of the zoom band around the
expand threshold over which an aggregate and its children are drawn together — the aggregate
easing out (alpha 1→0) as its children ease in (0→1), so a split/merge reads smoothly instead of
popping. 0/absent ⇒ off (the hard threshold, zero added cost). When > 0, fill fadeAlpha.
maxAggregateRadius?
Section titled “maxAggregateRadius?”
optionalmaxAggregateRadius?:number
Defined in: network/lod.ts:2481
Aggregate draw-radius cap (matches rendering), so the cull margin reflects the drawn size.
recordCulled?
Section titled “recordCulled?”
optionalrecordCulled?:boolean
Defined in: network/lod.ts:2512
Also record, in the scratch, the nodes the walk culls (subtree roots whose box misses the view) and
the ones it both draws and expands (a cross-fade band) — CutScratch.culled / split — so the
lazy super-edge gather (#343) can tell which drawn or culled node covers any leaf. O(1) per node the
walk visits anyway; off ⇒ zero added cost.
screenSized?
Section titled “screenSized?”
optionalscreenSized?:boolean
Defined in: network/lod.ts:2479
True when glyphs are screen-pixel sized; converts the per-node draw radius to world for the cull margin.