原文:
WPF利用HelixToolKit后台导入3D模型
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37591671/article/details/75044423
WPF利用HelixToolKit后台导入3D模型
1.新建一个WPF项目,引用–》管理nuGet程序包–》联机–》搜索helixtoolkit–》安装
2.xaml文件中引入 xmlns:helix=”http://helix-toolkit.org/wpf”
<Window x:Class="Import3D.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
**xmlns:helix="http://helix-toolkit.org/wpf"***强调内容*
Title="MainWindow" WindowState="Maximized">
<helix:HelixViewport3D >
<!--相机位置也很重要,位置不对,看到的模型就很奇怪-->
<helix:HelixViewport3D.Camera>
<PerspectiveCamera FieldOfView="45" FarPlaneDistance="1098.9153169227836" LookDirection="0,0,-414.387754871885" NearPlaneDistance="0.1" Position="9.9475983006414E-14,91.037123633789,414.387754871885" UpDirection="0,1,0"/>
</helix:HelixViewport3D.Camera>
<!--很重要,没有灯光场景是黑的-->
<helix:DefaultLights></helix:DefaultLights>
<ModelVisual3D x:Name="model"></ModelVisual3D>
</helix:HelixViewport3D>
3.cs代码:
public MainWindow()
{
InitializeComponent();
ObjReader CurrentHelixObjReader = new ObjReader();
//相对路径,新建了一个objFile文件夹,添加了mtl,obj 和纹理图片
Model3DGroup MyModel = CurrentHelixObjReader.Read(@".\objFile\ez.obj");
// Model3DGroup MyModel = CurrentHelixObjReader.Read(@"C:\Users\Administrator\Desktop\simplexaml\simplexaml\bridgesimple712r.obj");
// Display the model
model.Content = MyModel;
}
导入3ds格式模型:
ModelImporter import = new ModelImporter();
Model3DGroup model1 = import.Load(@"C:\Users\Administrator\Desktop\test\file.3ds");//文件路径(我取得绝对路径,自己可以改)
model.Content = model1;
4.如果模型出不来,尝试修改mtl,obj,纹理图片的属性
复制到输出目录:始终复制
生成操作:内容