我目前正在将Visual Studio 2010中的C#中的.DLL库文件导出到LabVIEW 2012.该类执行从RGB到HSL值的颜色转换,并且我已成功实现了Constructor和Invoke节点用于调用.DLL文件的LabVIEW项目。
到目前为止,我可以将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();
}
}
提前致谢!
答案 0 :(得分:0)
您已创建公共HSL getter,LabVIEW知道如何访问它。只需在VI中使用属性节点,并在调用SetColor()
后将其链接到对象引用,H S和L将位于属性节点的选择列表中。