helix-toolkit で任意のMeshElement3D (BoxVisual3d など) をワイヤーフレームとして表示したいと考えています。これはどのように達成できますか?
編集:
Erno de Weerd の回答のおかげで、次のコードを書くことができました
BoxVisual3D を拡張するクラス
public class GeometryBoxVisual3D : BoxVisual3D { public MeshGeometry3D Geometry() { return Tessellate(); } }
ボックスのインスタンスをビューポートに追加します。
GeometryBoxVisual3D box = new GeometryBoxVisual3D(); box.Fill = new SolidColorBrush(Colors.Red); Viewport3D.Children.Add(box); MeshGeometry3D geometry3 = box.Geometry(); LinesVisual3D lines = new LinesVisual3D(); lines.Thickness = 3; lines.Points = geometry3.Positions; lines.Transform = new TranslateTransform3D(3,1,1); Viewport3D.Children.Add(lines);
これにより、次のように表示されます。
元のボックスを非表示にして LinesVisual3D をボックスの上に配置すると、ワイヤーフレームを元のオブジェクトのように表示できますが、側面のエッジがまだありません。