我在 ViewPort3D 中有一个 2D 正方形,我想对图像进行平铺(如棋盘或具有“瓷砖”效果的地板)。
我创建了一个图像画笔(图像为 50x50 像素,表面为 250x550 像素)和一个视口(试图遵循 MS 的站点 - 尽管他们的示例是 2D 的),但“平铺”图像中只有一种颜色显示起来,看不到平铺。我在 Internet 上找不到单个示例,并且 MS 的站点在任何地方都没有关于 3D XAML 的信息(我可以找到),所以我很难做到这一点。
<Viewport3D>
<Viewport3D.Camera>
<PerspectiveCamera Position="125,790,120" LookDirection="0,-.7,-0.25" UpDirection="0,0,1" />
</Viewport3D.Camera>
<ModelVisual3D>
<ModelVisual3D.Content>
<Model3DGroup>
<AmbientLight Color="white" />
<GeometryModel3D>
<GeometryModel3D.Geometry>
<MeshGeometry3D Positions="0,0,0 250,0,0 250,550,0 0,550,0 " TriangleIndices="0 1 3 1 2 3 "/>
</GeometryModel3D.Geometry>
<GeometryModel3D.Material>
<DiffuseMaterial>
<DiffuseMaterial.Brush>
<ImageBrush ViewportUnits="Absolute" TileMode="Tile" ImageSource="testsquare.gif" Viewport="0,0,50,50" Stretch="None" ViewboxUnits="Absolute" />
</DiffuseMaterial.Brush>
</DiffuseMaterial>
</GeometryModel3D.Material>
</GeometryModel3D>
</Model3DGroup>
</ModelVisual3D.Content>
</ModelVisual3D>
</Viewport3D>