aboutsummaryrefslogtreecommitdiff
path: root/externals/gridflow/abstractions/#moment_polar.pd
blob: 810cce9d25d8e24f6d80623375fa0502b2cdf352 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#N canvas 247 203 690 456 10;
#X obj 21 20 inlet 2nd_moment_matrix;
#X obj 21 419 outlet angle;
#X obj 21 208 #grade;
#X obj 53 88 #transpose;
#X obj 21 285 #store;
#X obj 21 189 # inv+ (f #);
#X text 76 211 sort eigenvectors;
#X text 76 223 by eigenvalues downwards;
#X obj 21 266 #redim (1);
#X obj 21 342 # atan;
#X obj 21 304 #unpack;
#X obj 74 304 #pack 1 f;
#X obj 21 323 #pack 1 f;
#X text 29 358 angle of (one of the two) longest radius;
#X text 113 247 but pick only biggest;
#X text 96 70 eigenvectors (axes of the ellipse);
#X text 28 370 centidegrees 0..35999;
#X text 27 148 squareroots of eigenvalues (radiuses of the ellipse)
;
#X obj 21 165 #t;
#X obj 147 296 #store;
#X text 185 21 (float);
#X obj 21 132 # sqrt (f #);
#X obj 21 45 #cast f;
#X obj 21 396 #export;
#X obj 21 238 #t;
#X obj 147 277 #outer + (0);
#X obj 134 420 outlet radiuses_sorted;
#X obj 21 69 cv/#SVD;
#X obj 21 112 #extract_diagonal;
#X connect 0 0 22 0;
#X connect 2 0 24 0;
#X connect 3 0 4 1;
#X connect 4 0 10 0;
#X connect 5 0 2 0;
#X connect 8 0 4 0;
#X connect 9 0 23 0;
#X connect 10 0 12 0;
#X connect 10 1 11 0;
#X connect 11 0 9 1;
#X connect 12 0 9 0;
#X connect 18 0 5 0;
#X connect 18 1 19 1;
#X connect 19 0 26 0;
#X connect 21 0 18 0;
#X connect 22 0 27 0;
#X connect 23 0 1 0;
#X connect 24 0 8 0;
#X connect 24 1 25 0;
#X connect 25 0 19 0;
#X connect 27 0 28 0;
#X connect 27 1 3 0;
#X connect 28 0 21 0;