# SortPatterns

画像内のパターンの位置でパターンをソートします。入力のパターンデータ構造体内の各パターンについて、SortPatterns 関数は、指定した画像フィクスチャ座標系に対するパターンのレスポンスの位置を計算します。パターンは、X 座標、Y 座標、角度、角度距離、距離、またはグリッドのいずれかでソートされます。新しいパターンデータ構造体として、ソートされたパターンが返されます。

## SortPatterns の入力

パラメータ | 説明
パターン | この引数は、この関数によって返される有効なパターンデータ構造体を含むスプレッドシートセルを参照している必要があります。
ソートする数 | ソートするパターンの最大数 (1 ～ 255、デフォルト = 1) を指定します。
ソート基準 | ソートの方法を指定します。
0 = Y (デフォルト) | フィクスチャの Y 座標軸に沿った距離を、短いものから順にソートします。
1 = X | フィクスチャの X 座標軸に沿った距離を、短いものから順にソートします。
2 = 角度 | フィクスチャ座標系の Y 軸から、パターンのレスポンス点とフィクスチャの原点で定義されるラインセグメントまでを反時計回りに測定した角度 (0 ～ 360 度) を、近いものから順に (降順に) ソートします。
3 = 角度絶対値 | フィクスチャ座標系の x 軸から、パターンのレスポンス点とフィクスチャの原点で定義されたラインセグメントまでを測定した角度 (-180 ～ 180 度) の絶対値を、近いものから順に (降順に) ソートします。
4 = 距離 | フィクスチャの原点からパターンのレスポンス点までの距離を、近いものから順に (降順に) ソートします。
5 = グリッド Y | まずフィクスチャの Y 座標軸に沿った距離を、次に X 座標軸に沿った距離を、近いものから順に (降順に) ソートします。 注: SortPatterns 関数は、グリッド Y が選択され、CalibrateImage 関数や TransPatternsToWorld 関数の出力などのワールド座標値にキャリブレーションされた画像をこの関数が参照している場合、#ERR を返します。グリッド Y のソートは、ピクセル座標にのみ適用できます。
6 = グリッド X | まずフィクスチャの X 座標軸に沿った距離を、次に Y 座標軸に沿った距離を、近いものから順に (降順に) ソートします。 注: SortPatterns 関数は、グリッド Y が選択され、CalibrateImage 関数や TransPatternsToWorld 関数の出力などのワールド座標値にキャリブレーションされた画像をこの関数が参照している場合、#ERR を返します。グリッド Y のソートは、ピクセル座標にのみ適用できます。
フィクスチャ | Fixture入力に対する参照パターン、またはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに対する参照パターンを設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して参照されるパターンを確実に回転または移動できます。 デフォルト設定は画像の左上隅で、(0, 0, 0) になります。
X | 画像座標での X オフセット。
Y | 画像座標での Y オフセット。
角度 | 画像座標系での画像の X 軸からの回転 (時計回り +/-360 度)。
ソート許容値 | グリッド X またはグリッド Y を使用してソートする場合に、検出されたパターンをパターングループに含めるために必要な、学習パターン高さのサイズの割合 (%) (1% ～ 500%、デフォルト = 50%) を指定します。 注: このパラメータは [ソート基準] パラメータを [グリッド X] または [グリッド Y] のいずれかに設定した場合にのみ使用します。
表示 | 画像上の SortPatterns グラフィックスの表示モードを指定します。
0 = 非表示 (デフォルト) | SortPatterns 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 検出された各パターンに対して十字マークが常に表示されます。
3 = 全て表示: (パターンの特徴を含む) | 入力画像領域、検出された各パターンに対する十字マーク、および一致特徴が常に表示されます。 注: 一致特徴は、PatMax 学習パターンについてのみ表示されます。

## SortPatterns の出力

戻り値 | ソートされたパターンのレスポンス点を含んでいるパターンデータ構造体。いずれかの入力パラメータが無効な場合は #ERR を返します。
結果 | SortPatterns 関数を初めてセルに挿入すると、次のパターンデータアクセス関数を使用してスプレッドシート内に結果テーブルが生成されます。
ラベル | 関数 | 説明
X | GetX(パターン, インデックス) | パターン位置の X 座標。
Y | GetY(パターン, インデックス) | パターン位置の Y 座標。
角度 | GetAngle(パターン, インデックス) | パターン位置の角度
スケール | GetScale(パターン, インデックス) | 元のモデルに対するサイズの割合をパーセント単位で表したもの
得点 | GetScore(パターン, インデックス) | パターンのレスポンス得点
注: [ソートする数] パラメータの値が 0 より大きい場合、SortPatterns は、パターンデータ構造体内の最初の 10 個のパターンに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいパターンがインデックスされるようにしてください。