微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C#中的Helix Toolkit显示层点云

如何解决C#中的Helix Toolkit显示层点云

我在this wrapper的帮助下制作了一个层板文件

我如何制作层板文件如下所示:

using (var frames = pipeline.WaitForFrames())
{
    var colorFrame = frames.ColorFrame.disposeWith(frames);
    var depthFrame = frames.DepthFrame.disposeWith(frames);
    var points = pc.Process(depthFrame).As<Points>();
    // We colorize the depth frame for visualization purposes
    var colorizedDepth = colorizer.Process<VideoFrame>(depthFrame).disposeWith(frames);

    // copyVertices is extensible,any of these will do:
    var vertices = new float[points.Count * 3];
    // var vertices = new Intel.RealSense.Math.Vertex[points.Count];
    // var vertices = new UnityEngine.Vector3[points.Count];
    // var vertices = new System.Numerics.Vector3[points.Count]; // SIMD
    // var vertices = new GlmSharp.vec3[points.Count];
    //  var vertices = new byte[points.Count * 3 * sizeof(float)];
    points.copyVertices(vertices);
    points.ExportToPLY("pointcloud.ply",colorFrame);
    // Render the frames.
    cloudPoints = importer.Load(@"pointcloud.ply");
}

现在我要使用代码显示它:

private void Create3DViewPort()
{
    var hVp3D = new HelixViewport3D();
    var lights = new DefaultLights();
    HViewPort.Children.Add(lights);
    HViewPort.Children.Add(cloudPoints);
    this.AddChild(HViewPort);
}

但是在HViewPort.Children.Add(cloudPoints);行出现了错误。就是说:

它不能将Systems.Windows.Media.Media3D.Model3D转换为Systems.Windows.Media.Media3D.Visual3D。

有人可以帮助我如何使用helix工具包显示点云吗?

解决方法

我认为目前无法在helix工具包中显示一些层板文件 (see Helix Wiki)。

您可以使用下面的代码显示一个层板文件,但是您不会看到期望的项目

yourImageView.transform = self.yourImageView.transform.rotated(by: .pi / 2)
,

我不知道这是不是这样,但是我可以在层文件中显示点云。 代码:

Model3DGroup model1 = import.Load("pointcloud.ply");
model.Content = model1;

XAML:

<HelixToolkit:HelixViewport3D Grid.ColumnSpan="1" Grid.Column="1" Margin="2.4,1,-0.4" >
            <HelixToolkit:HelixViewport3D.Camera>
                <PerspectiveCamera />
            </HelixToolkit:HelixViewport3D.Camera>
            <HelixToolkit:DefaultLights></HelixToolkit:DefaultLights>
            <ModelVisual3D x:Name="model"></ModelVisual3D>
        </HelixToolkit:HelixViewport3D>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。