Bonjour à tous et à toutes,
Je suis entrain de dévélopper une programme qui permet d'animer une image 3D ( format 3DS ) grace à Visual Studio 2005.
J'utilise le XAML pour faire le Viewport et l'animation se fait en C#. Je commence d'abord par déclarer les propriétés et le constante , ensuite je déclare le constructeur et puis j'importe mon fichier 3DS. J'ai ajouté dans mon code un.dll pour intégrer les méthodes de la bibltiothèque Ab3d ( Abd3.Reader , Ab3d.transformer. Mon code est le suivant:
Une fois avoir fait ceci , mon programme se lance et ensuite j'essaye de faire bouger le Slider
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 private void WindowLoaded(object sender, EventArgs e) { _robotArmReader3ds = new Ab3d.Reader3ds(); Model3DGroup Mon_Modele = new Model3DGroup (); // _robotArmReader3ds.ReadFile("sythe.3ds", Viewport1); ResetCamera(); Init(); }
Le code utilisé lorsque je fait bouger le slider est le suivant:
Line01 est une NamedObject. Je recois l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 void Slider1Changed(object sender, RoutedEventArgs e) { _robotArmTransformer.RotateObject("Line01", new AxisAngleRotation3D(new Vector3D(0, 0, 1), Convert.ToInt32(Slider1.Value))); }
La réference d'objet n'est pas définie à une instance d un objet.
Je ne comprends pas l'erreur car j'ai bien crée une instance de l'objet _robotArmTransformer:
Voilà,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2private Ab3d.Transformer3ds _robotArmTransformer;
Merci pour votre aide.
Ismail
Partager