2012-05-11 16 views
6

Jak narysować linię w przestrzeni 3D w Pythonie Mayavi? Czy istnieje funkcja z modułu MLAB, która pozwala mi określić punkt początkowy i końcowy linii, która zostanie narysowana?Narysuj linię w języku Python Mayavi

Odpowiedz

1

Sprawdź dokumentację dla mayavi; 3d plotowanie jest w tutoriali i udokumentowane here. Jest częścią mlab, mayavi.mlab.plot3d(*args, **kwargs).

Składnia jest

plot3d(x, y, z, ...) 
2

Jedną ważną cechą można użyć podczas rysowania linii jest do reprezentowania ich w postaci rury. W poniższym przykładzie rysowałem oś X, Y, Z wraz z figurą 3D (pamiętaj, że w moim przypadku wymiary są duże, abyś mógł je dostosować):

import mayavi.mlab as mlab 

black = (0,0,0) 
white = (1,1,1) 
mlab.figure(bgcolor=white) 
mlab.plot3d([0, 1000], [0, 0], [0, 0], color=black, tube_radius=10.) 
mlab.plot3d([0, 0], [0, 1500], [0, 0], color=black, tube_radius=10.) 
mlab.plot3d([0, 0], [0, 0], [0, 1500], color=black, tube_radius=10.) 
mlab.text3d(1050, -50, +50, 'X', color=black, scale=100.) 
mlab.text3d(0, 1550, +50, 'Y', color=black, scale=100.) 
mlab.text3d(0, -50, 1550, 'Z', color=black, scale=100.)