行列の複製

Namespace: fvalgcli
Assembly: fvalgcli (in fvalgcli.dll) Version: 3.1.0.0 (3.1.0.11)

Syntax

C#
public static int fnFIE_mat_aduplicate(
	FMATRIX_PTR src,
	ref FMATRIX_PTR dst
)
Visual Basic
Public Shared Function fnFIE_mat_aduplicate ( 
	src As FMATRIX_PTR,
	ByRef dst As FMATRIX_PTR
) As Integer

Parameters

src
Type: fvalgcli..::..FMATRIX_PTR
コピー元行列
dst
Type: fvalgcli..::..FMATRIX_PTR%
コピーされた行列。IntPtr.Zero で初期化してください。

Return Value

Type: Int32
以下のエラーコードを返します。

エラーコード:
f_err内容
F_ERR_NONE正常終了
F_ERR_NOMEMORYメモリ不足エラー
F_ERR_INVALID_PARAMパラメータ異常
F_ERR_NO_LICENCEライセンスエラー

Remarks

Examples

C# Copy imageCopy
//    $Revision: 1.1 $

using System;
using System.Collections.Generic;
using System.Text;
using fvalgcli;

namespace TC
{
    public partial class FIE
    {
        [FvPluginExecute]
        public void fnFIE_mat_aduplicate()
        {
            int status = (int)f_err.F_ERR_NONE;

            FMATRIX_PTR hsrc = FMATRIX_PTR.Zero;
            FMATRIX_PTR hdst = FMATRIX_PTR.Zero;

            try
            {
                hsrc = FMATRIX_PTR.alloc(4, 3);
                hsrc[0, 0] = 11; hsrc[0, 1] = 12; hsrc[0, 2] = 13;
                hsrc[1, 0] = 21; hsrc[1, 1] = 22; hsrc[1, 2] = 23;
                hsrc[2, 0] = 31; hsrc[2, 1] = 32; hsrc[2, 2] = 33;
                hsrc[3, 0] = 41; hsrc[3, 1] = 42; hsrc[3, 2] = 43;

                // 処理の実行.
                status = api.fnFIE_mat_aduplicate(hsrc, ref hdst);

                // エラー判定.
                Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "エラーが発生しました。({0})", (f_err)status);

                // 確認.
                Assert.IsTrue(hsrc.row == hdst.row, "エラーが発生しました。(row={0})", hdst.row);
                Assert.IsTrue(hsrc.col == hdst.col, "エラーが発生しました。(col={0})", hdst.col);
                for (int r = 0; r < hsrc.row; r++)
                    for (int c = 0; c < hsrc.col; c++)
                        Assert.IsTrue(hsrc[r, c] == hdst[r, c], "エラーが発生しました。(hdst[{0},{1}]={2})", r,c, hdst[r,c]);
            }
            finally
            {
                // オブジェクトの開放.
                hsrc.Dispose();
                hdst.Dispose();
            }
        }
    }
}


Visual Basic Copy imageCopy
'    $Revision: 1.1 $

Imports System.Collections.Generic
Imports System.Text
Imports fvalgcli

Public Partial Class FIE
    <FvPluginExecute> _
    Public Sub fnFIE_mat_aduplicate()
        Dim status As Integer = CInt(f_err.F_ERR_NONE)

        Dim hsrc As FMATRIX_PTR = FMATRIX_PTR.Zero
        Dim hdst As FMATRIX_PTR = FMATRIX_PTR.Zero

        Try
            hsrc = FMATRIX_PTR.alloc(4, 3)
            hsrc(0, 0) = 11
            hsrc(0, 1) = 12
            hsrc(0, 2) = 13
            hsrc(1, 0) = 21
            hsrc(1, 1) = 22
            hsrc(1, 2) = 23
            hsrc(2, 0) = 31
            hsrc(2, 1) = 32
            hsrc(2, 2) = 33
            hsrc(3, 0) = 41
            hsrc(3, 1) = 42
            hsrc(3, 2) = 43

            ' 処理の実行.
            status = api.fnFIE_mat_aduplicate(hsrc, hdst)

            ' エラー判定.
            Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "エラーが発生しました。({0})", CType(status, f_err))

            ' 確認.
            Assert.IsTrue(hsrc.row = hdst.row, "エラーが発生しました。(row={0})", hdst.row)
            Assert.IsTrue(hsrc.col = hdst.col, "エラーが発生しました。(col={0})", hdst.col)
            For r As Integer = 0 To hsrc.row - 1
                For c As Integer = 0 To hsrc.col - 1
                    Assert.IsTrue(hsrc(r, c) = hdst(r, c), "エラーが発生しました。(hdst[{0},{1}]={2})", r, c, hdst(r, c))
                Next
            Next
        Finally
            ' オブジェクトの開放.
            hsrc.Dispose()
            hdst.Dispose()
        End Try
    End Sub
End Class

See Also