Viewport3D的绘制事件



如何更改Viewport3D的渲染?有像winforms中那样的绘画事件吗?

我想在屏幕空间(在视口中)而不是在世界空间(视口中)中绘制一些内容。为什么?因为它太重了,无法直接在viewport3D中绘制文本和线条。我有成千上万的线条和文字要画。即使我使用了好的库,它也会减慢绘图过程,极大地增加内存。

此外,无论内容如何,我都想在viewport3D的表面上绘制一个矩形。(例如,我不想计算应该在哪里画矩形,这样它就不会出现在物体后面。)

因此,如果我知道如何在viewport3D的表面上绘制,那将是一个很好的解决方案。

您可以覆盖Viewport3D的OnRender方法。请参阅以下代码。

 class MyViewPort : Viewport3D
{
    protected override void OnRender(DrawingContext drawingContext)
    {
        base.OnRender(drawingContext);
    }
}

最新更新