View Single Post
  #4  
Old 09-05-2012, 02:12 PM
farshizzo farshizzo is offline
WorldViz Team Member
 
Join Date: Mar 2003
Posts: 2,849
The node.copy command will pass all extra keyword arguments to the class __init__ method. You can override the copy method in your class and have it pass all the required arguments as keyword arguments to the underlying node.copy method. Example:
Code:
import viz
viz.go()

class MyNode(viz.VizNode):

	def __init__(self, model, parameter):

		if isinstance(model,basestring):
			base = viz.add(model)
			viz.VizNode.__init__(self, base.id)

		elif isinstance(model, viz.VizNode):
			viz.VizNode.__init__(self, model.id)

		elif isinstance(model, int):
			viz.VizNode.__init__(self, model)

		self._parameter = parameter

	def copy(self, parameter):
		return viz.VizNode.copy(self,parameter=parameter)

node = MyNode('gallery.osgb',0)
nodeCopy = node.copy(1)
Does this work for you scenario?
Reply With Quote