diff options
| author | yo mama <pepper@scannerjammer.com> | 2015-03-07 20:44:30 -0800 |
|---|---|---|
| committer | yo mama <pepper@scannerjammer.com> | 2015-03-07 20:44:30 -0800 |
| commit | 193178ea8a038b183388999a2853433cf45a054c (patch) | |
| tree | 896294603a93ccef40af1aa50742e2b3b1a2a199 | |
| parent | 588d6bc9734af06c1dbdb4fd687c2e55ebc6fb3d (diff) | |
fixes
| -rw-r--r-- | Pb_Api/Param/NumberRange.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/Pb_Api/Param/NumberRange.py b/Pb_Api/Param/NumberRange.py new file mode 100644 index 0000000..fa11a29 --- /dev/null +++ b/Pb_Api/Param/NumberRange.py @@ -0,0 +1,17 @@ +from Pb_Api.Param.MultiSelect import Pb_Api_Param_MultiSelect +import random +class Pb_Api_Param_NumberRange(Pb_Api_Param_MultiSelect): + def __init__(self, **kwargs): + super(Pb_Api_Param_NumberRange, self).__init__(**kwargs) + self.range_min = kwargs['min'] + self.range_max = kwargs['max'] + def randomize(self): + weights_total = sum(map(lambda x: x["weight"], self.options()) + self.range_max - self.range_min + choice = random.randint(0, weights_total) + position = 0 + for elem in self.options(): + position += elem["weight"] + if position >= choice: + self.value = elem["value"] + return + self.value = random.randint(ANGLE_MIN,ANGLE_MAX), |
