merge-simple-polygons

2.0.0 • Public • Published

merge-simple-polygons

Merge two (adjacent) simple polygons into another simple polygon.

npm version License Contact me

Installation

npm install merge-simple-polygons

Usage

This package is ESM only.

The module's default export is a function that takes two arrays of vertex names, each spanning a planar polygon and returns:

  • false if the given polygons share no vertices
  • null if there would be more than one resulting simple polygon (if the two given polygons share either exactly one vertex, which would result in two polygons or multiple egdes that are not connected, which would result in a polygon with a "hole")
  • a list of vertex IDs forming the merged polygon
import mergePolygons from 'merge-simple-polygons'

const polygonA = ['a', 'b', 'c', 'd', 'e']
const polygonB = ['e', 'a', 'g', 'h', 'i', 'd']
const polygonC = mergePolygons(polygonA, polygonB)
console.log(polygonC) // ['a', 'b', 'c', 'd', 'i', 'h', 'g']

const polygonD = ['a', 'b', 'c']
const polygonE = ['d', 'e', 'f']
console.log(mergePolygons(polygonD, polygonE)) // false

const polygonF = ['a', 'b', 'c', 'd', 'e']
const polygonG = ['a', 'b', 'f', 'e', 'd', 'g']
console.log(mergePolygons(polygonF, polygonG)) // null

Contributing

If you found a bug or want to propose a feature, feel free to visit the issues page.

Package Sidebar

Install

npm i merge-simple-polygons

Weekly Downloads

1

Version

2.0.0

License

ISC

Unpacked Size

6.17 kB

Total Files

4

Last publish

Collaborators

  • juliuste