clipper2-ts 2.0.1-7 → 2.0.1-9

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.
Files changed (45) hide show
  1. package/README.md +12 -10
  2. package/dist/Core.d.ts +126 -98
  3. package/dist/Core.d.ts.map +1 -1
  4. package/dist/Core.js +610 -655
  5. package/dist/Core.js.map +1 -1
  6. package/dist/Engine.d.ts +12 -17
  7. package/dist/Engine.d.ts.map +1 -1
  8. package/dist/Engine.js +70 -80
  9. package/dist/Engine.js.map +1 -1
  10. package/dist/Minkowski.d.ts +6 -6
  11. package/dist/Minkowski.d.ts.map +1 -1
  12. package/dist/Minkowski.js +92 -99
  13. package/dist/Minkowski.js.map +1 -1
  14. package/dist/Offset.d.ts.map +1 -1
  15. package/dist/Offset.js +6 -3
  16. package/dist/Offset.js.map +1 -1
  17. package/dist/RectClip.d.ts +1 -0
  18. package/dist/RectClip.d.ts.map +1 -1
  19. package/dist/RectClip.js +130 -93
  20. package/dist/RectClip.js.map +1 -1
  21. package/dist/Triangulation.d.ts.map +1 -1
  22. package/dist/Triangulation.js +21 -23
  23. package/dist/Triangulation.js.map +1 -1
  24. package/dist/clipper2.min.mjs +7 -0
  25. package/dist/clipper2.min.mjs.map +1 -0
  26. package/dist/index.d.ts +3 -3
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1 -1
  29. package/dist/index.js.map +1 -1
  30. package/package.json +10 -2
  31. package/src/Core.ts +617 -583
  32. package/src/Engine.ts +70 -73
  33. package/src/Minkowski.ts +102 -105
  34. package/src/Offset.ts +6 -3
  35. package/src/RectClip.ts +63 -114
  36. package/src/Triangulation.ts +20 -22
  37. package/src/index.ts +14 -12
  38. package/dist/OutPtPool.d.ts +0 -12
  39. package/dist/OutPtPool.d.ts.map +0 -1
  40. package/dist/OutPtPool.js +0 -40
  41. package/dist/OutPtPool.js.map +0 -1
  42. package/dist/VertexPool.d.ts +0 -12
  43. package/dist/VertexPool.d.ts.map +0 -1
  44. package/dist/VertexPool.js +0 -31
  45. package/dist/VertexPool.js.map +0 -1
package/README.md CHANGED
@@ -14,7 +14,7 @@ npm install clipper2-ts
14
14
  ## Usage
15
15
 
16
16
  ```typescript
17
- import { Clipper, FillRule, JoinType, EndType } from 'clipper2-ts';
17
+ import { intersect, union, difference, xor, inflatePaths, FillRule, JoinType, EndType } from 'clipper2-ts';
18
18
 
19
19
  // Define polygons as arrays of points
20
20
  const subject = [[
@@ -32,13 +32,13 @@ const clip = [[
32
32
  ]];
33
33
 
34
34
  // Boolean operations
35
- const intersection = Clipper.intersect(subject, clip, FillRule.NonZero);
36
- const union = Clipper.union(subject, clip, FillRule.NonZero);
37
- const difference = Clipper.difference(subject, clip, FillRule.NonZero);
38
- const xor = Clipper.xor(subject, clip, FillRule.NonZero);
35
+ const intersection = intersect(subject, clip, FillRule.NonZero);
36
+ const unionResult = union(subject, clip, FillRule.NonZero);
37
+ const diff = difference(subject, clip, FillRule.NonZero);
38
+ const xorResult = xor(subject, clip, FillRule.NonZero);
39
39
 
40
40
  // Polygon offsetting (inflate/deflate)
41
- const offset = Clipper.inflatePaths(subject, 10, JoinType.Round, EndType.Polygon);
41
+ const offset = inflatePaths(subject, 10, JoinType.Round, EndType.Polygon);
42
42
  ```
43
43
 
44
44
  ### Triangulation
@@ -46,7 +46,7 @@ const offset = Clipper.inflatePaths(subject, 10, JoinType.Round, EndType.Polygon
46
46
  Convert polygons into triangles using constrained Delaunay triangulation:
47
47
 
48
48
  ```typescript
49
- import { Clipper, TriangulateResult } from 'clipper2-ts';
49
+ import { triangulate, triangulateD, TriangulateResult } from 'clipper2-ts';
50
50
 
51
51
  const polygon = [[
52
52
  { x: 0, y: 0 },
@@ -55,14 +55,14 @@ const polygon = [[
55
55
  { x: 0, y: 100 }
56
56
  ]];
57
57
 
58
- const { result, solution } = Clipper.triangulate(polygon);
58
+ const { result, solution } = triangulate(polygon);
59
59
  if (result === TriangulateResult.success) {
60
60
  // solution contains triangles (each with 3 vertices)
61
61
  console.log(`Created ${solution.length} triangles`);
62
62
  }
63
63
 
64
64
  // For floating-point coordinates:
65
- const { result: resultD, solution: solutionD } = Clipper.triangulateD(polygon, 2);
65
+ const { result: resultD, solution: solutionD } = triangulateD(polygon, 2);
66
66
  ```
67
67
 
68
68
  ### Z-coordinate support
@@ -114,4 +114,6 @@ Boost Software License 1.0 (same as Clipper2)
114
114
 
115
115
  ## Credits
116
116
 
117
- Original library by Angus Johnson. TypeScript port maintained by Jeremy Tribby
117
+ Original Clipper2 library by Angus Johnson. TypeScript port maintained by Jeremy Tribby
118
+
119
+ Benchmark polygon data from [Poly2Tri](https://github.com/jhasse/poly2tri) (BSD 3-clause). See `LICENSE_THIRD_PARTY` for details
package/dist/Core.d.ts CHANGED
@@ -56,106 +56,134 @@ export declare enum PointInPolygonResult {
56
56
  }
57
57
  export type ZCallback64 = (bot1: Point64, top1: Point64, bot2: Point64, top2: Point64, intersectPt: Point64) => void;
58
58
  export type ZCallbackD = (bot1: PointD, top1: PointD, bot2: PointD, top2: PointD, intersectPt: PointD) => void;
59
- export declare namespace InternalClipper {
60
- const MaxInt64 = 9223372036854775807n;
61
- const MaxCoord: number;
62
- const max_coord: number;
63
- const min_coord: number;
64
- const Invalid64: number;
65
- const floatingPointTolerance = 1e-12;
66
- const defaultMinimumEdgeLength = 0.1;
67
- const maxCoordForSafeAreaProduct: number;
68
- const maxCoordForSafeCrossSq: number;
69
- function maxSafeCoordinateForScale(scale: number): number;
70
- function checkSafeScaleValue(value: number, maxAbs: number, context: string): void;
71
- function ensureSafeInteger(value: number, context: string): void;
72
- function crossProduct(pt1: Point64, pt2: Point64, pt3: Point64): number;
73
- function crossProductSign(pt1: Point64, pt2: Point64, pt3: Point64): number;
74
- function checkPrecision(precision: number): void;
75
- function isAlmostZero(value: number): boolean;
76
- function triSign(x: number): number;
77
- interface UInt128Struct {
78
- lo64: bigint;
79
- hi64: bigint;
80
- }
81
- function multiplyUInt64(a: number, b: number): UInt128Struct;
82
- function productsAreEqual(a: number, b: number, c: number, d: number): boolean;
83
- function isCollinear(pt1: Point64, sharedPt: Point64, pt2: Point64): boolean;
84
- function dotProduct(pt1: Point64, pt2: Point64, pt3: Point64): number;
85
- function dotProductSign(pt1: Point64, pt2: Point64, pt3: Point64): number;
86
- function area(path: Path64): number;
87
- function crossProductD(vec1: PointD, vec2: PointD): number;
88
- function dotProductD(vec1: PointD, vec2: PointD): number;
89
- function roundToEven(value: number): number;
90
- function checkCastInt64(val: number): number;
91
- function getLineIntersectPt(ln1a: Point64, ln1b: Point64, ln2a: Point64, ln2b: Point64): {
92
- intersects: boolean;
93
- point: Point64;
94
- };
95
- function getLineIntersectPtD(ln1a: PointD, ln1b: PointD, ln2a: PointD, ln2b: PointD): {
96
- success: boolean;
97
- ip: PointD;
98
- };
99
- function segsIntersect(seg1a: Point64, seg1b: Point64, seg2a: Point64, seg2b: Point64, inclusive?: boolean): boolean;
100
- function getBounds(path: Path64): Rect64;
101
- function getClosestPtOnSegment(offPt: Point64, seg1: Point64, seg2: Point64): Point64;
102
- function pointInPolygon(pt: Point64, polygon: Path64): PointInPolygonResult;
103
- function path2ContainsPath1(path1: Path64, path2: Path64): boolean;
104
- }
105
- export declare namespace Point64Utils {
106
- function create(x?: number, y?: number, z?: number): Point64;
107
- function fromPointD(pt: PointD): Point64;
108
- function scale(pt: Point64, scale: number): Point64;
109
- function equals(a: Point64, b: Point64): boolean;
110
- function add(a: Point64, b: Point64): Point64;
111
- function subtract(a: Point64, b: Point64): Point64;
112
- function toString(pt: Point64): string;
113
- }
114
- export declare namespace PointDUtils {
115
- function create(x?: number, y?: number, z?: number): PointD;
116
- function fromPoint64(pt: Point64): PointD;
117
- function scale(pt: PointD, scale: number): PointD;
118
- function equals(a: PointD, b: PointD): boolean;
119
- function negate(pt: PointD): void;
120
- function toString(pt: PointD, precision?: number): string;
121
- }
122
- export declare namespace Rect64Utils {
123
- function create(l?: number, t?: number, r?: number, b?: number): Rect64;
124
- function createInvalid(): Rect64;
125
- function width(rect: Rect64): number;
126
- function height(rect: Rect64): number;
127
- function isEmpty(rect: Rect64): boolean;
128
- function isValid(rect: Rect64): boolean;
129
- function midPoint(rect: Rect64): Point64;
130
- function contains(rect: Rect64, pt: Point64): boolean;
131
- function containsRect(rect: Rect64, rec: Rect64): boolean;
132
- function intersects(rect: Rect64, rec: Rect64): boolean;
133
- function asPath(rect: Rect64): Path64;
59
+ declare function maxSafeCoordinateForScale(scale: number): number;
60
+ declare function checkSafeScaleValue(value: number, maxAbs: number, context: string): void;
61
+ declare function ensureSafeInteger(value: number, context: string): void;
62
+ declare function crossProduct(pt1: Point64, pt2: Point64, pt3: Point64): number;
63
+ declare function crossProductSign(pt1: Point64, pt2: Point64, pt3: Point64): number;
64
+ declare function checkPrecision(precision: number): void;
65
+ declare function isAlmostZero(value: number): boolean;
66
+ declare function triSign(x: number): number;
67
+ export interface UInt128Struct {
68
+ lo64: bigint;
69
+ hi64: bigint;
134
70
  }
135
- export declare namespace RectDUtils {
136
- function create(l?: number, t?: number, r?: number, b?: number): RectD;
137
- function createInvalid(): RectD;
138
- function width(rect: RectD): number;
139
- function height(rect: RectD): number;
140
- function isEmpty(rect: RectD): boolean;
141
- function midPoint(rect: RectD): PointD;
142
- function contains(rect: RectD, pt: PointD): boolean;
143
- function containsRect(rect: RectD, rec: RectD): boolean;
144
- function intersects(rect: RectD, rec: RectD): boolean;
145
- function asPath(rect: RectD): PathD;
146
- }
147
- export declare namespace PathUtils {
148
- function toString64(path: Path64): string;
149
- function toStringD(path: PathD, precision?: number): string;
150
- function reverse64(path: Path64): Path64;
151
- function reverseD(path: PathD): PathD;
152
- }
153
- export declare namespace PathsUtils {
154
- function toString64(paths: Paths64): string;
155
- function toStringD(paths: PathsD, precision?: number): string;
156
- function reverse64(paths: Paths64): Paths64;
157
- function reverseD(paths: PathsD): PathsD;
71
+ declare function multiplyUInt64(a: number, b: number): UInt128Struct;
72
+ declare function productsAreEqual(a: number, b: number, c: number, d: number): boolean;
73
+ declare function isCollinear(pt1: Point64, sharedPt: Point64, pt2: Point64): boolean;
74
+ declare function dotProduct(pt1: Point64, pt2: Point64, pt3: Point64): number;
75
+ declare function dotProductSign(pt1: Point64, pt2: Point64, pt3: Point64): number;
76
+ declare function icArea(path: Path64): number;
77
+ declare function crossProductD(vec1: PointD, vec2: PointD): number;
78
+ declare function dotProductD(vec1: PointD, vec2: PointD): number;
79
+ declare function roundToEven(value: number): number;
80
+ declare function checkCastInt64(val: number): number;
81
+ declare function getLineIntersectPt(ln1a: Point64, ln1b: Point64, ln2a: Point64, ln2b: Point64): Point64 | null;
82
+ declare function getLineIntersectPtD(ln1a: PointD, ln1b: PointD, ln2a: PointD, ln2b: PointD): {
83
+ success: boolean;
84
+ ip: PointD;
85
+ };
86
+ declare function segsIntersect(seg1a: Point64, seg1b: Point64, seg2a: Point64, seg2b: Point64, inclusive?: boolean): boolean;
87
+ declare function icGetBounds(path: Path64): Rect64;
88
+ declare function getClosestPtOnSegment(offPt: Point64, seg1: Point64, seg2: Point64): Point64;
89
+ declare function icPointInPolygon(pt: Point64, polygon: Path64): PointInPolygonResult;
90
+ declare function path2ContainsPath1(path1: Path64, path2: Path64): boolean;
91
+ export declare const InternalClipper: {
92
+ MaxInt64: bigint;
93
+ MaxCoord: number;
94
+ max_coord: number;
95
+ min_coord: number;
96
+ Invalid64: number;
97
+ floatingPointTolerance: number;
98
+ defaultMinimumEdgeLength: number;
99
+ maxCoordForSafeAreaProduct: number;
100
+ maxCoordForSafeCrossSq: number;
101
+ maxSafeCoordinateForScale: typeof maxSafeCoordinateForScale;
102
+ checkSafeScaleValue: typeof checkSafeScaleValue;
103
+ ensureSafeInteger: typeof ensureSafeInteger;
104
+ crossProduct: typeof crossProduct;
105
+ crossProductSign: typeof crossProductSign;
106
+ checkPrecision: typeof checkPrecision;
107
+ isAlmostZero: typeof isAlmostZero;
108
+ triSign: typeof triSign;
109
+ multiplyUInt64: typeof multiplyUInt64;
110
+ productsAreEqual: typeof productsAreEqual;
111
+ isCollinear: typeof isCollinear;
112
+ dotProduct: typeof dotProduct;
113
+ dotProductSign: typeof dotProductSign;
114
+ area: typeof icArea;
115
+ crossProductD: typeof crossProductD;
116
+ dotProductD: typeof dotProductD;
117
+ roundToEven: typeof roundToEven;
118
+ checkCastInt64: typeof checkCastInt64;
119
+ getLineIntersectPt: typeof getLineIntersectPt;
120
+ getLineIntersectPtD: typeof getLineIntersectPtD;
121
+ segsIntersect: typeof segsIntersect;
122
+ getBounds: typeof icGetBounds;
123
+ getClosestPtOnSegment: typeof getClosestPtOnSegment;
124
+ pointInPolygon: typeof icPointInPolygon;
125
+ path2ContainsPath1: typeof path2ContainsPath1;
126
+ };
127
+ /** @deprecated Import UInt128Struct directly instead of using InternalClipper.UInt128Struct */
128
+ export declare namespace InternalClipper {
129
+ /** @deprecated Import UInt128Struct directly */
130
+ type UInt128Struct = import('./Core.js').UInt128Struct;
158
131
  }
132
+ export declare const Point64Utils: {
133
+ create(x?: number, y?: number, z?: number): Point64;
134
+ fromPointD(pt: PointD): Point64;
135
+ scale(pt: Point64, scale: number): Point64;
136
+ equals(a: Point64, b: Point64): boolean;
137
+ add(a: Point64, b: Point64): Point64;
138
+ subtract(a: Point64, b: Point64): Point64;
139
+ toString(pt: Point64): string;
140
+ };
141
+ export declare const PointDUtils: {
142
+ create(x?: number, y?: number, z?: number): PointD;
143
+ fromPoint64(pt: Point64): PointD;
144
+ scale(pt: PointD, scale: number): PointD;
145
+ equals(a: PointD, b: PointD): boolean;
146
+ negate(pt: PointD): void;
147
+ toString(pt: PointD, precision?: number): string;
148
+ };
149
+ export declare const Rect64Utils: {
150
+ create(l?: number, t?: number, r?: number, b?: number): Rect64;
151
+ createInvalid(): Rect64;
152
+ width(rect: Rect64): number;
153
+ height(rect: Rect64): number;
154
+ isEmpty(rect: Rect64): boolean;
155
+ isValid(rect: Rect64): boolean;
156
+ midPoint(rect: Rect64): Point64;
157
+ contains(rect: Rect64, pt: Point64): boolean;
158
+ containsRect(rect: Rect64, rec: Rect64): boolean;
159
+ intersects(rect: Rect64, rec: Rect64): boolean;
160
+ asPath(rect: Rect64): Path64;
161
+ };
162
+ export declare const RectDUtils: {
163
+ create(l?: number, t?: number, r?: number, b?: number): RectD;
164
+ createInvalid(): RectD;
165
+ width(rect: RectD): number;
166
+ height(rect: RectD): number;
167
+ isEmpty(rect: RectD): boolean;
168
+ midPoint(rect: RectD): PointD;
169
+ contains(rect: RectD, pt: PointD): boolean;
170
+ containsRect(rect: RectD, rec: RectD): boolean;
171
+ intersects(rect: RectD, rec: RectD): boolean;
172
+ asPath(rect: RectD): PathD;
173
+ };
174
+ export declare const PathUtils: {
175
+ toString64(path: Path64): string;
176
+ toStringD(path: PathD, precision?: number): string;
177
+ reverse64(path: Path64): Path64;
178
+ reverseD(path: PathD): PathD;
179
+ };
180
+ export declare const PathsUtils: {
181
+ toString64(paths: Paths64): string;
182
+ toStringD(paths: PathsD, precision?: number): string;
183
+ reverse64(paths: Paths64): Paths64;
184
+ reverseD(paths: PathsD): PathsD;
185
+ };
159
186
  export declare const InvalidRect64: Rect64;
160
187
  export declare const InvalidRectD: RectD;
188
+ export {};
161
189
  //# sourceMappingURL=Core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Core.d.ts","sourceRoot":"","sources":["../src/Core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Core.d.ts","sourceRoot":"","sources":["../src/Core.ts"],"names":[],"mappings":"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"}