第
WPF实现绘制3D图形的示例代码
NearPlaneDistance=0.1
Position=9.9475983006414E-14,91.037123633789,414.387754871885
UpDirection=0,1,0/
/helix:HelixViewport3D.Camera
helix:HelixViewport3D.Background
LinearGradientBrushEndPoint=0.5,1StartPoint=0.5,0
GradientStopColor=#444Offset=0/
GradientStopColor=#EEEOffset=1/
/LinearGradientBrush
/helix:HelixViewport3D.Background
helix:GridLinesVisual3DWidth=16000Length=16000Thickness=2MinorDistance=500MajorDistance=500Fill=Gray/
!--很重要,没有灯光场景是黑的--
helix:DefaultLights/
ModelVisual3Dx:Name=model/ModelVisual3D
/helix:HelixViewport3D
/Grid
/Window
namespaceWpfApp2
publicpartialclassMainWindow:Window
ListstringmodelPaths=newListstring
stringbasePath=AppDomain.CurrentDomain.BaseDirectory+\\ModelFiles\\;
publicMainWindow()
InitializeComponent();
modelPaths.Add(IRB4600_20kg-250_LINK1_CAD_rev04.stl);
modelPaths.Add(IRB4600_20kg-250_LINK2_CAD_rev04.stl);
modelPaths.Add(IRB4600_20kg-250_LINK3_CAD_rev005.stl);
modelPaths.Add(IRB4600_20kg-250_LINK4_CAD_rev04.stl);
modelPaths.Add(IRB4600_20kg-250_LINK5_CAD_rev04.stl);
modelPaths.Add(IRB4600_20kg-250_LINK6_CAD_rev04.stl);
modelPaths.Add(IRB4600_20kg-250_LINK3_CAD_rev04.stl);
modelPaths.Add(IRB4600_20kg-250_CABLES_LINK1_rev03.stl);
modelPaths.Add(IRB4600_20kg-250_CABLES_LINK2_rev03.stl);
modelPaths.Add(IRB4600_20kg-250_CABLES_LINK3_rev03.stl);
modelPaths.Add(IRB4600_20kg-250_BASE_CAD_rev04.stl);
this.Loaded+=MainWindow_Loaded;
viewPort3d.RotateGesture=newMouseGesture(MouseAction.RightClick);
viewPort3d.PanGesture=newMouseGesture(MouseAction.LeftClick);
privatevoidMainWindow_Loaded(objectsender,RoutedEventArgse)
viewPort3d.Camera.LookDirection=newVector3D(2038,-5200,-2930);
viewPort3d.Camera.UpDirection=newVector3D(-0.145,0.372,0.917);
viewPort3d.Camera.Position=newPoint3D(-1571,4801,3774);
this.model.Content=