tips018
データとツリー⑥
— Cross Reference
Sets ▸ List ▸ Cross Reference
2つのリストの、総当たりの組み合わせを作るコンポーネント。
A の全部と B の全部を掛け合わせて、同じ長さの2本のリストにして返す。
何をつなぐか
- 組み合わせたい2つのリストを A と B につなぐ。
出力も A・B の2つなので、そのまま次のコンポーネントの2つの入力へ渡す - 足し算や点の生成の手前に挟む。
挟んでも、その先の配線は変えなくてよい
10, 20, 30 と 1, 2。②のコンポーネントの下の Holistic が組み合わせ方の既定。クリックで拡大。組み合わせの作成
①そのまま足す — 3個のまま
| {0} | 11, 22, 32 |
|---|
②Cross Reference を挟む — 6個になる
| {0} | 11, 21, 31, 12, 22, 32 |
|---|
元のリストは 10, 20, 30 と 1, 2 の2本。
①は足りない 2 が繰り返されて3個で終わる(tips007)。
| 出力 A | 10, 20, 30, 10, 20, 30。A のリストが B の個数だけ繰り返される |
|---|---|
| 出力 B | 1, 1, 1, 2, 2, 2。B の1個が A の個数だけ続く |
組は (10,1) (20,1) (30,1) (10,2) (20,2) (30,2) の順。
A が先に一周し、その間 B は同じ値のまま動かない。
パスは増えない
出力のパス(リスト1本ごとに付く番号・tips007)は、入力と同じ {0} のまま。
1本のリストの中で項目が増えるだけで、リストの本数は変わらない。
| Cross Reference | パスは {0} のまま。1本のリストが6項目に伸びる |
|---|---|
| Graft(tips006) | パスが1段増える。項目の数はそのままで、リストの本数が増える |
組み合わせ方を変える
既定は Holistic(総当たり)。図②のコンポーネントの下の表示がそれ。
右クリックのメニューで選び直せる。下の3つは 3個 × 3個 でそろえた結果。
Holistic(既定) | 総当たり。9組 |
|---|---|
Diagonal | 同じ番号(何番目か)どうしの組を外す。6組 |
Lower Triangle | A の番号が B の番号以上の組だけ。6組 |
入力は A・B の2つから増やせる。
3つにすると出力も3つになり、2個 × 2個 × 2個 で 8組。
使いどころ
- X方向と Y方向の連番を組み合わせて格子の点を作る。
0, 4, 8と0, 5を Construct Point に渡すと、挟まなければ3点、挟むと6点。 - 同じ番号どうししか計算されず、組み合わせが足りないときに間へ入れる。
- 総当たりが多すぎるときは、右クリックで組み方を絞る。
注意
既定の Holistic では、出る組の数は2つのリストの個数の掛け算。個数のスライダーを少し上げるだけで、その先の計算も掛け算で増える。
出力の A と B は組になっている。片方だけ別の経路に流すと、組がずれる。
長さの違うリストをそろえる Longest List / Shortest List は、別の tips で扱う。