MCPcopy Create free account
hub / github.com/csaez/mscreen / Emitter

Class Emitter

tests/test_stress.py:49–79  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

47
48
49class Emitter(object):
50 def __init__(self):
51 super(Emitter, self).__init__()
52 self.rate = 20
53 self.position = om2.MVector()
54 self._initialVelocity = om2.MVector(0, 1, 0)
55 self._randomize = False
56
57 @property
58 def initialVelocity(self):
59 if self._randomize:
60 return self._randomizeVelocity()
61 return self._initialVelocity
62
63 @initialVelocity.setter
64 def initialVelocity(self, value):
65 self._initialVelocity = value
66
67 def randomizeVelocity(self, minimum=(-0.1, -0.1, -0.1),
68 maximum=(0.1, 0.1, 0.1)):
69 self._randomMinimum = om2.MVector(minimum)
70 self._randomMaximum = om2.MVector(maximum)
71 self._randomize = True
72
73 def _randomizeVelocity(self):
74 v = om2.MVector()
75 for i in range(3):
76 factor = random.random() * 2
77 v[i] = self._randomMinimum[i] + (factor * self._randomMaximum[i])
78 v += self._initialVelocity
79 return v
80
81
82class ParticleSystem(object):

Callers 1

test_stress.pyFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected