点群のサイズ変更

Namespace: FVIL.GDI
Assembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)

Syntax

C#
public virtual void Resize(
	int count
)
Visual Basic
Public Overridable Sub Resize ( 
	count As Integer
)

Parameters

count
Type: System..::..Int32
要素数 (0~)

Remarks

指定された要素数でこの点群のサイズを再確保します。

確保に失敗した場合は例外を発行します。 例外の原因と発生位置を特定するには、発行された例外クラスの ErrorCode メンバと Function メンバを参照してください。

エラーコード:

ErrorCode メンバ内容
1FVIL.ErrorCode.FAILED_TO_ALLOCATEメモリの確保に失敗しました。
11FVIL.ErrorCode.INVALID_PARAMETER引数に指定された値が不正です。

Examples

ソースコード:
C# Copy imageCopy
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using fvalgcli;    // FvPluginXXXX attribute requires fvalgcli

namespace User.SampleCode.GDI
{
    public partial class GdiPoints
    {
        // ============================================================
        /// <summary>
        /// リサイズ.
        /// </summary>
        [FvPluginExecute]
        public void Resize()
        {
            // 0) 配列の作成.
            fvalgcli.PNT_T[] datas = new fvalgcli.PNT_T[10];
            for (int i = 0; i < 10; i++)
            {
                datas[i].x = i * 10 + i;
                datas[i].y = i * 10 + i;
            }
            FVIL.PNT_T_ARRAY pnts = new FVIL.PNT_T_ARRAY(datas);

            // 1) インスタンスの準備と生成.
            FVIL.GDI.CFviGdiPoints src = new FVIL.GDI.CFviGdiPoints(pnts);

            // 2) 処理実行.
            src.Resize(5);

            // E) 確認.
            Assert.IsTrue(5 == src.Count, "src.Count={0}", src.Count);

            for (int i = 0; i < src.Count; i++)
            {
                Console.Write("({0} {1})\n", src[i].X, src[i].Y );
            }
            Console.Write("\n");
        }
    }
}


Visual Basic Copy imageCopy
Imports System.Collections.Generic
Imports System.Text
Imports System.Drawing
Imports fvalgcli
' FvPluginXXXX attribute requires fvalgcli
Namespace SampleCode.GDI
    Public Partial Class GdiPoints
        ' ============================================================
        ''' <summary>
        ''' リサイズ.
        ''' </summary>
        <FvPluginExecute> _
        Public Sub Resize()
            ' 0) 配列の作成.
            Dim datas As fvalgcli.PNT_T() = New fvalgcli.PNT_T(9) {}
            For i As Integer = 0 To 9
                datas(i).x = i * 10 + i
                datas(i).y = i * 10 + i
            Next
            Dim pnts As New FVIL.PNT_T_ARRAY(datas)

            ' 1) インスタンスの準備と生成.
            Dim src As New FVIL.GDI.CFviGdiPoints(pnts)

            ' 2) 処理実行.
            src.Resize(5)

            ' E) 確認.
            Assert.IsTrue(5 = src.Count, "src.Count={0}", src.Count)

            For i As Integer = 0 To src.Count - 1
                Console.Write("({0} {1})" & vbLf, src(i).X, src(i).Y)
            Next
            Console.Write(vbLf)
        End Sub
    End Class
End Namespace

Exceptions

ExceptionCondition
FVIL..::..CFviExceptionこの例外の原因については、上記のエラーコード表をご参照ください。

See Also