Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Net中的网格生成库?_C#_.net_Wpf - Fatal编程技术网

C# Net中的网格生成库?

C# Net中的网格生成库?,c#,.net,wpf,C#,.net,Wpf,是否有库(.dll)可在.Net中使用或作为第三方库使用 哪些提供了以下功能 我们只需将点云或三维空间中的点添加为输入(使用X、Y和Z坐标) 并在视口3D中显示3D对象。表示从点云自动生成网格,并在视口3D中以3D对象的形式输出 注:< /强>认为对象将是凸对象。 谢谢………我最近一直在想同样的事情,并得出了一个结论,这个结论很容易使用。我认为它或多或少提供了对OpenGL API的直接访问,并且不需要加载依赖项 这是一个复制粘贴,这是我在过去几天测试了许多不同库的结果,目的是根据我从Kine

是否有库(.dll)可在.Net中使用或作为第三方库使用

哪些提供了以下功能

我们只需将点云
或三维空间中的点添加为输入(使用XYZ坐标)

并在视口3D中显示3D对象。表示从点云自动生成网格,并在视口3D中以3D对象的形式输出

<强>注:< /强>认为对象将是凸对象。


谢谢………

我最近一直在想同样的事情,并得出了一个结论,这个结论很容易使用。我认为它或多或少提供了对OpenGL API的直接访问,并且不需要加载依赖项

这是一个复制粘贴,这是我在过去几天测试了许多不同库的结果,目的是根据我从Kinect接收到的数据制作点云

它不向ViewPort3D提供输出,但从我的测试来看,它比使用WPF快得多。我无法以可接受的速度在WPF中显示(并不断更新)640x480点云

这是比较容易理解的。它需要很少的代码行(并且可以理解)来开始。它不为我保存对象,所以我可以为每次传递自由地更改任何内容,这很好,因为我主要使用不安全的内存指针

当然,很难将速度与易用性结合起来。速度要求直接与3D API对话,而易用性要求抽象。因此,这必须被视为比我尝试过的其他API级别更低的API。如果我想做一些预制角色动画,那么XNA可能是一个更好的选择,但对于点云来说,到目前为止这似乎非常有希望(4-5小时的黑客攻击)

一些示例代码:

private void Render()
{
   // Every frame
   GL.Begin(BeginMode.Points);
   GL.MatrixMode(MatrixMode.Modelview);
   GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit);
   GL.LoadMatrix(ref cameraMatrix);

   GL.Begin(BeginMode.Points);

   // Here I can add lots of points. I add 200k without any big problem.
   // It seems these points could have been passed in as an array pointer too,
   //  but I'll look at that later.
   GL.Vertex3(x2, y2, z2);

   GL.End();
   glControl.SwapBuffers();
}