poly-extrude 0.13.0 → 0.15.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.
Files changed (68) hide show
  1. package/dist/cylinder.d.ts +11 -0
  2. package/{src → dist}/cylinder.js +108 -111
  3. package/dist/cylinder.js.map +1 -0
  4. package/dist/index.d.ts +8 -0
  5. package/dist/index.js +9 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/math/Curve.d.ts +41 -0
  8. package/dist/math/Curve.js +142 -0
  9. package/dist/math/Curve.js.map +1 -0
  10. package/dist/math/Interpolations.d.ts +8 -0
  11. package/dist/math/Interpolations.js +48 -0
  12. package/dist/math/Interpolations.js.map +1 -0
  13. package/dist/math/Matrix4.d.ts +8 -0
  14. package/dist/math/Matrix4.js +582 -0
  15. package/dist/math/Matrix4.js.map +1 -0
  16. package/dist/math/QuadraticBezierCurve3.d.ts +10 -0
  17. package/dist/math/QuadraticBezierCurve3.js +22 -0
  18. package/dist/math/QuadraticBezierCurve3.js.map +1 -0
  19. package/dist/math/Quaternion.d.ts +46 -0
  20. package/dist/math/Quaternion.js +415 -0
  21. package/dist/math/Quaternion.js.map +1 -0
  22. package/dist/math/Vector3.d.ts +42 -0
  23. package/dist/math/Vector3.js +403 -0
  24. package/dist/math/Vector3.js.map +1 -0
  25. package/dist/path/PathPoint.d.ts +15 -0
  26. package/dist/path/PathPoint.js +35 -0
  27. package/dist/path/PathPoint.js.map +1 -0
  28. package/dist/path/PathPointList.d.ts +27 -0
  29. package/dist/path/PathPointList.js +212 -0
  30. package/dist/path/PathPointList.js.map +1 -0
  31. package/dist/path.d.ts +11 -0
  32. package/{src → dist}/path.js +334 -360
  33. package/dist/path.js.map +1 -0
  34. package/dist/plane.d.ts +2 -0
  35. package/{src → dist}/plane.js +57 -58
  36. package/dist/plane.js.map +1 -0
  37. package/dist/poly-extrude.js +1288 -1581
  38. package/dist/poly-extrude.js.map +1 -1
  39. package/dist/poly-extrude.min.js +2 -2
  40. package/dist/poly-extrude.mjs +1287 -1582
  41. package/dist/poly-extrude.mjs.map +1 -0
  42. package/dist/polygon.d.ts +9 -0
  43. package/{src → dist}/polygon.js +163 -179
  44. package/dist/polygon.js.map +1 -0
  45. package/dist/polyline.d.ts +24 -0
  46. package/{src → dist}/polyline.js +420 -456
  47. package/dist/polyline.js.map +1 -0
  48. package/dist/tube.d.ts +12 -0
  49. package/{src → dist}/tube.js +124 -142
  50. package/dist/tube.js.map +1 -0
  51. package/dist/type.d.ts +9 -0
  52. package/dist/type.js +2 -0
  53. package/dist/type.js.map +1 -0
  54. package/dist/util.d.ts +21 -0
  55. package/{src → dist}/util.js +217 -242
  56. package/dist/util.js.map +1 -0
  57. package/package.json +10 -5
  58. package/readme.md +12 -2
  59. package/src/cylinder.ts +124 -0
  60. package/src/index.ts +13 -0
  61. package/src/path.ts +385 -0
  62. package/src/plane.ts +60 -0
  63. package/src/polygon.ts +189 -0
  64. package/src/polyline.ts +473 -0
  65. package/src/tube.ts +155 -0
  66. package/src/type.ts +9 -0
  67. package/src/util.ts +243 -0
  68. package/index.js +0 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polyline.js","sourceRoot":"","sources":["../src/polyline.ts"],"names":[],"mappings":"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"}
package/dist/tube.d.ts ADDED
@@ -0,0 +1,12 @@
1
+ import { PolylineType, ResultType } from './type';
2
+ type TubesOptions = {
3
+ radius?: number;
4
+ cornerSplit?: number;
5
+ radialSegments?: number;
6
+ startRad?: number;
7
+ };
8
+ type TubesResult = ResultType & {
9
+ lines: Array<PolylineType>;
10
+ };
11
+ export declare function expandTubes(lines: Array<PolylineType>, options?: TubesOptions): TubesResult;
12
+ export {};
@@ -1,142 +1,124 @@
1
- import { Vector3 } from './math/Vector3';
2
- import { PathPoint } from './path/PathPoint';
3
- import { PathPointList } from './path/PathPointList';
4
- import { line2Vectors, merge } from './util';
5
- const UP = new Vector3(0, 0, 1);
6
- const normalDir = new Vector3();
7
-
8
- export function expandTubes(lines, options) {
9
- options = Object.assign({}, { radius: 1, cornerSplit: 0, radialSegments: 8, startRad: -Math.PI / 4 }, options);
10
- const results = lines.map(line => {
11
- const points = line2Vectors(line);
12
- const pathPointList = new PathPointList();
13
- pathPointList.set(points, options.cornerRadius, options.cornerSplit, UP);
14
- const result = generateTubeVertexData(pathPointList, options);
15
- result.line = line;
16
- result.position = new Float32Array(result.points);
17
- result.indices = new Uint32Array(result.indices);
18
- result.uv = new Float32Array(result.uv);
19
- result.normal = new Float32Array(result.normal);
20
- return result;
21
- });
22
- const result = merge(results);
23
- result.lines = lines;
24
- return result;
25
- }
26
-
27
- // Vertex Data Generate Functions
28
- // code copy from https://github.com/shawn0326/three.path/blob/master/src/PathGeometry.js
29
- function generateTubeVertexData(pathPointList, options) {
30
- const radius = Math.max(options.radius || 1, 0.00000001);
31
- const progress = options.progress !== undefined ? options.progress : 1;
32
- const radialSegments = Math.max(3, options.radialSegments || 8);
33
- const startRad = options.startRad || 0;
34
-
35
- const circum = radius * 2 * Math.PI;
36
- const totalDistance = pathPointList.distance();
37
- const progressDistance = progress * totalDistance;
38
- if (progressDistance === 0) {
39
- return null;
40
- }
41
-
42
- let count = 0;
43
-
44
- // modify data
45
- const points = [];
46
- const normal = [];
47
- const uv = [];
48
- // const uv2 = [];
49
- const indices = [];
50
- let verticesCount = 0;
51
-
52
- let pIndex = -1;
53
- let nIndex = -1;
54
- let uIndex = -1;
55
- let iIndex = -1;
56
- function addVertices(pathPoint, radius, radialSegments) {
57
- const first = points.length === 0;
58
- const uvDist = pathPoint.dist / circum;
59
- // const uvDist2 = pathPoint.dist / totalDistance;
60
-
61
- for (let i = 0; i <= radialSegments; i++) {
62
- let r = i;
63
- if (r === radialSegments) {
64
- r = 0;
65
- }
66
- normalDir.copy(pathPoint.up).applyAxisAngle(pathPoint.dir, startRad + Math.PI * 2 * r / radialSegments).normalize();
67
-
68
- const scale = radius * pathPoint.widthScale;
69
- points[++pIndex] = pathPoint.pos.x + normalDir.x * scale;
70
- points[++pIndex] = pathPoint.pos.y + normalDir.y * scale;
71
- points[++pIndex] = pathPoint.pos.z + normalDir.z * scale;
72
-
73
- normal[++nIndex] = normalDir.x;
74
- normal[++nIndex] = normalDir.y;
75
- normal[++nIndex] = normalDir.z;
76
-
77
- uv[++uIndex] = uvDist;
78
- uv[++uIndex] = i / radialSegments;
79
-
80
- // uvs.push(uvDist, r / radialSegments);
81
-
82
- // if (generateUv2) {
83
- // uv2.push(uvDist2, r / radialSegments);
84
- // }
85
-
86
- verticesCount++;
87
- }
88
-
89
- if (!first) {
90
- const begin1 = verticesCount - (radialSegments + 1) * 2;
91
- const begin2 = verticesCount - (radialSegments + 1);
92
-
93
- for (let i = 0; i < radialSegments; i++) {
94
- indices[++iIndex] = begin2 + i;
95
- indices[++iIndex] = begin1 + i;
96
- indices[++iIndex] = begin1 + i + 1;
97
- indices[++iIndex] = begin2 + i;
98
- indices[++iIndex] = begin1 + i + 1;
99
- indices[++iIndex] = begin2 + i + 1;
100
- // index.push(
101
- // begin2 + i,
102
- // begin1 + i,
103
- // begin1 + i + 1,
104
- // begin2 + i,
105
- // begin1 + i + 1,
106
- // begin2 + i + 1
107
- // );
108
-
109
- count += 6;
110
- }
111
- }
112
- }
113
-
114
- if (progressDistance > 0) {
115
- for (let i = 0; i < pathPointList.count; i++) {
116
- const pathPoint = pathPointList.array[i];
117
-
118
- if (pathPoint.dist > progressDistance) {
119
- const prevPoint = pathPointList.array[i - 1];
120
- const lastPoint = new PathPoint();
121
-
122
- // linear lerp for progress
123
- const alpha = (progressDistance - prevPoint.dist) / (pathPoint.dist - prevPoint.dist);
124
- lastPoint.lerpPathPoints(prevPoint, pathPoint, alpha);
125
-
126
- addVertices(lastPoint, radius, radialSegments);
127
- break;
128
- } else {
129
- addVertices(pathPoint, radius, radialSegments);
130
- }
131
- }
132
- }
133
-
134
- return {
135
- points,
136
- normal,
137
- uv,
138
- // uv2,
139
- indices,
140
- count
141
- };
142
- }
1
+ import { Vector3 } from './math/Vector3';
2
+ import { PathPoint } from './path/PathPoint';
3
+ import { PathPointList } from './path/PathPointList';
4
+ import { line2Vectors, merge } from './util';
5
+ const UP = new Vector3(0, 0, 1);
6
+ const normalDir = new Vector3();
7
+ export function expandTubes(lines, options) {
8
+ options = Object.assign({}, { radius: 1, cornerSplit: 0, radialSegments: 8, startRad: -Math.PI / 4 }, options);
9
+ const results = lines.map(line => {
10
+ const points = line2Vectors(line);
11
+ const pathPointList = new PathPointList();
12
+ //@ts-ignore
13
+ pathPointList.set(points, 0, options.cornerSplit, UP);
14
+ const result = generateTubeVertexData(pathPointList, options);
15
+ result.line = line;
16
+ result.position = new Float32Array(result.points);
17
+ result.indices = new Uint32Array(result.indices);
18
+ result.uv = new Float32Array(result.uv);
19
+ result.normal = new Float32Array(result.normal);
20
+ return result;
21
+ });
22
+ const result = merge(results);
23
+ result.lines = lines;
24
+ return result;
25
+ }
26
+ // Vertex Data Generate Functions
27
+ // code copy from https://github.com/shawn0326/three.path/blob/master/src/PathGeometry.js
28
+ function generateTubeVertexData(pathPointList, options) {
29
+ const radius = Math.max(options.radius || 1, 0.00000001);
30
+ const progress = options.progress !== undefined ? options.progress : 1;
31
+ const radialSegments = Math.max(3, options.radialSegments || 8);
32
+ const startRad = options.startRad || 0;
33
+ const circum = radius * 2 * Math.PI;
34
+ const totalDistance = pathPointList.distance();
35
+ const progressDistance = progress * totalDistance;
36
+ if (progressDistance === 0) {
37
+ return null;
38
+ }
39
+ let count = 0;
40
+ // modify data
41
+ const points = [];
42
+ const normal = [];
43
+ const uv = [];
44
+ // const uv2 = [];
45
+ const indices = [];
46
+ let verticesCount = 0;
47
+ let pIndex = -1;
48
+ let nIndex = -1;
49
+ let uIndex = -1;
50
+ let iIndex = -1;
51
+ function addVertices(pathPoint, radius, radialSegments) {
52
+ const first = points.length === 0;
53
+ const uvDist = pathPoint.dist / circum;
54
+ // const uvDist2 = pathPoint.dist / totalDistance;
55
+ for (let i = 0; i <= radialSegments; i++) {
56
+ let r = i;
57
+ if (r === radialSegments) {
58
+ r = 0;
59
+ }
60
+ normalDir.copy(pathPoint.up).applyAxisAngle(pathPoint.dir, startRad + Math.PI * 2 * r / radialSegments).normalize();
61
+ const scale = radius * pathPoint.widthScale;
62
+ points[++pIndex] = pathPoint.pos.x + normalDir.x * scale;
63
+ points[++pIndex] = pathPoint.pos.y + normalDir.y * scale;
64
+ points[++pIndex] = pathPoint.pos.z + normalDir.z * scale;
65
+ normal[++nIndex] = normalDir.x;
66
+ normal[++nIndex] = normalDir.y;
67
+ normal[++nIndex] = normalDir.z;
68
+ uv[++uIndex] = uvDist;
69
+ uv[++uIndex] = i / radialSegments;
70
+ // uvs.push(uvDist, r / radialSegments);
71
+ // if (generateUv2) {
72
+ // uv2.push(uvDist2, r / radialSegments);
73
+ // }
74
+ verticesCount++;
75
+ }
76
+ if (!first) {
77
+ const begin1 = verticesCount - (radialSegments + 1) * 2;
78
+ const begin2 = verticesCount - (radialSegments + 1);
79
+ for (let i = 0; i < radialSegments; i++) {
80
+ indices[++iIndex] = begin2 + i;
81
+ indices[++iIndex] = begin1 + i;
82
+ indices[++iIndex] = begin1 + i + 1;
83
+ indices[++iIndex] = begin2 + i;
84
+ indices[++iIndex] = begin1 + i + 1;
85
+ indices[++iIndex] = begin2 + i + 1;
86
+ // index.push(
87
+ // begin2 + i,
88
+ // begin1 + i,
89
+ // begin1 + i + 1,
90
+ // begin2 + i,
91
+ // begin1 + i + 1,
92
+ // begin2 + i + 1
93
+ // );
94
+ count += 6;
95
+ }
96
+ }
97
+ }
98
+ if (progressDistance > 0) {
99
+ for (let i = 0; i < pathPointList.count; i++) {
100
+ const pathPoint = pathPointList.array[i];
101
+ if (pathPoint.dist > progressDistance) {
102
+ const prevPoint = pathPointList.array[i - 1];
103
+ const lastPoint = new PathPoint();
104
+ // linear lerp for progress
105
+ const alpha = (progressDistance - prevPoint.dist) / (pathPoint.dist - prevPoint.dist);
106
+ lastPoint.lerpPathPoints(prevPoint, pathPoint, alpha);
107
+ addVertices(lastPoint, radius, radialSegments);
108
+ break;
109
+ }
110
+ else {
111
+ addVertices(pathPoint, radius, radialSegments);
112
+ }
113
+ }
114
+ }
115
+ return {
116
+ points,
117
+ normal,
118
+ uv,
119
+ // uv2,
120
+ indices,
121
+ count
122
+ };
123
+ }
124
+ //# sourceMappingURL=tube.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tube.js","sourceRoot":"","sources":["../src/tube.ts"],"names":[],"mappings":"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"}
package/dist/type.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ export type PolylineType = Array<number[]>;
2
+ export type PolygonType = Array<Array<number[]>>;
3
+ export type ResultType = {
4
+ position: Float32Array;
5
+ normal: Float32Array;
6
+ uv: Float32Array;
7
+ indices: Uint32Array;
8
+ results?: Array<any>;
9
+ };
package/dist/type.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":""}
package/dist/util.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ import { Vector3 } from './math/Vector3';
2
+ import { PolylineType, ResultType } from './type';
3
+ /**
4
+ * https://github.com/Turfjs/turf/blob/master/packages/turf-boolean-clockwise/index.ts
5
+ * @param {*} ring
6
+ * @returns
7
+ */
8
+ export declare function isClockwise(ring: PolylineType): boolean;
9
+ export declare function generateNormal(indices: any, position: any): Float32Array<any>;
10
+ export declare function merge(results: Array<ResultType>): {
11
+ position: Float32Array<ArrayBuffer>;
12
+ normal: Float32Array<ArrayBuffer>;
13
+ uv: Float32Array<ArrayBuffer>;
14
+ indices: Uint32Array<ArrayBuffer>;
15
+ results: ResultType[];
16
+ };
17
+ export declare function radToDeg(rad: any): number;
18
+ export declare function degToRad(angle: any): number;
19
+ export declare function generateSideWallUV(uvs: any, vertices: any, indexA: any, indexB: any, indexC: any, indexD: any): void;
20
+ export declare function line2Vectors(line: any): Vector3[];
21
+ export declare function calLineDistance(line: any): number;