| 1234567891011121314151617181920212223242526 |
- import SegmentIntersectionDetector from './SegmentIntersectionDetector'
- import MCIndexSegmentSetMutualIntersector from './MCIndexSegmentSetMutualIntersector'
- export default class FastSegmentSetIntersectionFinder {
- constructor() {
- FastSegmentSetIntersectionFinder.constructor_.apply(this, arguments)
- }
- static constructor_() {
- this._segSetMutInt = null
- const baseSegStrings = arguments[0]
- this._segSetMutInt = new MCIndexSegmentSetMutualIntersector(baseSegStrings)
- }
- getSegmentSetIntersector() {
- return this._segSetMutInt
- }
- intersects() {
- if (arguments.length === 1) {
- const segStrings = arguments[0]
- const intFinder = new SegmentIntersectionDetector()
- return this.intersects(segStrings, intFinder)
- } else if (arguments.length === 2) {
- const segStrings = arguments[0], intDetector = arguments[1]
- this._segSetMutInt.process(segStrings, intDetector)
- return intDetector.hasIntersection()
- }
- }
- }
|