IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Rotations d'objet 3D sous python (angles d'Euler) [Python 2.X]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 7
    Par défaut Rotations d'objet 3D sous python (angles d'Euler)
    Bonjour à tous,

    Je souhaite créer une rotation grâce aux angles d'Euler sur un cube en 3D sous Python.
    Pour ce faire, je souhaite faire du calcul matriciel, j'ai donc, en choisissant la convention (phi,theta,psi), créer la matrice donnant la rotation. Je connais ces coefficients, je les ai rentré sous Python, mais je ne sais pas pourquoi il y a une erreur ascii quand je décide de le lancer..
    Bref, c'est déjà un premier problème vers le chemin de la réussite d'une rotation complète..

    Pouvez-vous m'aider ?
    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    from mpl_toolkits.mplot3d import Axes3D
    from numpy import sin,cos
    import matplotlib.pyplot as plt
    import numpy as np
    from itertools import product, combinations
    fig = plt.figure()
    ax = fig.gca(projection='3d')
    ax.set_aspect("auto")
    ax.set_autoscale_on(True)
     
    phi=np.radians(60)
    theta=np.radians(20)
    psi=np.radians(45)
     
    A=np.array([cos(psi)*cos(phi)-cos(theta)*sin(phi)*sin(psi),cos(psi)*sin(phi)+cos(theta)*cos(phi)*sin(psi),sin(psi)*sin(theta)],
                [-sin(psi)*cos(phi)-cos(theta)*sin(phi)*cos(psi),-sin(psi)*sin(phi)+cos(theta)*cos(phi)*cos(psi),cos(psi)*sin(theta)],
                [sin(theta)*sin(phi),-sin(theta)*cos(phi),cos(theta)])
     
    #dessiner cube
    r = [-10, 10]
    for s, e in combinations(np.array(list(product(r,r,r))), 2):
        if np.sum(np.abs(s-e)) == r[1]-r[0]:
            s_rotated=np.dot(A,s)
            e_rotated=np.dot(A,e)
            ax.plot3D(*zip(s_rotated,e_rotated), color="b")
     
    plt.show()
    Et voici l’exécutable avec l'erreur :
    Traceback (most recent call last):

    File "C:\Python27\lib\site-packages\IPython\core\interactiveshell.py", line 2894, in run_code
    self.showtraceback()

    File "C:\Python27\lib\site-packages\IPython\core\interactiveshell.py", line 1756, in showtraceback
    value, tb, tb_offset=tb_offset)

    File "C:\Python27\lib\site-packages\IPython\core\ultratb.py", line 1190, in structured_traceback
    self, etype, value, tb, tb_offset, context)

    File "C:\Python27\lib\site-packages\IPython\core\ultratb.py", line 1107, in structured_traceback
    self, etype, value, elist, tb_offset, context

    File "C:\Python27\lib\site-packages\IPython\core\ultratb.py", line 501, in structured_traceback
    out_list.extend(self._format_list(elist))

    File "C:\Python27\lib\site-packages\IPython\core\ultratb.py", line 548, in _format_list
    Colors.Normal)

    UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 10: ordinal not in range(128)

  2. #2
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 7
    Par défaut
    J'ai réglé le problème, c'est juste que m'appelant Régis, il n'aime pas mon accent le petit ascii..

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Newton] probleme d'angle de rotation des objet
    Par Syl_20 dans le forum Newton
    Réponses: 13
    Dernier message: 27/08/2007, 08h41
  2. Insertion documents word dans champ objet OLE sous VBA
    Par frankouche dans le forum Access
    Réponses: 4
    Dernier message: 20/12/2006, 21h35
  3. angle d'euler et matrice de rotation
    Par mat_monroe dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 02/05/2005, 11h06
  4. Désenregistrement d'Objets COM sous Windows
    Par barthelv dans le forum Windows
    Réponses: 2
    Dernier message: 21/05/2003, 15h11
  5. algo : rotation d'objet 3d
    Par numeror dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 19/08/2002, 22h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo