0

我正在创建一个三角形,如下所示:

meshBuilder.AddTriangle(new Point3D(x, y, z));
var mesh = meshBuilder.ToMesh(true);

myTrianglegeometry = new GeometryModel3D();
myTrianglegeometry.Material = greenMaterial;
myTrianglegeometry.BackMaterial = yellowMaterial;
myTrianglegeometry.Geometry = mesh;
modelGroup.Children.Add(myTrianglegeometry);

myModelVisual3D = new ModelVisual3D();
myModelVisual3D.Content = modelGroup;

现在我的程序正在更新 x、y 和 z 的值。因此,我为 x、y、z 的每次更新调用上述代码,每当有一组新的 x、y、z 可用时,它都会创建一个新三角形。这可行,但计算量非常大,并导致 UI 响应非常慢。

为避免这种情况,我应该如何将“myTrianglegeometry”重新绘制/重新定位到 x、y、z 的新值,而不是创建新的三角形?是否可以更改“myTrianglegeometry”的顶点?

请在这方面指导我。

谢谢。

4

1 回答 1

0

通常您使用视图矩阵来平移/旋转/缩放。为什么不这样做?

于 2012-10-17T02:47:58.637 回答