Viewport 3D WPF C#

时间:2009-12-03 17:21:00

标签: c# wpf grid viewport3d

请告诉您如何设置和保存viewport3D的背景颜色。每当我保存没有背景是唯一可见的模型,我尝试了网格,但这得到网格中的一切?任何帮助都可以吗?

2 个答案:

答案 0 :(得分:2)

Viewport3D没有Background属性,因此您需要一些东西。

使用网格的方法是正确的,您可能希望使用边框来强制执行 使用一个孩子。

 <Border Background="Green">
  <Viewport3D Width="640.0" Height="480.0" >
    <ModelVisual3D/>
  </Viewport3D>
</Border>

我假设你正在使用XamlWriter,XamlReader。只需保存边框而不是Viewport3D,边框内的所有内容也将保存。

答案 1 :(得分:0)

我已为此提供了一些代码,请验证它。

<Viewport3D>
            <Viewport3D.Camera>
                <PerspectiveCamera Position="2,0,10" LookDirection="0.2,0.4,-1" FieldOfView="65" UpDirection="0,1,0">
                </PerspectiveCamera>
            </Viewport3D.Camera>
            <ModelVisual3D>
                <ModelVisual3D.Content>
                    <Model3DGroup>
                        <AmbientLight Color="#fff"/>
                        <GeometryModel3D>
                            <GeometryModel3D.Geometry>
                                <MeshGeometry3D Positions="0,0,0 0,10,0 10,0,0 10,10,0"
                                                Normals="0,0,1 0,0,1 0,0,1 0,0,1"
                                                TriangleIndices="0,2,1,1,2,3"/>
                            </GeometryModel3D.Geometry>
                            <GeometryModel3D.Material>
                                <DiffuseMaterial Brush="Red"/>
                            </GeometryModel3D.Material>
                        </GeometryModel3D>
                    </Model3DGroup>
                </ModelVisual3D.Content>
            </ModelVisual3D>
        </Viewport3D>