IFClite TypeScript API
    Preparing search index...

    Class ClashSession

    A clash session: ingest element geometry once, then run rules repeatedly.

    Index
    • Returns void

    • Returns void

    • Ingest N elements from flat arenas.

      • positions: concatenated per-element vertex coords (x,y,z,...)
      • pos_ranges: 2 per element = [float_offset, float_len]
      • indices: concatenated per-element LOCAL (0-based) triangle indices
      • idx_ranges: 2 per element = [idx_offset, idx_len]
      • aabbs: 6 per element = [minx,miny,minz,maxx,maxy,maxz]

      Parameters

      • positions: Float32Array
      • pos_ranges: Uint32Array
      • indices: Uint32Array
      • idx_ranges: Uint32Array
      • aabbs: Float32Array

      Returns void

    • Run one rule. group_a/group_b are GLOBAL element indices. OMIT group_b (pass undefined/null) for a self-clash within group_a; pass an array -- INCLUDING an empty one -- for a two-sided rule. An empty array is a B side that matched nothing and yields no clashes, which is why this is nullable rather than "empty means self" (#5354). mode: 0 = hard, 1 = clearance. Records carry GLOBAL element indices.

      Parameters

      • group_a: Uint32Array
      • group_b: Uint32Array<ArrayBufferLike> | null | undefined
      • mode: number
      • tolerance: number
      • clearance: number
      • report_touch: boolean

      Returns ClashRunResult