public static vtkImageData FromImage(Image img, int numberOfScalarComponents)
{
Bitmap bitmap = new Bitmap(img);
vtkImageData vtkImageData2 = New();
vtkImageData2.SetScalarTypeToUnsignedChar();
vtkImageData2.SetNumberOfScalarComponents(numberOfScalarComponents);
vtkImageData2.SetDimensions(img.Width, img.Height, 1);
vtkImageData2.AllocateScalars();
byte[] array = new byte[img.Width * img.Height * vtkImageData2.GetNumberOfScalarComponents()];
int num = 0;
for (int num2 = img.Height - 1; num2 >= 0; num2--)
{
for (int i = 0; i < img.Width; i++)
{
array[num++] = bitmap.GetPixel(i, num2).R;
array[num++] = bitmap.GetPixel(i, num2).G;
array[num++] = bitmap.GetPixel(i, num2).B;
if (numberOfScalarComponents > 3)
{
array[num++] = bitmap.GetPixel(i, num2).A;
}
}
}
Marshal.Copy(array, 0, vtkImageData2.GetScalarPointer(), array.Length);
return vtkImageData2;
}
c# Image转vtkImageData
原创
©著作权归作者所有:来自51CTO博客作者fanhenghui的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:c#导入二级树代码备份

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C# 语法中级
C# 语法中级
c# lambda -
从c转javascript js转c#
选择要转换的脚本,然后在上方菜单的工具栏中点击转换。
System #pragma RPC