WPF Отображение 3D-объекта в оригинальном цвете - PullRequest
0 голосов
/ 29 декабря 2018

Я отобразил 3D-объект, ссылаясь на следующую ссылку Отображение 3D-модели с помощью Window Presentation Foundation . Все работает нормально, за исключением того, что объект отображается простым синим цветом. Любой может помочь мне отобразить егов оригинальном цвете? Ссылка указана, но по-прежнему не нужна. Любая помощь приветствуется.

Мой код похож на

namespace Display3DModel
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        //Path to the model file
        private const string MODEL_PATH = "Model/Model2.obj";

        public MainWindow()
        {
            InitializeComponent();

            ModelVisual3D device3D = new ModelVisual3D();
            device3D.Content = Display3d(MODEL_PATH);
            // Add to view port
            viewPort3d.Children.Add(device3D);
        }

        /// <summary>
        /// Display 3D Model
        /// </summary>
        /// <param name="model">Path to the Model file</param>
        /// <returns>3D Model Content</returns>
        private Model3D Display3d(string model)
        {
            Model3D device = null;
            try
            {
                //Adding a gesture here
                viewPort3d.RotateGesture = new MouseGesture(MouseAction.LeftClick);

                //Import 3D model file
                ModelImporter import = new ModelImporter();

                //Load the 3D model file
                device = import.Load(model);
            }
            catch (Exception e)
            {
                // Handle exception in case can not file 3D model
                MessageBox.Show("Exception Error : " + e.StackTrace);
            }
            return device;
        }
    }
}

И в XAML

<Window x:Class="Display3DModel.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:helix="http://helix-toolkit.org/wpf"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <helix:HelixViewport3D x:Name="viewPort3d" ZoomExtentsWhenLoaded="true" Grid.RowSpan="2" >
            <!-- Remember to add light to the scene -->
            <helix:DefaultLights/>
        </helix:HelixViewport3D>
    </Grid>
</Window>
...