カメラ座標からXYθテーブル座標へ変換
Namespace: fvalgcliAssembly: fvalgcli (in fvalgcli.dll) Version: 3.1.0.0 (3.1.0.11)
Syntax
C# |
---|
public static int fnFIE_xyqn_trans_coord( FHANDLE hcalib, DPNT_T_PTR _inp, DPNT_T_PTR _out ) |
Visual Basic |
---|
Public Shared Function fnFIE_xyqn_trans_coord ( hcalib As FHANDLE, _inp As DPNT_T_PTR, _out As DPNT_T_PTR ) As Integer |
Parameters
- hcalib
- Type: fvalgcli..::..FHANDLE
キャリブレーションシステムのハンドル
- _inp
- Type: fvalgcli..::..DPNT_T_PTR
各カメラ座標配列(カメラ座標系)
- _out
- Type: fvalgcli..::..DPNT_T_PTR
各カメラ座標配列(XYθ座標系)
Return Value
Type: Int32以下のエラーコードを返します。
エラーコード:
f_err | 内容 | |
---|---|---|
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | inp または out が IntPtr.Zero 事前に fnFIE_xyqn_calc_table() が実行されていない |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
Remarks
具体的な使用方法についてはサンプルプロジェクトの xyqn をご参照ください。 サンプルプロジェクトはインストーラでは配布されませんので、 弊社ホームページからダウンロードしてください。
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_xyqn_trans_coord(FHANDLE hCalib) { DPNT_T_PTR input = IntPtr.Zero; DPNT_T_PTR output = IntPtr.Zero; int length = 0; try { length = 2; input = DPNT_T_PTR.alloc(2); input[0] = DPNT_T.init(50, 25); input[1] = DPNT_T.init(25, 50); int status = api.fnFIE_xyqn_trans_coord(hCalib, input, output); Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "fnFIE_xyqn_trans_coord: {0}", (f_err)status); Console.WriteLine("fnFIE_xyqn_trans_coord"); for (int i = 0; i < length; i++) Console.WriteLine("output[{0}]=({1}, {2})", i, output[i].x, output[i].y); } catch (System.Exception ex) { throw ex; } finally { input.Dispose(); output.Dispose(); } } } } |
Visual Basic | Copy |
---|---|
' $Revision: 1.1 $ Imports System.Collections.Generic Imports System.Text Imports fvalgcli Public Partial Class FIE Public Sub fnFIE_xyqn_trans_coord(hCalib As FHANDLE) Dim input As DPNT_T_PTR = IntPtr.Zero Dim output As DPNT_T_PTR = IntPtr.Zero Dim length As Integer = 0 Try length = 2 input = DPNT_T_PTR.alloc(2) input(0) = DPNT_T.init(50, 25) input(1) = DPNT_T.init(25, 50) Dim status As Integer = api.fnFIE_xyqn_trans_coord(hCalib, input, output) Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "fnFIE_xyqn_trans_coord: {0}", CType(status, f_err)) Console.WriteLine("fnFIE_xyqn_trans_coord") For i As Integer = 0 To length - 1 Console.WriteLine("output[{0}]=({1}, {2})", i, output(i).x, output(i).y) Next Catch ex As System.Exception Throw ex Finally input.Dispose() output.Dispose() End Try End Sub End Class |