/[escript]/trunk/pyvisi/py_src/cutter.py
ViewVC logotype

Contents of /trunk/pyvisi/py_src/cutter.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2881 - (show annotations)
Thu Jan 28 02:03:15 2010 UTC (11 years, 1 month ago) by jfenwick
File MIME type: text/x-python
File size: 2110 byte(s)
Don't panic.
Updating copyright stamps

1
2 ########################################################
3 #
4 # Copyright (c) 2003-2010 by University of Queensland
5 # Earth Systems Science Computational Center (ESSCC)
6 # http://www.uq.edu.au/esscc
7 #
8 # Primary Business: Queensland, Australia
9 # Licensed under the Open Software License version 3.0
10 # http://www.opensource.org/licenses/osl-3.0.php
11 #
12 ########################################################
13
14 __copyright__="""Copyright (c) 2003-2010 by University of Queensland
15 Earth Systems Science Computational Center (ESSCC)
16 http://www.uq.edu.au/esscc
17 Primary Business: Queensland, Australia"""
18 __license__="""Licensed under the Open Software License version 3.0
19 http://www.opensource.org/licenses/osl-3.0.php"""
20 __url__="https://launchpad.net/escript-finley"
21
22 """
23 :var __author__: name of author
24 :var __copyright__: copyrights
25 :var __license__: licence agreement
26 :var __url__: url entry point on documentation
27 :var __version__: version
28 :var __date__: date of the version
29 """
30
31 __author__="John Ngui, john.ngui@uq.edu.au"
32
33
34 from esys.escript import getMPISizeWorld
35 if getMPISizeWorld()==1: import vtk
36
37 class Cutter:
38 """
39 Class that defines a cutter.
40 """
41
42 def __init__(self):
43 """
44 Initialise the cutter.
45 """
46 if getMPISizeWorld()>1:
47 raise ValueError,"pyvisi.Cutter is not running on more than one processor"
48 self.__vtk_cutter = vtk.vtkCutter()
49
50 def _setupCutter(self, object, plane):
51 """
52 Setup the cutter.
53
54 :type object: vtkUnstructuredGrid, etc
55 :param object: Input for the cutter
56 :type plane: vtkPlane
57 :param plane: Plane to cut the object
58 """
59
60 self.__object = object
61 self.__plane = plane
62
63 self.__setInput()
64 self.__setCutFunction()
65
66 def __setInput(self):
67 """
68 Set the input for the cutter.
69 """
70
71 self.__vtk_cutter.SetInput(self.__object)
72
73 def __setCutFunction(self):
74 """
75 Set the cut function (using a plane).
76 """
77
78 self.__vtk_cutter.SetCutFunction(self.__plane)
79
80 def _getCutterOutput(self):
81 """
82 Return the output of the cutter.
83
84 :rtype: vtkPolyData
85 :return: Polygonal data
86 """
87
88 return self.__vtk_cutter.GetOutput()

  ViewVC Help
Powered by ViewVC 1.1.26