我有一个带有GeometryModel3D
数据绑定的 WPF 控件。DiffuseMaterial
ImageBrush
ImageSource
我的目标是在鼠标悬停时显示“横截面”,为此我已经可以在对象上获得正确的位置。问题是:WPF 中没有“3D 线”。
我做了一个测试,在我使用的图像中画了一条线,ImageSource
视觉结果正是我想要的。
所以我打算做以下事情:生成一次基础图像,然后在其上绘制适当的线,将使用的属性设置为ImageSource
.
我考虑了两种方法:
具有类型的绑定 ImageSource
BitmapImage
。然后我用空白纹理(没有线条)创建System.Drawing.Bitmap
一次,然后每次我想要线条改变位置时,我用;重新创建BitmapImage
线条。System.Drawing.Graphics
具有类型的绑定 ImageSource
DrawingGroup
。然后我创建了System.Windows.Media.ImageDrawing
一次,然后每次我希望线改变位置时,我DrawingGroup
通过仅更改GeometryDrawing
由单行组成的来重新创建。
一种方法比另一种方法有什么内在优势吗?