frenet-serret-frames 3.0.0 → 3.0.2

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/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [3.0.2](https://github.com/dmnsgn/frenet-serret-frames/compare/v3.0.1...v3.0.2) (2023-07-31)
6
+
7
+
8
+
9
+ ## [3.0.1](https://github.com/dmnsgn/frenet-serret-frames/compare/v3.0.0...v3.0.1) (2023-07-31)
10
+
11
+
12
+
5
13
  # [3.0.0](https://github.com/dmnsgn/frenet-serret-frames/compare/v2.1.0...v3.0.0) (2023-07-31)
6
14
 
7
15
 
package/README.md CHANGED
@@ -28,14 +28,20 @@ npm install frenet-serret-frames
28
28
 
29
29
  ```js
30
30
  import frenetSerretFrames from "frenet-serret-frames";
31
- import pathTangents from "path-tangents";
32
31
 
33
- const isClosed = true;
34
- const tangents = pathTangents(path, isClosed);
35
- const frames = frenetSerretFrames(path, tangents, {
36
- closed: isClosed,
32
+ const geometry = { positions, cells };
33
+ frenetSerretFrames(geometry, {
34
+ closed: true,
37
35
  initialNormal: [0, 1, 0],
38
36
  });
37
+ console.log(geometry);
38
+ // {
39
+ // positions: Float32Array [x, y, z, x, y, z, ...],
40
+ // tangents: Float32Array [x, y, z, x, y, z, ...]
41
+ // normals: Float32Array [x, y, z, x, y, z, ...]
42
+ // binormals: Float32Array [x, y, z, x, y, z, ...]
43
+ // cells: Uint8/16/32/Array [a, b, c, a, b, c, ...],
44
+ // }
39
45
  ```
40
46
 
41
47
  ## API
@@ -53,6 +59,8 @@ const frames = frenetSerretFrames(path, tangents, {
53
59
  ## Typedefs
54
60
 
55
61
  <dl>
62
+ <dt><a href="#vec2">vec2</a> : <code>Array.&lt;number&gt;</code></dt>
63
+ <dd></dd>
56
64
  <dt><a href="#vec3">vec3</a> : <code>Array.&lt;number&gt;</code></dt>
57
65
  <dd></dd>
58
66
  <dt><a href="#SimplicialComplex">SimplicialComplex</a> : <code>object</code></dt>
@@ -80,6 +88,11 @@ Compute Frenet-Serret frames for a geometry of 3D positions and optionally provi
80
88
  | geometry | [<code>SimplicialComplex</code>](#SimplicialComplex) | |
81
89
  | [options] | [<code>Options</code>](#Options) | <code>{}</code> |
82
90
 
91
+ <a name="vec2"></a>
92
+
93
+ ## vec2 : <code>Array.&lt;number&gt;</code>
94
+
95
+ **Kind**: global typedef
83
96
  <a name="vec3"></a>
84
97
 
85
98
  ## vec3 : <code>Array.&lt;number&gt;</code>
@@ -99,7 +112,7 @@ Geometry definition.
99
112
  | positions | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
100
113
  | [tangents] | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
101
114
  | [normals] | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
102
- | [uvs] | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
115
+ | [uvs] | <code>Float32Array</code> \| [<code>Array.&lt;vec2&gt;</code>](#vec2) |
103
116
  | [cells] | <code>Uint8Array</code> \| <code>Uint16Array</code> \| <code>Uint32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
104
117
 
105
118
  <a name="SimplicialComplexWithTNB"></a>
@@ -117,7 +130,7 @@ Geometry definition augmented with tangent, normals and binormals.
117
130
  | tangents | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
118
131
  | normals | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
119
132
  | binormals | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
120
- | [uvs] | <code>Float32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
133
+ | [uvs] | <code>Float32Array</code> \| [<code>Array.&lt;vec2&gt;</code>](#vec2) |
121
134
  | [cells] | <code>Uint8Array</code> \| <code>Uint16Array</code> \| <code>Uint32Array</code> \| [<code>Array.&lt;vec3&gt;</code>](#vec3) |
122
135
 
123
136
  <a name="Options"></a>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "frenet-serret-frames",
3
- "version": "3.0.0",
3
+ "version": "3.0.2",
4
4
  "description": "Compute Frenet-Serret frames for a geometry of 3D positions and optionally provided tangents.",
5
5
  "keywords": [
6
6
  "path",
package/types/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export type vec2 = number[];
1
2
  export type vec3 = number[];
2
3
  /**
3
4
  * Geometry definition.
@@ -6,7 +7,7 @@ export type SimplicialComplex = {
6
7
  positions: Float32Array | vec3[];
7
8
  tangents?: Float32Array | vec3[];
8
9
  normals?: Float32Array | vec3[];
9
- uvs?: Float32Array | vec3[];
10
+ uvs?: Float32Array | vec2[];
10
11
  cells?: (Uint8Array | Uint16Array | Uint32Array | vec3[]);
11
12
  };
12
13
  /**
@@ -17,7 +18,7 @@ export type SimplicialComplexWithTNB = {
17
18
  tangents: Float32Array | vec3[];
18
19
  normals: Float32Array | vec3[];
19
20
  binormals: Float32Array | vec3[];
20
- uvs?: Float32Array | vec3[];
21
+ uvs?: Float32Array | vec2[];
21
22
  cells?: (Uint8Array | Uint16Array | Uint32Array | vec3[]);
22
23
  };
23
24
  /**
package/types.js CHANGED
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @typedef {number[]} vec2
3
+ */
1
4
  /**
2
5
  * @typedef {number[]} vec3
3
6
  */
@@ -7,7 +10,7 @@
7
10
  * @property {Float32Array | vec3[]} positions
8
11
  * @property {Float32Array | vec3[]} [tangents]
9
12
  * @property {Float32Array | vec3[]} [normals]
10
- * @property {Float32Array | vec3[]} [uvs]
13
+ * @property {Float32Array | vec2[]} [uvs]
11
14
  * @property {(Uint8Array | Uint16Array | Uint32Array | vec3[])} [cells]
12
15
  */
13
16
 
@@ -17,7 +20,7 @@
17
20
  * @property {Float32Array | vec3[]} tangents
18
21
  * @property {Float32Array | vec3[]} normals
19
22
  * @property {Float32Array | vec3[]} binormals
20
- * @property {Float32Array | vec3[]} [uvs]
23
+ * @property {Float32Array | vec2[]} [uvs]
21
24
  * @property {(Uint8Array | Uint16Array | Uint32Array | vec3[])} [cells]
22
25
  */
23
26