0

私は現在、Visual Studio 2010 の C# で .DLL ライブラリ ファイルを LabVIEW 2012 にエクスポートする作業を行っています。クラスは RGB から HSL 値への色変換を行い、LabVIEW プロジェクトにコンストラクタとインボーク ノードを実装することに成功しました。 .DLL ファイルを呼び出します。

これまでのところ、RGB 値の数値を Invoke ノードに入力できますが、HSL 出力値を取得するのに問題があります。このオプションは、ノードのドロップダウン ボックスに表示されません。

私はC#(および一般的なプログラミング)に比較的慣れていないので、入力関数が.DLLのどこにあるかを見つけたと思いますが、出力関数に関しては、それを生成する方法がわかりません。 LabVIEWがそれをきれいにエクスポートできる方法。値を入力できれば、それらの HSL 出力も取得できるはずです。

以下は、問題の C# コード スニペットです。クラスの残りの部分は変換自体の式なので、あまり関係ないと思います。

public class QuickColorTransform
{
    byte _R;
    byte _G;
    byte _B;

    byte _H;

    public byte H
    {
        get { return _H; }
        set { _H = value; }
    }
    byte _S;

    public byte S
    {
        get { return _S; }
        set { _S = value; }
    }
    byte _L;

    public byte L
    {
        get { return _L; }
        set { _L = value; }
    }

    public QuickColorTransform()
    {
        SetupLookups();
    }

    public void SetColor(byte Red, byte Green, byte Blue)
    {
        _R = Red;
        _G = Green;
        _B = Blue;
        Transform();
    }

    public void SetColor(Color ColorIn)
    {
        _R = ColorIn.R;
        _G = ColorIn.G;
        _B = ColorIn.B;
        Transform();
    }
}

前もって感謝します!

4

1 に答える 1

0

パブリック HSL ゲッターを作成しました。LabVIEW はそれにアクセスする方法を認識しています。VIでプロパティノードを使用し、 への呼び出し後にそれをオブジェクト参照にリンクするだけでSetColor()、HSとLがプロパティノードの選択リストに表示されます。

于 2013-06-24T13:59:54.663 に答える