Skip to content

editor › Globals › JstsPolygonClipper

Class: JstsPolygonClipper

Hierarchy

↳ JstsPolygonClipper

Index

Properties

Methods

Properties

Static Private precision

▪ precision: any = Config.get("modelLimits.maximumPositionPrecision")

Defined in src/util/polygon/JstsPolygonClipper.ts:9

Methods

Private _getPolygonUnion

▸ _getPolygonUnion(polygons: Array‹Polygon | MultiPolygon›): Polygon[]

Defined in src/util/polygon/JstsPolygonClipper.ts:109

Parameters:

Name Type
polygons Array‹Polygon | MultiPolygon›

Returns: Polygon[]


Private _isEmpty

▸ _isEmpty(polygons: Array‹Polygon | MultiPolygon›): boolean

Defined in src/util/polygon/JstsPolygonClipper.ts:114

Parameters:

Name Type
polygons Array‹Polygon | MultiPolygon›

Returns: boolean


Private _polygonArrayFromJstsResult

▸ _polygonArrayFromJstsResult(jstsResult: any): Polygon[]

Defined in src/util/polygon/JstsPolygonClipper.ts:118

Parameters:

Name Type
jstsResult any

Returns: Polygon[]


difference

▸ difference(base: Polygon | MultiPolygon, candidates: Array‹Polygon | MultiPolygon›): MultiPolygon

Overrides PolygonClipper.difference

Defined in src/util/polygon/JstsPolygonClipper.ts:66

Because jsts does not support difference operations on GeometryCollections we have to calculate the difference of all the given polygons "by hand" and combine them correctly in the end.

Parameters:

Name Type Description
base Polygon | MultiPolygon -
candidates Array‹Polygon | MultiPolygon›

Returns: MultiPolygon


intersection

▸ intersection(base: Polygon | MultiPolygon, candidates: Array‹Polygon | MultiPolygon›): MultiPolygon

Overrides PolygonClipper.intersection

Defined in src/util/polygon/JstsPolygonClipper.ts:17

Because jsts was throwing some errors when passing several candidates we have to calculate the intersection of all the given polygons "by hand" by performing several intersections one after another.

Parameters:

Name Type Description
base Polygon | MultiPolygon -
candidates Array‹Polygon | MultiPolygon›

Returns: MultiPolygon


multiUnion

▸ multiUnion(polygons: Array‹Polygon | MultiPolygon›): MultiPolygon

Overrides PolygonClipper.multiUnion

Defined in src/util/polygon/JstsPolygonClipper.ts:44

Parameters:

Name Type
polygons Array‹Polygon | MultiPolygon›

Returns: MultiPolygon


prepareForJsts

▸ prepareForJsts(base: Polygon | MultiPolygon): any

Defined in src/util/polygon/JstsPolygonClipper.ts:92

Parameters:

Name Type
base Polygon | MultiPolygon

Returns: any


returnFromJsts

▸ returnFromJsts(jstsResult: any): MultiPolygon

Defined in src/util/polygon/JstsPolygonClipper.ts:100

Parameters:

Name Type
jstsResult any

Returns: MultiPolygon


union

▸ union(base: Polygon | MultiPolygon, candidates: Array‹Polygon | MultiPolygon›): MultiPolygon

Overrides PolygonClipper.union

Defined in src/util/polygon/JstsPolygonClipper.ts:40

Parameters:

Name Type
base Polygon | MultiPolygon
candidates Array‹Polygon | MultiPolygon›

Returns: MultiPolygon