我正在努力在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?我最终想要构建一个由多个不同的Model3DGroup组成的桁架并将其显示在屏幕上。
我不反对改变我的做法,因为我不确定最好的方法。目前,我只能显示一个对象。
答案 0 :(得分:2)
每个ModelVisual3D
只能包含1个Model3D
,但也可以包含其他Visual3D
个。在这种情况下,您只需向ModelVisual3D
的{{1}}媒体资源添加更多Children
:
ModelVisual3D
另请注意,每个mGeometry.Content = prism;
var moreModelVisual3D = new ModelVisual3D();
moreModelVisual3D.Content = prism2; //your other Model3DGroup
mGeometry.Children.Add(moreModelVisual3D);
//create more if you want ...
都可以包含其他Model3DGroup
个。如果您认为可以在您的情况下应用,请改为考虑它。