annotate Nodes/gamma.py @ 24:548d3aa2660f

physics model fader!
author drewp
date Sun, 07 Jul 2002 08:04:56 +0000
parents 45b12307c695
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
45b12307c695 Initial revision
drewp
parents:
diff changeset
1 """node that performs a simple gamma (exp) function on its input"""
45b12307c695 Initial revision
drewp
parents:
diff changeset
2
45b12307c695 Initial revision
drewp
parents:
diff changeset
3 class GammaOps(Ops):
45b12307c695 Initial revision
drewp
parents:
diff changeset
4 def started(self, input, output, stateaccess):
45b12307c695 Initial revision
drewp
parents:
diff changeset
5 self.startmeup(stateaccess)
45b12307c695 Initial revision
drewp
parents:
diff changeset
6 def changed(self, input, output, stateaccess):
45b12307c695 Initial revision
drewp
parents:
diff changeset
7 port.output = port.input ** stateaccess.gamma + stateaccess.offset
45b12307c695 Initial revision
drewp
parents:
diff changeset
8 stateaccess.lastvalue = State.FloatingPoint(port.input)
45b12307c695 Initial revision
drewp
parents:
diff changeset
9
45b12307c695 Initial revision
drewp
parents:
diff changeset
10 output = gamma(input)
45b12307c695 Initial revision
drewp
parents:
diff changeset
11 # no timed function
45b12307c695 Initial revision
drewp
parents:
diff changeset
12 def startmeup(self, stateaccess):
45b12307c695 Initial revision
drewp
parents:
diff changeset
13 # whatever
45b12307c695 Initial revision
drewp
parents:
diff changeset
14 pass
45b12307c695 Initial revision
drewp
parents:
diff changeset
15
45b12307c695 Initial revision
drewp
parents:
diff changeset
16 class Gamma(Node):
45b12307c695 Initial revision
drewp
parents:
diff changeset
17 def __init__(self):
45b12307c695 Initial revision
drewp
parents:
diff changeset
18 Node.__init__(self)
45b12307c695 Initial revision
drewp
parents:
diff changeset
19 self.node_params = {'gamma':State.FloatingPoint,'offset':State.FloatingPoint}
45b12307c695 Initial revision
drewp
parents:
diff changeset
20 self.ops = GammaOps()
45b12307c695 Initial revision
drewp
parents:
diff changeset
21
45b12307c695 Initial revision
drewp
parents:
diff changeset
22 def getnodeparams(self):
45b12307c695 Initial revision
drewp
parents:
diff changeset
23 return self.node_params
45b12307c695 Initial revision
drewp
parents:
diff changeset
24
45b12307c695 Initial revision
drewp
parents:
diff changeset
25 def getports(self):
45b12307c695 Initial revision
drewp
parents:
diff changeset
26 return (Port('a', optional=1),
45b12307c695 Initial revision
drewp
parents:
diff changeset
27 Port('b'))
45b12307c695 Initial revision
drewp
parents:
diff changeset
28
45b12307c695 Initial revision
drewp
parents:
diff changeset
29 def __str__(self):
45b12307c695 Initial revision
drewp
parents:
diff changeset
30 return "3"
45b12307c695 Initial revision
drewp
parents:
diff changeset
31
45b12307c695 Initial revision
drewp
parents:
diff changeset
32 world.register_node(Gamma)