Python - duda giro de vectores

 
Vista:

duda giro de vectores

Publicado por Javi (3 intervenciones) el 28/08/2015 11:07:00
Hola, necesito ayuda para encontrar un algoritmo que me permita girar vectores (aunque mi objetivo final es girar un segmento) en el espacio, respecto del eje xz y del eje y. Yo escribí el siguiente, pero no se si estará bien ya que el resultado obtenido no es muy lógico. Gracias de antemano.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
GiroY = lambda a: np.array([
[np.cos(a) ,0, np.sin(a)],
[0 ,1, 0],
[-np.sin(a),0, np.cos(a)]
])
 
GiroZ = lambda aa: np.array([
[np.cos(aa),-np.sin(aa),0],
[np.sin(aa), np.cos(aa),0],
[0 ,0 ,1]
])
 
def Giro(p0,w,alfa,beta):
"""Dará el nuevo valor de p0 y w una vez rotado el objetivo
"""
 
A = np.dot(GiroY(alfa), GiroZ(beta))
nuevow = np.dot(A, w )
nuevop = p0 + .5*(w-nuevow)
 
 
return nuevop, nuevow


Por cierto, decir que w es el vector y p0 es un extremo del segmento que quiero girar, no el eje de rotación.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder