Я делаю приложение С#, которое отображает 3dmodel.stl в форме Windows.
Мне удалось отобразить его, но цвет модели по умолчанию синий, и мне нужно изменить его на что-нибудь другое, скажем, розовый/коричневый (он должен выглядеть как кожа).
Я искал его 2 дня, читал документацию и примеры, но не нашел способа его изменить.
Если кто-то работал со спиралью и знает, как (или даже если есть способ) это сделать, я буду ему очень благодарен за информацию.
код очень простой:
XAML-код:
<UserControl x:Class="Ventana.Visor3D"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:helix="http://helix-toolkit.org/wpf"
xmlns:local="clr-namespace:Ventana"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
<helix:HelixViewport3D x:Name="viewPort3d" ZoomExtentsWhenLoaded="true" Grid.RowSpan="2" >
<helix:SunLight/>
</helix:HelixViewport3D>
</Grid>
And the C# code:
public partial class Visor3D : UserControl
{
private const string MODEL_PATH = "\\Prueba.STL";
ModelVisual3D device3D;
public Visor3D(){ }
public void Carga() {
InitializeComponent();
device3D = new ModelVisual3D();
device3D.Content = Display3d(MODEL_PATH);
viewPort3d.Children.Add(device3D);
}
private Model3D Display3d(string model)
{
Model3D device = null;
try
{
viewPort3d.RotateGesture = new MouseGesture(MouseAction.LeftClick);
ModelImporter import = new ModelImporter();
device = import.Load(Environment.CurrentDirectory + model);
}
catch (Exception e)
{
MessageBox.Show("Exception Error : " + e.StackTrace);
}
return device;
}
}