def compute(self):
        self.check_input('input_file')
        self.check_input('iterations')
        iters = self.get_input('iterations')
        if iters < 1:
            raise ModuleError(self, 'iterations must be >=1')
        input_file = self.get_input('input_file')
        if self.has_input('output_format'):
            output_suffix = self.get_input('output_format')
        else:
            output_suffix = self.guess_input_format(input_file.name)
        if not output_suffix:
            output_suffix = '.off'
        output_file = self.interpreter.filePool.create_file(suffix=output_suffix)

        values = [_mesh_filter_path,
                  input_file.name,
                  '-subdiv',
                  output_file.name]
        cmdline = list2cmdline(values)
        print cmdline
        result = os.system(cmdline)
        if result != 0:
            raise ModuleError(self, 'Execution failed')

        for i in xrange(iters-1):
            cmdline = '%s %s -subdiv %s'  % (_mesh_filter_path,
                                             output_file.name,
                                             output_file.name)
            print cmdline
            result = os.system(cmdline)
            if result != 0:
                raise ModuleError(self, 'Execution failed')
            
        self.set_output('output_file', output_file)
dataset/ETHPy150Open VisTrails/VisTrails/contrib/trimesh2.py/PlanarSubdiv.compute/original