Ajout de modèles de contenu pour la HelixViewport3D en Hélice 3D Toolkit
Je suis en train de charger et d'afficher un modèle 3d dans le HelixViewport3D.
Je peux aller aussi loin que le chargement du modèle (OBJ), mais je ne comprends pas comment obtenir le modèle dans la fenêtre d'affichage.
Voici une capture d'écran de mon formulaire WPF...
La viewprot est désigné comme "mavue' - j'ai pensé que je pourrais accrocher afin d'ajouter mon modèle, mais je ne vois rien d'évident à utiliser.
Voici mon code XAML de la forme :
<Window x:Class="HelixTrial.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:HelixToolkit="clr-namespace:HelixToolkit.Wpf;assembly=HelixToolkit.Wpf"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid HorizontalAlignment="Left" Height="250" Margin="241,37,0,0" VerticalAlignment="Top" Width="250">
<HelixToolkit:HelixViewport3D x:Name="myView" ZoomExtentsWhenLoaded="True">
<!-- Remember to add light to the scene -->
<HelixToolkit:SunLight/>
<!-- You can also add elements here in the xaml -->
<HelixToolkit:GridLinesVisual3D Width="8" Length="8" MinorDistance="1" MajorDistance="1" Thickness="0.01"/>
</HelixToolkit:HelixViewport3D>
</Grid>
</Grid>
Et voici le code de mon formulaire.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Media.Media3D;
using HelixToolkit.Wpf;
namespace HelixTrial
{
///<summary>
///Interaction logic for MainWindow.xaml
///</summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ObjReader CurrentHelixObjReader = new ObjReader();
Model3DGroup MyModel = CurrentHelixObjReader.Read("C:/Users/Roger/Desktop/cube/cube.obj");
//Now how to load it into the viewport... ?
}
}
}
Vous pouvez voir où je suis coincé. Quelqu'un pourrait-il m'aider à obtenir sur la bonne voie s'il vous plaît.
OriginalL'auteur Rog | 2013-12-04
Vous devez vous connecter pour publier un commentaire.
Après quelques tests j'ai trouvé la solution.
J'ai ajouté ce qui suit à mon XAML :
Le truc, c'était de lui donner un nom, c'est à dire " foo " par exemple. Le code XAML va maintenant ressembler à ceci :
Ensuite dans le code (par ce que j'ai posté dans ma question initiale ci-dessus), vous pouvez le faire :
Facile lorsque vous découvrez comment faire 😉
OriginalL'auteur Rog
# Ceci est mon code qui fonctionne très bien #
Voici mon .cs Fichier
}
}
OriginalL'auteur Sumit Baperkar