Rotation 3D sur page WPF... je bloque

Signaler
Messages postés
189
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mai 2013
-
Messages postés
27
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
29 juillet 2010
-
Bonjour au forum,

Voila mon problème, j'ai crée une appli en WPF/C#. Son interface principale est composée d'une série de boutons disposés verticalement sur la gauche de la fenêtre. Sur la partie droite j'ai disposé une frame dans laquelle je fait apparaitre une série de page WPF contenant divers controls. Le changement de ces page wpf depend du bouton cliqué sur l'interface principale..... j'espère que ma description est claire.

Ce que je souhaite faire c'est "animé" le changement de page wpf en ajoutant des animations. Et ce que je veux faire en particulier c'est un effet de rotation 3D pour le changement de page.

Mais le problème c'est que je ne vous pas comment faire le bazard. Mon choix de frame et de page wpf permet il de realiser un tel effet? dois je utiliser un viewport3D (que je ne connais pas du tout)? auriez vous un exemple simple, un tuto pour realiser cela?

J'ai trouvé quelque source sur le net qui montrent les effets applicables au wpf, mais pas moyen de l'adapter a mon projet (faut dire que je debute en wpf). Mais bon faut bien se lancer des defits si on veux apprendre et progresser.

en tout cas à l'avance, merci pour votre aide

4 réponses

Messages postés
1860
Date d'inscription
lundi 28 novembre 2005
Statut
Modérateur
Dernière intervention
14 février 2015
44
Salut

Tout d'abord, pour le viewport 3d, MSDN a un exemple :
http://msdn.microsoft.com/fr-fr/library/system.windows.controls.viewport3d.aspx

(Petite chose à savoir cependant, lorsque tu choisis les indices de tes vertex (points en 3D) pour tes triangles, il faut les définir dans le sens anti-horaire par rapport à la façon dont tu les vois depuis la caméra.)

Ensuite, en ce qui concerne l'animation, utilise, par exemple, des DoubleAnimation pour tes angles, la position de tes éléments...

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
Messages postés
242
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
17 janvier 2018

Tu peux réaliser cela en créant une UI en 3D qui tu transformes via une rotation 3D ou alors feinter en utilisant les SkewTransform et translateTransform afin de créer une illusion de rotation 3D (tout en dessinant, le cas échéant, une ligne faisant office de coin du cube).

Si tu veux ajouter des ombres, la par contre le passage a la 3D s'avère quasi obligatoire (bien qu'il soit encore certainement possible de feinter avec des brush affectée par des transfos ... mais au final ça alourdirait vachement)
Messages postés
242
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
17 janvier 2018

Biensûr, quand je parle d'UI en 3D il s'agit d'une projection via une VisualBrush d'élément 2D sur une forme cubique.

désolé du double poste.

Cordialement,

KiTe
Messages postés
27
Date d'inscription
samedi 24 janvier 2009
Statut
Membre
Dernière intervention
29 juillet 2010

salut j'ai une question. Est il possible de faire tourner une fenetre (window) en 3d. Je sais que le autre controles sont possible mais la fenetre ??
animation back to front ???