私は 3d グラフィックスと wpf が初めてで、現在のプロジェクトでこれら 2 つを組み合わせる必要があります。ポイントと法線をMeshGeometry3D
に追加MeshGeometry3D
し、 に追加しGeometryModel3D
ます。次に に追加GeometryModel3D
しModelVisual3D
、最後に に追加ModelVisual3D
しViewPort3D
ます。回転する必要がある場合は、GeometryModel3D または ModelVisual3D で必要な変換を実行し、最後に ViewPort3D に再度追加します。問題が発生しています:
objViewPort3D.Remove(objModelVisual3D);
objGeometryModel3D.Transform = new RotateTransform3D(new AxisAngleRotation3D(new Vector3D(0, 1, 0), angle += 15));
objModelVisual3D.Content = objGeometryModel3D;
objViewPort3D.Children.Add(objModelVisual3D);
毎回 15 度ずつ回転させるには、なぜだけでなく、何angle += 15
をしなければならないの15
ですか? 格納されたモデルはTransform
操作では変形せず、 で表示するときだけ変形がかかるようViewPort3D
です。保存された MeshGeometry3D オブジェクトの座標を変換で実際に変更して、次に変換を行うときに、元のモデルではなく、以前に変換されたモデルで行うようにしたいのです。この動作を取得するにはどうすればよいですか?