editor › Globals › CutLineClipper
Class: CutLineClipper
Since many polygon-clipping implementations only handle the polygons themselves, this class performs basic cut line operations on the output of a polygon clipping operation. It does, however, NOT clamp the cutLines but merely sorts them to the right polygon, because clamping should be done as a last step after all required boolean operations have been performed.
Hierarchy
- CutLineClipper
Index
Methods
Methods
Static Private _assignCutLines
▸ _assignCutLines(bases: Array‹Polygon | MultiPolygon›, candidates: Array‹Polygon | MultiPolygon›, result: MultiPolygon, discardCandidatesCutlines: boolean): void
Defined in src/util/polygon/CutLineClipper.ts:52
Parameters:
| Name | Type | Default |
|---|---|---|
bases |
Array‹Polygon | MultiPolygon› | - |
candidates |
Array‹Polygon | MultiPolygon› | - |
result |
MultiPolygon | - |
discardCandidatesCutlines |
boolean | false |
Returns: void
Static difference
▸ difference(bases: Array‹Polygon | MultiPolygon›, candidates: Array‹Polygon | MultiPolygon›, result: MultiPolygon): void
Defined in src/util/polygon/CutLineClipper.ts:33
Discards candidate cutlines, assigns the cutLines of bases to that result polygon whose AABB contains the cutLine. (without modifying a.k.a. clamping the cutLine)
Parameters:
| Name | Type | Description |
|---|---|---|
bases |
Array‹Polygon | MultiPolygon› | array of (original) base polygons |
candidates |
Array‹Polygon | MultiPolygon› | array of (original) candidate polygons |
result |
MultiPolygon | the resulting polygon, this will be modified |
Returns: void
Static intersection
▸ intersection(bases: Array‹Polygon | MultiPolygon›, candidates: Array‹Polygon | MultiPolygon›, result: MultiPolygon): void
Defined in src/util/polygon/CutLineClipper.ts:44
see CutLineClipper#difference - same behavior
Parameters:
| Name | Type |
|---|---|
bases |
Array‹Polygon | MultiPolygon› |
candidates |
Array‹Polygon | MultiPolygon› |
result |
MultiPolygon |
Returns: void
Static union
▸ union(bases: Array‹Polygon | MultiPolygon›, candidates: Array‹Polygon | MultiPolygon›, result: MultiPolygon): void
Defined in src/util/polygon/CutLineClipper.ts:18
Assigns cutLines of bases + candidates to that result polygon whose AABB contains the cutLine (without modifying a.k.a. clamping the cutLine)
Parameters:
| Name | Type | Description |
|---|---|---|
bases |
Array‹Polygon | MultiPolygon› | array of (original) base polygons |
candidates |
Array‹Polygon | MultiPolygon› | array of (original) candidate polygons |
result |
MultiPolygon | the resulting polygon, this will be modified |
Returns: void