HelixToolkit使用总结:
问题点:
3d光源
相机
网格信息
1、配置HelixViewPort3d基本参数
2、配置相机参数和相机位置:HelixViewPort3D.DefaultCamera
设置相机的放置方向和观看位置
3、配置光线:hv:SunLight
4、配置坐标网格 hv:GridLinesVisual3D
5、配置模型的属性ModelVisual3D两个属性
1)、材质和外观
GeometryModel3D
1、Material
2、Geometry
GeometryModel3D model1 = d.Children[i] as GeometryModel3D;var materialGroup = new MaterialGroup();DiffuseMaterial diffMat = new DiffuseMaterial(new SolidColorBrush(Colors.Gray));materialGroup.Children.Add(diffMat);model1.Material = materialGroup;model1.BackMaterial = materialGroup;
对模型位置修改:
1)模型内位置的修改
对象的平移:
GeometryModel3D model1 = d.Children[0] as GeometryModel3D;MeshGeometry3D mesh = model1.Geometry as MeshGeometry3D;var res = mesh.Positions;for (int i = 0; i < res.Count; i++){var sp = mesh.Positions[i];mesh.Positions[i] = new Point3D() { X = sp.X, Y =sp.Y, Z =sp.Z+ 10 };}model1.Geometry = mesh;
UI界面更新外观和位置:
2)整体模型位置的修改
通过对前台代码的修改即可。或者是使用mvvm进行绑定修改
效果图如下:
实现对模型的运动控制
源代码如下: