helix3dtoolkit(sharpdx WPF):LineGeometryModel3D材质已更改,需要应用相机移动才能应用

问题描述 投票:1回答:1

我正在使用Helixtoolkit sharpdx(WPF)编程3d查看器。基本上,我在场景上添加了stl形状。在此形状上,我添加了一些由LineGeomtryModel3D制成的轮廓。在运行时,当我从列表中选择模型时,将新颜色应用于轮廓:

    private void UpdateColorModels()
    {
        //MAJ des couleurs en fonction du status
        try
        {
        //Surcharge du MainColor si selectionné
            if (IsSelected)
            {
                MainColor = System.Windows.Media.Colors.Yellow;
                Thickness = 2;
                DepthBias = -10000000;
            }

            //Application de la couleur aux éléments visuels
            SharpDX.Color newMainColor = new Color(MainColor.R, MainColor.G, MainColor.B, MainColor.A);

            if (m_Outlines != null)//m_Outlines is List<LineGeometry3DModel>
                foreach (var item in m_Outlines)
                {
                    item.Color = newMainColor;
                    item.DepthBias = DepthBias;
                    item.Thickness = Thickness;
                }
        }
        catch (SharpDXException sdxex)
        {
            Console.WriteLine("SharpDXException:" + sdxex.Message);
        }
    }

以上,您可以看到简化方法。有时它有时起作用,有时却不起作用。我的意思是有时候查看器上的颜色有时会很好地刷新,但是有时我必须移动相机以刷新颜色...有没有办法在不移动相机的情况下强制刷新?

wpf sharpdx helix-3d-toolkit
1个回答
0
投票

您可以尝试使用invalidaterenderer方法。您有几个线模型?

© www.soinside.com 2019 - 2024. All rights reserved.