UNPKG

@phi-ag/rvt

Version:

Parse Revit file format

26 lines (25 loc) 727 B
export class Boundaries { items = []; add([start, end]) { const previous = this.items[this.items.length - 1]; if (previous === undefined) { this.items.push([start, end, 0]); return; } const [prevStart, prevEnd, prevOffset] = previous; if (prevEnd !== start) { const offset = prevEnd - prevStart + prevOffset; this.items.push([start, end, offset]); } else { previous[1] = end; } } size() { const last = this.items[this.items.length - 1]; if (last === undefined) return 0; const [start, end, offset] = last; return end - start + offset; } }