向ModelVisual3D中添加多个Model3DGroup实例

5
我正在使用WPF构建一个图形模型,最终应该是一个三维桁架。我正在将单个对象构建为Model3DGroup。然后,我将该Model3DGroup添加到ModelVisual3D中。
目前,在我的*.xaml.cs文件中,我在顶部声明了private ModelVisual3D mGeometry;。然后,创建了一个新的Model3DGroup,其中添加了几个点三角形模型。接下来,使用以下代码将其添加到ModelVisual3D中:
mGeometry.Content = prism; // where prism is the Model3D Group with added triangle points
mGeometry.Transform = new Transform3DGroup();
this.viewport.Children.Add(mGeometry);

我的问题是:如何将多个不同的Model3DGroup实例添加到一个ModelVisual3D中?最终我想建立由多个不同的Model3DGroups组成的桁架,并在屏幕上显示它。
我不排斥改变我的做法,因为我不确定最好的方法。目前,我只能显示一个对象。
1个回答

4

每个 ModelVisual3D 可以包含 1 个 Model3D,也可以包含其他的 Visual3D。在这种情况下,您可以将更多的 ModelVisual3D 添加到您的 ModelVisual3DChildren 属性中:

mGeometry.Content = prism;
var moreModelVisual3D = new ModelVisual3D();
moreModelVisual3D.Content = prism2; //your other Model3DGroup
mGeometry.Children.Add(moreModelVisual3D);
//create more if you want ...

请注意,每个 Model3DGroup 都可以包含其他的 Model3DGroup。如果您觉得这适用于您的情况,请考虑使用它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接