def tuplize(arg): """returns arg if it is already a sequence, (arg,) otherwise""" return arg if isinstance(arg, collections.Sequence) else (arg,) if __name__ == "__main__": from PyQt4 import QtGui, QtCore import sys from superficie.Plot3D import Plot3D, RevolutionPlot3D, ParametricPlot3D, Mesh from superficie.Viewer import Viewer from math import sin app = QtGui.QApplication(sys.argv) Mesh.autoAdd = True viewer = Viewer() viewer.createChapter() class MiPlot3D(Plot3D): def __init__(self, *args, **kwargs): super(MiPlot3D, self).__init__(*args, **kwargs) def With(self, param_lst): print param_lst def setupParameter(self, param): self.addParameter(('v', 0, 1, 0)) ## ============================ d = self.getParametersValues() for quad in self.quads.values(): quad.function.updateGlobals(d) ## test the return value