データをマージ (MergeData)
機能説明
本手順は、複数のデータリストを 1 つのリストへ結合するために使用します。例として、入力が [A]、[B]、[C] の 3 つのリストであれば、出力は [A, B, C] になります。

使用シーン
本ツールは位置姿勢、数値などのデータをマージするために使用。
入力
名前なし:1 組目のマージ対象データリスト。対応するデータタイプは PoseList、NumberList、StringList、Vector3DList、BoolList、IndexList です。
名前なし:2 組目のマージ対象データリスト。実際の入力ポート数は「ポート個数」パラメータで決まります。
出力
マージ後のデータリスト:入力データリストと同じタイプ。
パラメータ説明
ポート個数(1-16)
入力ポート数を設定します。範囲は [1,16] です。入力データの次元が目標次元より小さい場合は、自動的に次元を持ち上げて、異なる次元のデータ同士でもマージできるようにします。
操作対象変数が配列内で位置する次元
ネストされたリスト構造内で、操作対象の具体的なデータ要素が位置する次元を指定します。
データ次元説明
NumberList、StringList、Vector3DList、BoolList、IndexListの場合:
[第1次元 [第0次元 要素1, 要素2, 要素3...], [第0次元 要素1, 要素2, 要素3...] ]
PoseListの場合: [第1次元 [第0次元 [x, y, z, qx, qy, qz, w]], [第0次元 [x, y, z, qx, qy, qz, w]] ]
例
2つのNumberListタイプのデータがあり、それぞれ[[0,1],[2,3]]と[[4,5],[6,7]]。マージツールを使用してこの2つのデータをマージ。
最初のリストの場合:
第0次元要素:0、1,2、3。
第1次元要素:[0,1]、[2,3]
第2次元要素:[[0,1],[2,3]]
2番目のリストの場合:
第0次元要素:4、5,6、7;
第1次元要素:[4,5]、[6,7]
第2次元要素:[[4,5],[6,7]]
「操作対象変数が配列内で位置する次元」を変えた場合の結果は次のとおりです。
操作対象変数が配列内で位置する次元 =0
第一次元インデックスが0の要素:[0,1]と[4,5]、
第一次元インデックスが1の要素:[2,3]と[6,7]、
マージ結果:[[0,1,4,5],[2,3,6,7]]
操作対象変数が配列内で位置する次元 =1
第二次元インデックスが0の要素:[[0,1],[2,3]]と[[4,5],[6,7]]
マージ結果:[[0,1],[2,3],[4,5],[6,7]]
操作対象変数が配列内で位置する次元 =2
入力データは2次元データ。「操作対象変数が配列内で位置する次元」が出力配列次元以上のため、昇維が実行され、マージ結果は:
[[[0,1],[2,3]],[[4,5],[6,7]]]