earstrip 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +15 -0
- package/README.md +61 -2
- package/dist/earstrip.wasm +0 -0
- package/dist/wasm.js +2 -0
- package/earstrip.d.ts +28 -0
- package/earstrip.js +145 -0
- package/package.json +23 -4
package/LICENSE
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026, Evgen Bodunov
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
10
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
11
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
12
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
13
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
14
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
15
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,62 @@
|
|
|
1
|
-
#
|
|
1
|
+
# earstrip
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Polygon triangulation by ear clipping, compiled to WebAssembly. The default export takes the same arguments as
|
|
4
|
+
earcut and returns the same kind of result, so it can replace it in place:
|
|
5
|
+
|
|
6
|
+
```js
|
|
7
|
+
import earstrip from 'earstrip';
|
|
8
|
+
|
|
9
|
+
// a square with a square hole: flat coordinates, then the vertex index where each hole starts
|
|
10
|
+
const triangles = earstrip([0, 0, 10, 0, 10, 10, 0, 10, 2, 2, 8, 2, 8, 8, 2, 8], [4]);
|
|
11
|
+
// [i0, i1, i2, ...], three indices per counter-clockwise triangle
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
The module is inlined and compiles synchronously where the platform allows it; elsewhere `await ready` before the
|
|
15
|
+
first call.
|
|
16
|
+
|
|
17
|
+
## Triangle strips
|
|
18
|
+
|
|
19
|
+
The triangulator cuts ears along zig-zag strips, so the native result is a set of triangle strips, about 1.7 indices
|
|
20
|
+
per triangle on map polygons instead of 3:
|
|
21
|
+
|
|
22
|
+
```js
|
|
23
|
+
import { strips } from 'earstrip';
|
|
24
|
+
|
|
25
|
+
const { indices, ends, clockwise } = strips(vertices, holes);
|
|
26
|
+
// strip k is indices[ends[k - 1] ?? 0 .. ends[k]); clockwise[k] tells the winding of its first triangle
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Many polygons at once
|
|
30
|
+
|
|
31
|
+
```js
|
|
32
|
+
import { batch } from 'earstrip';
|
|
33
|
+
|
|
34
|
+
const { indices, offsets } = batch(vertices, polygonStarts, holeIndices, holeStarts);
|
|
35
|
+
// indices count from the first vertex of `vertices`; polygon k owns indices[offsets[k] .. offsets[k + 1])
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
One call for a whole tile avoids the per-call cost of crossing into WebAssembly.
|
|
39
|
+
|
|
40
|
+
## Polygons that are not simple
|
|
41
|
+
|
|
42
|
+
`lastStatus()` says how the last polygon was covered: `exact`; `holes-left-out` when a hole could not be joined;
|
|
43
|
+
`approximate` when the boundary crosses itself and the polygon was cut again with its crossings split into loops,
|
|
44
|
+
each filled only if it lies inside the rings by the even-odd rule; `refused` when that was turned off with
|
|
45
|
+
`setForcedCuts(false)`.
|
|
46
|
+
|
|
47
|
+
## Speed
|
|
48
|
+
|
|
49
|
+
3,740,425 polygons of GLMap's zoom 13 tiles, 28.9 million vertices, Apple M4 Pro, one thread:
|
|
50
|
+
|
|
51
|
+
| | V8 (Node) | JavaScriptCore |
|
|
52
|
+
|---|---:|---:|
|
|
53
|
+
| earstrip, one call per polygon | 875 ms | 934 ms |
|
|
54
|
+
| earstrip, one batch call | 737 ms | 732 ms |
|
|
55
|
+
| earcut.js 3.2.4 | 1,109 ms | 1,288 ms |
|
|
56
|
+
|
|
57
|
+
## Other helpers
|
|
58
|
+
|
|
59
|
+
- `flatten(rings)` turns GeoJSON-style rings into `{ vertices, holes, dimensions }`.
|
|
60
|
+
- `earstrip.d.ts` has the types.
|
|
61
|
+
|
|
62
|
+
The C++ header the module is built from works natively as well. ISC licence.
|
|
Binary file
|
package/dist/wasm.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// Generated by build.sh from src/wasm.cpp.
|
|
2
|
+
export default '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';
|
package/earstrip.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export type Coordinates = ArrayLike<number>;
|
|
2
|
+
|
|
3
|
+
/** Triangulates a polygon from flat coordinates (dim numbers per vertex) and the vertex index where each hole starts.
|
|
4
|
+
* Returns vertex indices, three per triangle, each counter-clockwise. Same arguments as earcut. */
|
|
5
|
+
declare function earstrip(data: Coordinates, holeIndices?: ArrayLike<number> | null, dim?: number): number[];
|
|
6
|
+
|
|
7
|
+
declare namespace earstrip {
|
|
8
|
+
/** The polygon as triangle strips: all strip indices, the end of each strip, and whether its first triangle is clockwise. */
|
|
9
|
+
function strips(data: Coordinates, holeIndices?: ArrayLike<number> | null, dim?: number): { indices: Uint32Array; ends: Uint32Array; clockwise: Uint8Array };
|
|
10
|
+
/** Many polygons in one call; indices count from the first vertex of data, polygon k owns indices[offsets[k], offsets[k + 1]). */
|
|
11
|
+
function batch(data: Coordinates, polygonStarts: ArrayLike<number>, holeIndices?: ArrayLike<number> | null, holeStarts?: ArrayLike<number> | null, dim?: number): { indices: Uint32Array; offsets: Uint32Array };
|
|
12
|
+
/** How the last polygon was covered. */
|
|
13
|
+
function lastStatus(): 'exact' | 'holes-left-out' | 'approximate' | 'refused';
|
|
14
|
+
/** Cut polygons without ears anyway (default) or give up on them. */
|
|
15
|
+
function setForcedCuts(on: boolean): void;
|
|
16
|
+
/** GeoJSON-style rings as earstrip's arguments. */
|
|
17
|
+
function flatten(rings: ArrayLike<ArrayLike<ArrayLike<number>>>): { vertices: number[]; holes: number[]; dimensions: number };
|
|
18
|
+
/** Resolves once the WebAssembly module is compiled; already resolved where it compiles synchronously. */
|
|
19
|
+
const ready: Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export default earstrip;
|
|
23
|
+
export declare const strips: typeof earstrip.strips;
|
|
24
|
+
export declare const batch: typeof earstrip.batch;
|
|
25
|
+
export declare const lastStatus: typeof earstrip.lastStatus;
|
|
26
|
+
export declare const setForcedCuts: typeof earstrip.setForcedCuts;
|
|
27
|
+
export declare const flatten: typeof earstrip.flatten;
|
|
28
|
+
export declare const ready: Promise<void>;
|
package/earstrip.js
ADDED
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
// earstrip for JavaScript: the C++ triangulator compiled to WebAssembly, with an earcut-compatible call.
|
|
2
|
+
// https://github.com/GLMap/earstrip
|
|
3
|
+
//
|
|
4
|
+
// Copyright (c) 2026 Evgen Bodunov
|
|
5
|
+
// SPDX-License-Identifier: ISC
|
|
6
|
+
|
|
7
|
+
import wasmBase64 from './dist/wasm.js';
|
|
8
|
+
|
|
9
|
+
function decode(base64) {
|
|
10
|
+
if (typeof Buffer !== 'undefined') return new Uint8Array(Buffer.from(base64, 'base64'));
|
|
11
|
+
const text = atob(base64);
|
|
12
|
+
const bytes = new Uint8Array(text.length);
|
|
13
|
+
for (let i = 0; i < text.length; ++i) bytes[i] = text.charCodeAt(i);
|
|
14
|
+
return bytes;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const imports = {
|
|
18
|
+
env: { emscripten_notify_memory_growth() {} },
|
|
19
|
+
wasi_snapshot_preview1: { fd_write: () => 0, fd_close: () => 0, fd_seek: () => 0 },
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
let ex = null;
|
|
23
|
+
let memory = null;
|
|
24
|
+
let f64 = null, u32 = null, u8 = null;
|
|
25
|
+
let layout = 0; // where the module publishes its buffers, in u32 units
|
|
26
|
+
|
|
27
|
+
function start(instance) {
|
|
28
|
+
ex = instance.exports;
|
|
29
|
+
memory = ex.memory;
|
|
30
|
+
ex._initialize();
|
|
31
|
+
layout = ex.layoutBuffer() >> 2;
|
|
32
|
+
views();
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Typed views of the module memory, made again whenever it grows.
|
|
36
|
+
function views() {
|
|
37
|
+
if (f64 && f64.buffer === memory.buffer) return;
|
|
38
|
+
f64 = new Float64Array(memory.buffer);
|
|
39
|
+
u32 = new Uint32Array(memory.buffer);
|
|
40
|
+
u8 = new Uint8Array(memory.buffer);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const bytes = decode(wasmBase64);
|
|
44
|
+
// Compiling synchronously lets earstrip() be called right after the import; where that is not allowed (a browser
|
|
45
|
+
// main thread may refuse it), `ready` resolves once the module is compiled.
|
|
46
|
+
export let ready;
|
|
47
|
+
try {
|
|
48
|
+
start(new WebAssembly.Instance(new WebAssembly.Module(bytes), imports));
|
|
49
|
+
ready = Promise.resolve();
|
|
50
|
+
} catch (e) {
|
|
51
|
+
ready = WebAssembly.instantiate(bytes, imports).then((r) => start(r.instance));
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function load(data, holeIndices, dim) {
|
|
55
|
+
if (!ex) throw new Error('earstrip: the WebAssembly module is not compiled yet, await ready first');
|
|
56
|
+
const holes = holeIndices ? holeIndices.length : 0;
|
|
57
|
+
const ptr = ex.reserve(data.length, holes);
|
|
58
|
+
views();
|
|
59
|
+
f64.set(data, ptr >> 3);
|
|
60
|
+
if (holes) u32.set(holeIndices, ex.holeBuffer() >> 2);
|
|
61
|
+
return holes;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// Triangulates a polygon given as flat coordinates (dim numbers per vertex, x and y first) and the vertex index where
|
|
65
|
+
// each hole starts, the same arguments earcut takes. Returns an array of vertex indices, three per triangle, each
|
|
66
|
+
// counter-clockwise (positive area with y up).
|
|
67
|
+
export default function earstrip(data, holeIndices, dim = 2) {
|
|
68
|
+
if (!ex) throw new Error('earstrip: the WebAssembly module is not compiled yet, await ready first');
|
|
69
|
+
const n = data.length, h = holeIndices ? holeIndices.length : 0;
|
|
70
|
+
if (u32.buffer !== memory.buffer) views();
|
|
71
|
+
if (u32[layout + 1] < n || u32[layout + 3] < h) {
|
|
72
|
+
ex.grow(n, h);
|
|
73
|
+
views();
|
|
74
|
+
}
|
|
75
|
+
f64.set(data, u32[layout] >> 3);
|
|
76
|
+
if (h) u32.set(holeIndices, u32[layout + 2] >> 2);
|
|
77
|
+
ex.run(Math.floor(n / dim), dim, h);
|
|
78
|
+
if (u32.buffer !== memory.buffer) views();
|
|
79
|
+
const out = u32[layout + 4] >> 2, count = u32[layout + 5];
|
|
80
|
+
// a plain array, as earcut returns: cheaper to make than a typed one in V8 for the few indices of most polygons
|
|
81
|
+
const triangles = new Array(count);
|
|
82
|
+
for (let i = 0; i < count; ++i) triangles[i] = u32[out + i];
|
|
83
|
+
return triangles;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// The same polygon as triangle strips: { indices, ends, clockwise } with the indices of all strips one after another,
|
|
87
|
+
// the end of each strip in them, and per strip whether its first triangle runs clockwise.
|
|
88
|
+
export function strips(data, holeIndices, dim = 2) {
|
|
89
|
+
const holes = load(data, holeIndices, dim);
|
|
90
|
+
const count = ex.strip(Math.floor(data.length / dim), dim, holes);
|
|
91
|
+
views();
|
|
92
|
+
const indexCount = ex.stripIndexCount();
|
|
93
|
+
const i = ex.stripIndices() >> 2, e = ex.stripEnds() >> 2, c = ex.stripClockwise();
|
|
94
|
+
return { indices: u32.slice(i, i + indexCount), ends: u32.slice(e, e + count), clockwise: u8.slice(c, c + count) };
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// Triangulates many polygons in one call. data holds the coordinates of all of them; polygon k has the vertices
|
|
98
|
+
// [polygonStarts[k], polygonStarts[k + 1]) and the holes holeIndices[holeStarts[k] .. holeStarts[k + 1]), counted
|
|
99
|
+
// from its own first vertex. Returns { indices, offsets }: indices count from the first vertex of data, and polygon
|
|
100
|
+
// k's triangles are indices[offsets[k] .. offsets[k + 1]).
|
|
101
|
+
export function batch(data, polygonStarts, holeIndices, holeStarts, dim = 2) {
|
|
102
|
+
const polygons = polygonStarts.length - 1;
|
|
103
|
+
load(data, holeIndices, dim);
|
|
104
|
+
const s = ex.reserveBatch(polygons);
|
|
105
|
+
views();
|
|
106
|
+
u32.set(polygonStarts, s >> 2);
|
|
107
|
+
if (holeStarts) u32.set(holeStarts, ex.batchHoleStarts() >> 2);
|
|
108
|
+
else u32.fill(0, ex.batchHoleStarts() >> 2, (ex.batchHoleStarts() >> 2) + polygons + 1);
|
|
109
|
+
const count = ex.triangulateBatch(polygons, dim);
|
|
110
|
+
views();
|
|
111
|
+
const out = ex.output() >> 2, off = ex.offsets() >> 2;
|
|
112
|
+
return { indices: u32.slice(out, out + count), offsets: u32.slice(off, off + polygons + 1) };
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// How the last polygon was covered: 'exact', 'holes-left-out', 'approximate' (it is not simple) or 'refused'.
|
|
116
|
+
export function lastStatus() {
|
|
117
|
+
return ['exact', 'holes-left-out', 'approximate', 'refused'][ex.lastStatus()];
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// When a polygon runs out of ears, cut it anyway (the default) or give up and leave it partly covered.
|
|
121
|
+
export function setForcedCuts(on) {
|
|
122
|
+
ex.setForcedCuts(on ? 1 : 0);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
// GeoJSON-style rings (arrays of [x, y, ...] points, outer ring first) as earstrip's arguments.
|
|
126
|
+
export function flatten(rings) {
|
|
127
|
+
const vertices = [], holes = [];
|
|
128
|
+
const dimensions = rings.length && rings[0].length ? rings[0][0].length : 2;
|
|
129
|
+
let count = 0;
|
|
130
|
+
for (let r = 0; r < rings.length; ++r) {
|
|
131
|
+
if (r > 0) holes.push(count);
|
|
132
|
+
for (const point of rings[r]) {
|
|
133
|
+
for (let d = 0; d < dimensions; ++d) vertices.push(point[d]);
|
|
134
|
+
count++;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return { vertices, holes, dimensions };
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
earstrip.strips = strips;
|
|
141
|
+
earstrip.batch = batch;
|
|
142
|
+
earstrip.lastStatus = lastStatus;
|
|
143
|
+
earstrip.setForcedCuts = setForcedCuts;
|
|
144
|
+
earstrip.flatten = flatten;
|
|
145
|
+
earstrip.ready = ready;
|
package/package.json
CHANGED
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "earstrip",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Fast polygon triangulation into triangle strips: ear clipping in WebAssembly, an earcut-compatible call",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "earstrip.js",
|
|
7
|
+
"module": "earstrip.js",
|
|
8
|
+
"types": "earstrip.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./earstrip.d.ts",
|
|
12
|
+
"default": "./earstrip.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": ["earstrip.js", "earstrip.d.ts", "dist/wasm.js", "dist/earstrip.wasm"],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "./build.sh",
|
|
18
|
+
"test": "node test/test.mjs"
|
|
19
|
+
},
|
|
20
|
+
"keywords": ["triangulation", "polygon", "ear clipping", "triangle strip", "webgl", "webgpu", "wasm", "map", "earcut"],
|
|
21
|
+
"license": "ISC",
|
|
22
|
+
"author": "Evgen Bodunov",
|
|
23
|
+
"repository": { "type": "git", "url": "git+https://github.com/GLMap/earstrip.git" },
|
|
24
|
+
"sideEffects": false
|
|
25
|
+
}
|