2014-05-24 1 views

Répondre

11

Trier de, vous pouvez exécuter ce bout de code avant de parcelle:

import numpy 
from mpl_toolkits.mplot3d import proj3d 
def orthogonal_proj(zfront, zback): 
    a = (zfront+zback)/(zfront-zback) 
    b = -2*(zfront*zback)/(zfront-zback) 
    return numpy.array([[1,0,0,0], 
         [0,1,0,0], 
         [0,0,a,b], 
         [0,0,0,zback]]) 
proj3d.persp_transformation = orthogonal_proj 

Il est actuellement une question ouverte trouvé here.

+0

Cela a fonctionné, merci! Les directions des axes semblent opposées, mais cela pourrait probablement être résolu en jouant avec les signes/ordre dans cette matrice de transformation. – user3670781

+2

Il semble que mettre un petit nombre négatif (par exemple -0.0001) au lieu de zéro dans la troisième colonne de la dernière rangée aide à éviter les problèmes de singularité de la matrice, et résout une inversion étrange de la direction des axes. – user3670781

+0

@ user3670781 Ajout du petit nombre neg aidé! Merci :-) –

Questions connexes