网上下一个obj格式的3D模型;再下一个obj文件查看器,看一下模型,效果如下;
使用SharpDevelop,新建一个WPF工程;
加载obj模型需要WavefrontObjLoader.cs文件;此文件网上有;把此文件加入项目;
xaml和cs代码如下;
<Window x:Class="objDemo1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="objDemo1" Height="300" Width="300"
>
<Grid>
<Viewport3D x:Name="vp" Margin="0,31,0.4,-0.2">
<Viewport3D.Camera>
<PerspectiveCamera FieldOfView="45" FarPlaneDistance="10" LookDirection="0,0,-1" NearPlaneDistance="0.1" Position="0,0,1" UpDirection="0,1,0"/>
</Viewport3D.Camera>
</Viewport3D>
</Grid>
</Window>
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Media3D;
namespace objDemo1
{
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
Model3DGroup myModel3DGroup = new Model3DGroup();
WavefrontObjLoader wfl = new WavefrontObjLoader();
ModelVisual3DWithName m = wfl.LoadObjFile(@"S:\11\飞机_爱给网_aigei_com\新建文件夹\su.obj");
m.Content = myModel3DGroup;
vp.Children.Add(m);
}
}
}
运行,如下图;应该是加载了;但是效果没出来;参数需要调;下回有时间再整;
fieldOfView属性的含义是, 为三维视野指定一个角度;