ブローブの特徴量に基づくソーティング
Namespace: fvalgcliAssembly: fvalgcli (in fvalgcli.dll) Version: 3.1.0.0 (3.1.0.11)
Syntax
C# |
---|
public static int fnFIE_measure_sort_list( FHANDLE hresult, f_measure_feature_type key1st, int direc1st, f_measure_feature_type key2nd, int direc2nd, f_measure_feature_type key3rd, int direc3rd, UINT_PTR numbers, uint num ) |
Visual Basic |
---|
Public Shared Function fnFIE_measure_sort_list ( hresult As FHANDLE, key1st As f_measure_feature_type, direc1st As Integer, key2nd As f_measure_feature_type, direc2nd As Integer, key3rd As f_measure_feature_type, direc3rd As Integer, numbers As UINT_PTR, num As UInteger ) As Integer |
Parameters
- hresult
- Type: fvalgcli..::..FHANDLE
ブローブ解析結果
- key1st
- Type: fvalgcli..::..f_measure_feature_type
最優先ソートキー(ソート対象特徴量)
- direc1st
- Type: System..::..Int32
key1stのソート順 (0:昇順、1:降順)
- key2nd
- Type: fvalgcli..::..f_measure_feature_type
2番目に優先されるソートキー(ソート対象特徴量)
- direc2nd
- Type: System..::..Int32
key2ndのソート順 (0:昇順、1:降順)
- key3rd
- Type: fvalgcli..::..f_measure_feature_type
3番目に優先されるソートキー(ソート対象特徴量)
- direc3rd
- Type: System..::..Int32
key3rdのソート順 (0:昇順、1:降順)
- numbers
- Type: fvalgcli..::..UINT_PTR
ソート対象ブローブ番号配列
- num
- Type: System..::..UInt32
numbersの要素数
Return Value
Type: Int32以下のエラーコードを返します。
エラーコード:
f_err | 内容 |
---|---|
F_ERR_NONE | 正常終了 |
F_ERR_INVALID_PARAM | 不正なパラメータが指定された。 |
F_ERR_INVALID_OBJECT | hresult に渡された結果ハンドルが不正 |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
Remarks
Examples
C# | Copy |
---|---|
// $Revision: 1.1 $ using System; using System.Collections.Generic; using System.Text; using fvalgcli; namespace TC { public partial class FIE { public void fnFIE_measure_sort_list(FHANDLE result) { UINT_PTR blob_numbers = UINT_PTR.Zero; F_MEASURE_FILTER_RANGE_PTR filters = F_MEASURE_FILTER_RANGE_PTR.Zero; try { // フィルタレンジの生成. uint filter_num = 1; filters = F_MEASURE_FILTER_RANGE_PTR.alloc(1); filters[0] = F_MEASURE_FILTER_RANGE.init(f_measure_feature_type.F_FEATURE_AREA, 0, 1000); uint num = 0; // 実行. int status = api.fnFIE_measure_get_list(result, filters, filter_num, ref blob_numbers, ref num); Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "get_listでエラーが発生しました。({0})", (f_err)status); // 出力. Console.WriteLine("blob_list_num={0}", num); // 面積の小さい順でブローブ番号リストをソートする. int status1 = api.fnFIE_measure_sort_list(result, f_measure_feature_type.F_FEATURE_AREA, 0, f_measure_feature_type.F_FEATURE_NONE, 0, f_measure_feature_type.F_FEATURE_NONE, 0, blob_numbers, num); Assert.IsTrue(status1 == (int)f_err.F_ERR_NONE, "sort_listでエラーが発生しました。({0})", (f_err)status1); // 出力. Console.WriteLine("blob_sort_list_num={0}", num); for (int i = 0; i < num; i++) { Console.WriteLine("blob_numbers[{0}]={1}", i, blob_numbers[i]); } } finally { blob_numbers.Dispose(); filters.Dispose(); } } } } |
Visual Basic | Copy |
---|---|
' $Revision: 1.1 $ Imports System.Collections.Generic Imports System.Text Imports fvalgcli Public Partial Class FIE Public Sub fnFIE_measure_sort_list(result As FHANDLE) Dim blob_numbers As UINT_PTR = UINT_PTR.Zero Dim filters As F_MEASURE_FILTER_RANGE_PTR = F_MEASURE_FILTER_RANGE_PTR.Zero Try ' フィルタレンジの生成. Dim filter_num As UInteger = 1 filters = F_MEASURE_FILTER_RANGE_PTR.alloc(1) filters(0) = F_MEASURE_FILTER_RANGE.init(f_measure_feature_type.F_FEATURE_AREA, 0, 1000) Dim num As UInteger = 0 ' 実行. Dim status As Integer = api.fnFIE_measure_get_list(result, filters, filter_num, blob_numbers, num) Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "get_listでエラーが発生しました。({0})", CType(status, f_err)) ' 出力. Console.WriteLine("blob_list_num={0}", num) ' 面積の小さい順でブローブ番号リストをソートする. Dim status1 As Integer = api.fnFIE_measure_sort_list(result, f_measure_feature_type.F_FEATURE_AREA, 0, f_measure_feature_type.F_FEATURE_NONE, 0, f_measure_feature_type.F_FEATURE_NONE, _ 0, blob_numbers, num) Assert.IsTrue(status1 = CInt(f_err.F_ERR_NONE), "sort_listでエラーが発生しました。({0})", CType(status1, f_err)) ' 出力. Console.WriteLine("blob_sort_list_num={0}", num) For i As Integer = 0 To CType(num, Integer) - 1 Console.WriteLine("blob_numbers[{0}]={1}", i, blob_numbers(i)) Next Finally blob_numbers.Dispose() filters.Dispose() End Try End Sub End Class |