1 | import { Transform, Transform3D, Vector } from '../type';
|
2 |
|
3 |
|
4 |
|
5 |
|
6 | export function extend(transform: Transform) {
|
7 | return (vector: Vector) => {
|
8 | const v = [];
|
9 | for (let i = 0; i < vector.length - 1; i += 2) {
|
10 | const from = [vector[i], vector[i + 1]];
|
11 | const to = transform(from);
|
12 | v.push(...to);
|
13 | }
|
14 | return v;
|
15 | };
|
16 | }
|
17 |
|
18 | export function extend3D(transform: Transform3D) {
|
19 | return (vector: Vector) => {
|
20 | const v = [];
|
21 | for (let i = 0; i < vector.length - 1; i += 3) {
|
22 | const from = [vector[i], vector[i + 1], vector[i + 2]];
|
23 | const to = transform(from);
|
24 | v.push(...to);
|
25 | }
|
26 | return v;
|
27 | };
|
28 | }
|