Skip to content

editorGlobalsJstsPolygonClipper

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