Skip to content

Commit a94158b

Browse files
committed
added xvfbwrapper to requirements, improved vtk handling
1 parent c738be6 commit a94158b

File tree

2 files changed

+13
-11
lines changed

2 files changed

+13
-11
lines changed

nipype/algorithms/mesh.py

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,22 +54,23 @@ class TVTKBaseInterface(BaseInterface):
5454
""" A base class for interfaces using VTK """
5555

5656
_redirect_x = True
57-
_vtk_major = 5
57+
_vtk_version = (4, 0, 0)
5858

5959
def __init__(self, **inputs):
60-
if not have_tvtk:
60+
if no_tvtk():
6161
raise ImportError('This interface requires tvtk to run.')
6262

63-
# Identify VTK version major, use 5.0 if failed
6463
try:
6564
from tvtk.tvtk_classes.vtk_version import vtk_build_version
66-
self._vtk_major = int(vtk_build_version[0])
65+
self._vtk_version = tuple([int(v) for v in vtk_build_version.split('.')])
6766
except ImportError:
6867
iflogger.warning(
69-
'VTK version-major inspection using tvtk failed, assuming VTK <= 5.0.')
70-
68+
'VTK version-major inspection using tvtk failed, assuming VTK == 4.0.')
7169
super(TVTKBaseInterface, self).__init__(**inputs)
7270

71+
def version(self):
72+
return self._vtk_version
73+
7374

7475
class WarpPointsInputSpec(BaseInterfaceInputSpec):
7576
points = File(exists=True, mandatory=True,
@@ -158,7 +159,7 @@ def _run_interface(self, runtime):
158159
newpoints = [p + d for p, d in zip(points, disps)]
159160
mesh.points = newpoints
160161
w = tvtk.PolyDataWriter()
161-
if self._vtk_major <= 5:
162+
if self.version()[0] < 6:
162163
w.input = mesh
163164
else:
164165
w.set_input_data_object(mesh)
@@ -290,7 +291,7 @@ def _run_interface(self, runtime):
290291
writer = tvtk.PolyDataWriter(
291292
file_name=op.abspath(self.inputs.out_warp))
292293

293-
if self._vtk_major <= 5:
294+
if self.version()[0] < 6:
294295
writer.input = out_mesh
295296
else:
296297
writer.set_input_data_object(out_mesh)
@@ -411,7 +412,7 @@ def _run_interface(self, runtime):
411412
vtk1.point_data.vectors = warping
412413
writer = tvtk.PolyDataWriter(
413414
file_name=op.abspath(self.inputs.out_warp))
414-
if self._vtk_major <= 5:
415+
if self.version()[0] < 6:
415416
writer.input = vtk1
416417
else:
417418
writer.set_input_data_object(vtk1)
@@ -422,7 +423,7 @@ def _run_interface(self, runtime):
422423
writer = tvtk.PolyDataWriter(
423424
file_name=op.abspath(self.inputs.out_file))
424425

425-
if self._vtk_major <= 5:
426+
if self.version()[0] < 6:
426427
writer.input = vtk1
427428
else:
428429
writer.set_input_data_object(vtk1)

nipype/info.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,5 +140,6 @@ def get_nipype_gitversion():
140140
"nose>=%s" % NOSE_MIN_VERSION,
141141
"future>=%s" % FUTURE_MIN_VERSION,
142142
"simplejson>=%s" % SIMPLEJSON_MIN_VERSION,
143-
"prov>=%s" % PROV_MIN_VERSION]
143+
"prov>=%s" % PROV_MIN_VERSION,
144+
"xvfbwrapper"]
144145
STATUS = 'stable'

0 commit comments

Comments
 (0)