C# 使用HelixToolkit使三维模型面半透明的问题

C# 使用HelixToolkit使三维模型面半透明的问题,c#,wpf,helix-3d-toolkit,C#,Wpf,Helix 3d Toolkit,我试图使用HelixToolkit显示下面描述的3D模型。(以下快照取自SolidWorks。) 我将用作我的GeometryModel3D的Material和BackMaterial的diffuseMeterial的笔刷颜色设置为Transparent颜色 Model3DGroup faceVisualEntity = ModelFaces.First(modelFace => modelFace.Content.GetName() == faceName).Content as Mo

我试图使用HelixToolkit显示下面描述的3D模型。(以下快照取自SolidWorks。)

我将用作我的
GeometryModel3D
Material
BackMaterial
diffuseMeterial的笔刷颜色设置为Transparent颜色

Model3DGroup faceVisualEntity = ModelFaces.First(modelFace => modelFace.Content.GetName() == faceName).Content as Model3DGroup;

// Breaking the 3D-model down to the constituting mesh..
//
foreach (var child in faceVisualEntity.Children)
{
    if (child is GeometryModel3D)
    {
        GeometryModel3D body = child as GeometryModel3D;
        body.Material = new DiffuseMaterial(new SolidColorBrush("#40FF0000"));
        body.BackMaterial = new DiffuseMaterial(new SolidColorBrush("#40FF0000"));
    }
}
但是,我在
HelixViewport3D
中看到的内容如下所示

虽然盒子的侧面看起来是透明的,但我想知道为什么盒子里的管子看不见。我还将管道壁的颜色更改为不透明值,但尚未看到它们


事实是,仅通过更改模型面材质的alpha通道,无法使用HelixToolkit的透明度功能。实际上,HelixToolkit代码中有一个示例表明,需要使用
SortingVisual3D
来支持模型的透明度。因此,我首先向
HelixViewport3D
添加了一个
SortingVisual3D
的实例,然后向其中添加了Visual3D对象,例如
ModelVisual3D
LinesVisual3D
,等等。因此,我现在看到的情况如下