diff options
| -rw-r--r-- | Pb_Api/ImBreak/Params.py | 58 | ||||
| -rw-r--r-- | Pb_Api/ImBreak/__init__.py | 13 | ||||
| -rw-r--r-- | Pb_Api/ImGradient/Params.py | 45 | ||||
| -rw-r--r-- | Pb_Api/ImGradient/__init__.py | 13 | ||||
| -rw-r--r-- | Pb_Api/ImGradient/options.py | 83 | ||||
| -rw-r--r-- | Pb_Api/ImGrid/Params.py | 111 | ||||
| -rw-r--r-- | Pb_Api/ImGrid/__init__.py | 13 | ||||
| -rwxr-xr-x | Pb_Api/ImGrid/options.py | 64 | ||||
| -rw-r--r-- | Pb_Api/ImPattern/Params.py | 34 | ||||
| -rwxr-xr-x | Pb_Api/ImPattern/__init__.py | 13 | ||||
| -rw-r--r-- | Pb_Api/Param/Color.py | 30 | ||||
| -rw-r--r-- | Pb_Api/Param/Image_Url.py | 7 | ||||
| -rw-r--r-- | Pb_Api/Param/MultiSelect.py | 56 | ||||
| -rw-r--r-- | Pb_Api/Param/NumberRange.py | 27 | ||||
| -rw-r--r-- | Pb_Api/Param/Option.py | 9 | ||||
| -rw-r--r-- | Pb_Api/Param/Options.py | 21 | ||||
| -rw-r--r-- | Pb_Api/Param/String.py | 4 | ||||
| -rw-r--r-- | Pb_Api/Param/Username.py | 7 | ||||
| -rw-r--r-- | Pb_Api/Param/__init__.py | 38 | ||||
| -rw-r--r-- | Pb_Api/Params.py | 41 | ||||
| -rw-r--r-- | Pb_Api/__init__.py | 29 | ||||
| -rw-r--r-- | config.py | 7 | ||||
| -rwxr-xr-x | test.py | 36 |
23 files changed, 0 insertions, 759 deletions
diff --git a/Pb_Api/ImBreak/Params.py b/Pb_Api/ImBreak/Params.py deleted file mode 100644 index 7d15476..0000000 --- a/Pb_Api/ImBreak/Params.py +++ /dev/null @@ -1,58 +0,0 @@ -import re, random -from Pb_Api.Params import Pb_Api_Params -from Pb_Api.Param import Pb_Api_Param -from Pb_Api.Param.Option import Pb_Api_Param_Option -from Pb_Api.Param.Options import Pb_Api_Param_Options -from Pb_Api.Param.Username import Pb_Api_Param_Username -from Pb_Api.Param.Image_Url import Pb_Api_Param_Image_Url -from Pb_Api.Param.MultiSelect import Pb_Api_Param_MultiSelect -from Pb_Api.Param.NumberRange import Pb_Api_Param_NumberRange -from Pb_Api.Param.Color import Pb_Api_Param_Color -from config import PATTERN_BASE_URL - - -breaktype_options = Pb_Api_Param_Options.from_dict( - {"value":"CLASSIC", "weight": 1}, - {"value":"REDUX", "weight": 1}, - {"value":"BLURRY_BREAK", "weight": 1}, - {"value":"BLURRY_BREAK_2", "weight": 1}, - {"value":"SWIPE", "weight": 1}, - {"value":"RGB_WASH", "weight": 1}, - {"value":"RGB_WASH_2", "weight": 1}, - {"value":"NOISY_BREAK", "weight": 1}, - {"value":"BROKEN_VIGNETTE", "weight": 1}, - {"value":"FAX_MACHINE", "weight": 1}, - {"value":"STRIPES", "weight": 1}, - {"value":"PHOTOCOPY", "weight": 1}, -) -breakmode_options = Pb_Api_Param_Options.from_dict( - {"value":"extreme", "weight": 1}, - {"value":"subtle", "weight": 1}, -) -finalformat_options = Pb_Api_Param_Options.from_dict( - {"value":"png", "weight": 5}, - {"value":"jpg", "weight": 2}, - {"value":"gif", "weight": 2}, -) -breakangle_options = Pb_Api_Param_Options.from_dict( - {"value":0, "weight": 9}, - {"value":90, "weight": 2}, - {"value":-180, "weight": 2}, - {"value":180, "weight": 2}, -) -expanded_options = Pb_Api_Param_Options.from_dict( - {"value": "" , "weight": 11 }, - {"value": 1, "weight": 2} -) - -class ImBreak_Params(Pb_Api_Params): - def __init__(self): - self.params = [ - Pb_Api_Param_Username(name="username", required=0), - Pb_Api_Param_Image_Url(name="url", required=1), - Pb_Api_Param_MultiSelect(name="finalformat", required=0, options=finalformat_options), - Pb_Api_Param_MultiSelect(name="breaktype", required=1, options=breaktype_options), - Pb_Api_Param_NumberRange(name="breakangle", required=0, options=breakangle_options, min=-180, max=180), - Pb_Api_Param_MultiSelect(name="breakmode", required=1, options=breakmode_options), - Pb_Api_Param_MultiSelect(name="expanded", required=0, options=expanded_options), - ] diff --git a/Pb_Api/ImBreak/__init__.py b/Pb_Api/ImBreak/__init__.py deleted file mode 100644 index 7836f2e..0000000 --- a/Pb_Api/ImBreak/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/python2.7 -from Pb_Api import Pb_Api -from Pb_Api.ImBreak.Params import ImBreak_Params -from config import IMBREAK_URL - -class Pb_Api_ImBreak(Pb_Api): - def __init__(self): - self.url = IMBREAK_URL - def params_init(self): - new_params = ImBreak_Params() - #new_params = self.get_from_server() - new_params.api = self - return new_params diff --git a/Pb_Api/ImGradient/Params.py b/Pb_Api/ImGradient/Params.py deleted file mode 100644 index 10d98d5..0000000 --- a/Pb_Api/ImGradient/Params.py +++ /dev/null @@ -1,45 +0,0 @@ -import re, random -from Pb_Api.Params import Pb_Api_Params -from Pb_Api.Param import Pb_Api_Param -from Pb_Api.Param.Option import Pb_Api_Param_Option -from Pb_Api.Param.Options import Pb_Api_Param_Options -from Pb_Api.Param.Username import Pb_Api_Param_Username -from Pb_Api.Param.Image_Url import Pb_Api_Param_Image_Url -from Pb_Api.Param.MultiSelect import Pb_Api_Param_MultiSelect -from Pb_Api.Param.NumberRange import Pb_Api_Param_NumberRange -from Pb_Api.Param.Color import Pb_Api_Param_Color - -from Pb_Api.ImGradient.options import * - - - -class ImGradient_Params(Pb_Api_Params): - def __init__(self): - self.params = [ - Pb_Api_Param_Username(name="username", required=0), - Pb_Api_Param_NumberRange(name="width", required=1, options=width_options, min=100, max=800), - Pb_Api_Param_NumberRange(name="height", required=1, options=height_options, min=100, max=800), - Pb_Api_Param_Color(name="color1", required=1, options=color1_options), - Pb_Api_Param_Color(name="color2", required=1, options=color2_options), - Pb_Api_Param_MultiSelect(name="filetype", required=0, options=filetype_options), - Pb_Api_Param_MultiSelect(name="gradienttype", required=1, options=gradienttype_options), - Pb_Api_Param_MultiSelect(name="halftone", required=0, options=halftone_options), - Pb_Api_Param_MultiSelect(name="bevel", required=0, options=bevel_options), - - Pb_Api_Param_NumberRange(name="stripenumber", required=0, options=stripenumber_options, min=0, max=400), - Pb_Api_Param_NumberRange(name="stripeintensity", required=0, options=stripeintensity_options, min=0, max=5000), - - Pb_Api_Param_NumberRange(name="blurriness", required=0, options=blurriness_options, min=0, max=200), -# Pb_Api_Param_NumberRange(name="contrast", required=0, options=contrast_options, min=0, max=200), - Pb_Api_Param_NumberRange(name="brightness", required=0, options=brightness_options, min=0, max=200), - Pb_Api_Param_NumberRange(name="saturation", required=0, options=saturation_options, min=0, max=200), - Pb_Api_Param_NumberRange(name="hue", required=0, options=hue_options, min=0, max=200), - - Pb_Api_Param_NumberRange(name="percentbeveled", required=0, options=percentbeveled_options, min=0, max=100), - Pb_Api_Param_NumberRange(name="rotate", required=0, options=rotate_options, min=0, max=360), - Pb_Api_Param_NumberRange(name="tilt", required=0, options=tilt_options, min=0, max=360), - - - Pb_Api_Param_MultiSelect(name="flop", required=0, options=flop_options), - Pb_Api_Param_MultiSelect(name="flip", required=0, options=flip_options), - ] diff --git a/Pb_Api/ImGradient/__init__.py b/Pb_Api/ImGradient/__init__.py deleted file mode 100644 index 1f90bbe..0000000 --- a/Pb_Api/ImGradient/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/python2.7 -from Pb_Api import Pb_Api -from Pb_Api.ImGradient.Params import ImGradient_Params -from config import IMGRADIENT_URL - -class Pb_Api_ImGradient(Pb_Api): - def __init__(self): - self.url = IMGRADIENT_URL - def params_init(self): - new_params = ImGradient_Params() - #new_params = self.get_from_server() - new_params.api = self - return new_params diff --git a/Pb_Api/ImGradient/options.py b/Pb_Api/ImGradient/options.py deleted file mode 100644 index a6ad88c..0000000 --- a/Pb_Api/ImGradient/options.py +++ /dev/null @@ -1,83 +0,0 @@ -from Pb_Api.Param.Options import Pb_Api_Param_Options -width_options = Pb_Api_Param_Options.from_dict( - { "value" : 400, "weight" : 1 }, - { "value" : 600, "weight" : 1 }, -) -height_options = Pb_Api_Param_Options.from_dict( - { "value" : 400, "weight" : 1 }, - { "value" : 600, "weight" : 1 }, -) -color1_options = Pb_Api_Param_Options.from_dict( - { "value" : "black", "weight" : 1 }, - { "value" : "white", "weight" : 2 }, -) -color2_options = Pb_Api_Param_Options.from_dict( - { "value" : "black", "weight" : 2 }, - { "value" : "white", "weight" : 1 }, -) -stripes_options = Pb_Api_Param_Options.from_dict( - {"value":"true", "weight": 1}, - {"value":"false", "weight": 1}, -) -stripenumber_options = Pb_Api_Param_Options.from_dict( - {"value":1, "weight": 50}, - {"value":2, "weight": 50}, -) -# contrast_options = \ -stripeintensity_options = \ - brightness_options = \ - saturation_options = \ - hue_options = \ - Pb_Api_Param_Options.from_dict( - {"value": "", "weight": 300}, -) -halftone_options = Pb_Api_Param_Options.from_dict( - { "value" : "checkeredfade", "weight": 1 }, - { "value" : "etchedtransition", "weight": 1 }, - { "value" : "bendaydots", "weight": 1 }, - { "value" : "smallerdots1", "weight": 1 }, - { "value" : "smallerdots2", "weight": 1 }, - { "value" : "flatstripes", "weight": 1 }, -) -bevel_options = Pb_Api_Param_Options.from_dict( - { "value" : "", "weight" : 4 }, - { "value" : "flatout", "weight" : 1 }, - { "value" : "flatinner", "weight" : 1 }, - { "value" : "evenlyframed", "weight" : 1 }, - { "value" : "biginner", "weight" : 1 }, - { "value" : "bigouter", "weight" : 1 }, - { "value" : "dramaticflatout", "weight" : 1 }, - { "value" : "dramaticflatinner", "weight" : 1 }, -) - -blurriness_options = \ - percentbeveled_options = Pb_Api_Param_Options.from_dict( - { "value" : "", "weight": 4 }, -) -rotate_options = \ - tilt_options = Pb_Api_Param_Options.from_dict( - {"value":"", "weight": 9}, - {"value":90, "weight": 2}, - {"value":180, "weight": 2}, - {"value":270, "weight": 2}, -) -flop_options = flip_options = Pb_Api_Param_Options.from_dict( - {"value":"", "weight": 1}, - {"value":"true", "weight": 1}, -) - -filetype_options = Pb_Api_Param_Options.from_dict( - {"value":"png", "weight": 5}, - {"value":"jpg", "weight": 2}, - {"value":"gif", "weight": 2}, -) -gradienttype_options = Pb_Api_Param_Options.from_dict( - { "value" : "canvas", "weight" : 1 }, - { "value" : "gradient", "weight" : 3 }, - { "value" : "radial", "weight" : 1 }, - { "value" : "colorspace", "weight" : 1 }, - { "value" : "plasmawash", "weight" : 1 }, - { "value" : "gradientwash", "weight" : 1 }, - { "value" : "mirrored", "weight" : 1 }, - { "value" : "noise", "weight" : 1 }, -) diff --git a/Pb_Api/ImGrid/Params.py b/Pb_Api/ImGrid/Params.py deleted file mode 100644 index c469b6a..0000000 --- a/Pb_Api/ImGrid/Params.py +++ /dev/null @@ -1,111 +0,0 @@ -import re, random -from Pb_Api.Params import Pb_Api_Params -from Pb_Api.Param import Pb_Api_Param -from Pb_Api.Param.Option import Pb_Api_Param_Option -from Pb_Api.Param.Options import Pb_Api_Param_Options -from Pb_Api.Param.Username import Pb_Api_Param_Username -from Pb_Api.Param.Image_Url import Pb_Api_Param_Image_Url -from Pb_Api.Param.MultiSelect import Pb_Api_Param_MultiSelect -from Pb_Api.Param.NumberRange import Pb_Api_Param_NumberRange -from Pb_Api.Param.Color import Pb_Api_Param_Color - -from Pb_Api.ImGrid.options import * - -class Param_Zoom(Pb_Api_Param_NumberRange): - def __init__(self, **kwargs): - super(Param_Zoom, self).__init__(**kwargs) - self.exclusion_range = kwargs['exclusion_range'] - def test_value(self): - return not ((self.value > self.exclusion_range[0]) and (self.value < self.exclusion_range[1])) - def randomize(self): - weights_total = sum(map(lambda x: x["weight"], self.options())) + 10 - choice = random.randint(0, weights_total) - position = 0 - for elem in self.options(): - position += elem["weight"] - if position >= choice: - self.value = elem["value"] - return - max_tries = 10000 - while(max_tries): - self.value = round(random.uniform(self.range_max, self.range_min), 2) - if self.test_value: return - max_tries -= 1; - raise ValueError - - @property - def value(self): - return super(Pb_Api_Param_MultiSelect, self).get_value() - @value.setter - def value(self, value): - self._value = value - if not self._value is None: - self.is_ready = 1 - self.set_by_user = 1 - -class Param_Opacity(Pb_Api_Param_NumberRange): - def __init__(self, **kwargs): - super(Param_Opacity, self).__init__(**kwargs) - 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 = round(random.uniform(self.range_min,range_max), 2), - -class ImGrid_Params(Pb_Api_Params): - def __init__(self): - self.params = [ - Pb_Api_Param_Username(name="username", required=0), - Pb_Api_Param_Image_Url(name="bgimage", required=0), - Pb_Api_Param_Image_Url(name="imageinstead", required=0), - Pb_Api_Param_Image_Url(name="planebgimage", required=0), - Pb_Api_Param_MultiSelect(name="format", required=0, options=format_options), - Pb_Api_Param_MultiSelect(name="transition", required=1, options=transition_options), - Pb_Api_Param_Color(name="skycolor", required=0, options=skycolor_colors), - Pb_Api_Param_Color(name="planebgcolor", required=0, options=planebgcolor_colors), - Pb_Api_Param_Color(name="bgcolor", required=0, options=bgcolor_colors), - Pb_Api_Param_Color(name="linecolor", required=0, options=linecolor_colors), - Pb_Api_Param_NumberRange(name="swing", required=0, options=swing_options, min=-170, max=170), - Pb_Api_Param_NumberRange(name="tilt", required=0, options=tilt_options, min=-170, max=170), - Pb_Api_Param_NumberRange(name="roll", required=0, options=roll_options, min=-170, max=170), - Pb_Api_Param_NumberRange(name="width", required=0, options=width_options, min=100, max=800), - Pb_Api_Param_NumberRange(name="height", required=0, options=height_options, min=100, max=800), - Pb_Api_Param_NumberRange(name="linethickness", required=0, options=linethickness_options, min=1, max=30), - Pb_Api_Param_NumberRange(name="opacity", required=0, options=opacity_options, min=0, max=1), - Pb_Api_Param_NumberRange(name="spacing", required=0, options=spacing_options, min=2, max=100), - Pb_Api_Param_MultiSelect(name="vlines", required=0, options=vlines_options), - Pb_Api_Param_MultiSelect(name="hlines", required=0, options=hlines_options), - Pb_Api_Param_MultiSelect(name="trim", required=0, options=trim_options), - Pb_Api_Param_MultiSelect(name="shadow", required=0, options=shadow_options), - Param_Zoom(name="zoom", required=0, options=zoom_options, min=-12, max=12, exclusion_range=[-1.1, 1.1]), - ] - def test_values(self): - p = self.params - return not any([ - (self.param('spacing').value > self.param('width').value), - (self.param('spacing').value > self.param('height').value), - (self.param('linethickness').value > self.param('width').value), - (self.param('linethickness').value > self.param('height').value), - ]) - def randomize(self): - p = self.params - for el in p: - if el in ['spacing', 'linethickness']: - continue - if el.set_by_user: - continue - el.randomize() - for name in ['spacing', 'linethickness']: - max_tries = 10000 - while(max_tries): - self.param(name).randomize() - if self.test_values(): - return - max_tries -= 1 - raise ValueError - diff --git a/Pb_Api/ImGrid/__init__.py b/Pb_Api/ImGrid/__init__.py deleted file mode 100644 index 553c04c..0000000 --- a/Pb_Api/ImGrid/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/python2.7 -from Pb_Api import Pb_Api -from Pb_Api.ImGrid.Params import ImGrid_Params -from config import IMGRID_URL - -class Pb_Api_ImGrid(Pb_Api): - def __init__(self): - self.url = IMGRID_URL - def params_init(self): - new_params = ImGrid_Params() - #new_params = self.get_from_server() - new_params.api = self - return new_params diff --git a/Pb_Api/ImGrid/options.py b/Pb_Api/ImGrid/options.py deleted file mode 100755 index 387a489..0000000 --- a/Pb_Api/ImGrid/options.py +++ /dev/null @@ -1,64 +0,0 @@ -from Pb_Api.Param.Options import Pb_Api_Param_Options -format_options = Pb_Api_Param_Options.from_dict( - { 'weight': 20, 'value': 'png' }, - { 'weight': 0, 'value': 'gif' }, - { 'weight': 0, 'value': 'jpg' }, -) -transition_options = Pb_Api_Param_Options.from_dict( - { "value" : "background", "weight": 1 }, - { "value" : "dither", "weight": 1 }, - { "value" : "random", "weight": 1 }, - { "value" : "tile", "weight": 1 }, - { "value" : "edge", "weight": 1 }, -) -skycolor_colors = \ - bgcolor_colors = planebgcolor_colors = Pb_Api_Param_Options.from_dict( - { "value" : "white", "weight" : 1 }, - { "value" : "silver", "weight" : 1 }, - { "value" : None, "weight" : 10 }, -) - -linecolor_colors = Pb_Api_Param_Options.from_dict( - { "value" : "black", "weight" : 1 }, - { "value" : "white", "weight" : 1 }, - { "value" : "silver", "weight" : 1 }, -) -swing_options = tilt_options = roll_options = Pb_Api_Param_Options.from_dict( - {"value": "", "weight": 2}, - {"value": 30, "weight": 1}, - {"value": -30, "weight": 1}, -) -width_options = height_options = Pb_Api_Param_Options.from_dict( - { "value" : 400, "weight" : 1 }, - { "value" : 600, "weight" : 1 }, -) -linethickness_options = Pb_Api_Param_Options.from_dict( - {"value":1, "weight": 2}, - {"value":2, "weight": 1}, -) -opacity_options = Pb_Api_Param_Options.from_dict( - {"value":1, "weight": 2}, - {"value":0.5, "weight": 1}, -) -spacing_options = Pb_Api_Param_Options.from_dict( - {"value":10, "weight": 1}, - {"value":15, "weight": 1}, -) -vlines_options = hlines_options = Pb_Api_Param_Options.from_dict( - {"value":"", "weight": 2}, - {"value":"true", "weight": 1}, -) -shadow_options = Pb_Api_Param_Options.from_dict( - {"value":"", "weight": 1}, - {"value":"true", "weight": 1}, -) -zoom_options = Pb_Api_Param_Options.from_dict( - {"value": 0, "weight": 3}, - {"value": 1.2, "weight": 1}, - {"value": -1.2, "weight": 1}, -) -trim_options = Pb_Api_Param_Options.from_dict( - {"value":"", "weight": 1}, - {"value":"true", "weight": 1}, -) - diff --git a/Pb_Api/ImPattern/Params.py b/Pb_Api/ImPattern/Params.py deleted file mode 100644 index 5c12083..0000000 --- a/Pb_Api/ImPattern/Params.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/python2.7 -import re -from Pb_Api.Params import Pb_Api_Params -from Pb_Api.Param import Pb_Api_Param -from Pb_Api.Param.Option import Pb_Api_Param_Option -from Pb_Api.Param.Options import Pb_Api_Param_Options -from Pb_Api.Param.Username import Pb_Api_Param_Username -from Pb_Api.Param.Image_Url import Pb_Api_Param_Image_Url -from Pb_Api.Param.MultiSelect import Pb_Api_Param_MultiSelect - -from config import PATTERN_BASE_URL - -class Pattern_Url_Option(Pb_Api_Param_Option): - def __init__(self, **kwargs): - super(Pb_Api_Param_Option, self).__init__(**kwargs) - @classmethod - def from_name(cls, **kwargs): - formatted = "{}/{}.png".format(PATTERN_BASE_URL, kwargs["value"]) - return cls(weight=kwargs["weight"], value=formatted ) - -class ImPattern_Params(Pb_Api_Params): - def __init__(self): - self.params = [ - Pb_Api_Param_Username(name="username", required=0), - Pb_Api_Param_Image_Url(name="image_url", required=1), - Pb_Api_Param_MultiSelect(name="pattern_url", required=1, options=pattern_url_options) - ] - -pattern_url_options = Pb_Api_Param_Options(*[ - Pattern_Url_Option.from_name(weight=0, value=i) for i in range(1,100) ] + [ - Pattern_Url_Option.from_name(weight=0, value="a{}".format(i)) for i in range(0, 42) -]) - -pattern_url_options.search("a10").weight = 20; diff --git a/Pb_Api/ImPattern/__init__.py b/Pb_Api/ImPattern/__init__.py deleted file mode 100755 index b81af58..0000000 --- a/Pb_Api/ImPattern/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/python2.7 -from Pb_Api import Pb_Api -from Pb_Api.ImPattern.Params import ImPattern_Params -from config import IMPATTERN_URL - -class Pb_Api_ImPattern(Pb_Api): - def __init__(self): - self.url = IMPATTERN_URL - def params_init(self): - new_params = ImPattern_Params() - #new_params = self.get_from_server() - new_params.api = self - return new_params diff --git a/Pb_Api/Param/Color.py b/Pb_Api/Param/Color.py deleted file mode 100644 index 678a087..0000000 --- a/Pb_Api/Param/Color.py +++ /dev/null @@ -1,30 +0,0 @@ -from Pb_Api.Param.MultiSelect import Pb_Api_Param_MultiSelect -import random -class Pb_Api_Param_Color(Pb_Api_Param_MultiSelect): - def __init__(self, **kwargs): - super(Pb_Api_Param_Color, self).__init__(**kwargs) - - @classmethod - def from_rgb(cls, r,g,b): - return cls(value="rgb({},{},{})".format(r,g,b)) - - @property - def value(self): - return super(Pb_Api_Param_MultiSelect, self).get_value() - @value.setter - def value(self, value): - self._value = value - if not self._value is None: - self.is_ready = 1 - self.set_by_user = 1 - - def randomize(self): - weights_total = sum(map(lambda x: x["weight"], self.options())) + (255 * 255 * 255) - 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 = "rgb({},{},{})".format( random.randint(0,255), random.randint(0,255), random.randint(0,255)) diff --git a/Pb_Api/Param/Image_Url.py b/Pb_Api/Param/Image_Url.py deleted file mode 100644 index bd22513..0000000 --- a/Pb_Api/Param/Image_Url.py +++ /dev/null @@ -1,7 +0,0 @@ -from config import TEST_URL -from Pb_Api.Param.String import Pb_Api_Param_String - -class Pb_Api_Param_Image_Url(Pb_Api_Param_String): - def __init__(self, *args, **kwargs): - super(Pb_Api_Param_Image_Url, self).__init__(*args, **kwargs) - self.default(TEST_URL) diff --git a/Pb_Api/Param/MultiSelect.py b/Pb_Api/Param/MultiSelect.py deleted file mode 100644 index 3761302..0000000 --- a/Pb_Api/Param/MultiSelect.py +++ /dev/null @@ -1,56 +0,0 @@ -import random -from Pb_Api.Param import Pb_Api_Param - -class Pb_Api_Param_MultiSelect(Pb_Api_Param): - def __init__(self, **kwargs): - self._options = [] - if 'options' in kwargs: self._options = kwargs['options'] or [] - super(Pb_Api_Param_MultiSelect, self).__init__(**kwargs) - if len(self._options): - self._validate_options() - self.default(self._choose_heaviest()) - - - def options(self): - return self._options - def _validate_options(self): - try: - int(self._options[0]['weight']) - self._options[0]['value'] - except Exception as e: - raise ValueError - - def get_value(self): - return super(Pb_Api_Param_MultiSelect, self).get_value() - def set_value(self, value): - if not any([ value == i['value'] for i in self._options ]) and value != None: - raise ValueError - super(Pb_Api_Param_MultiSelect, self).set_value(value) - value = property(get_value, set_value) - - - def randomize(self): - weights_total = sum(map(lambda x: x["weight"], self.options())) - choice = random.randint(0, weights_total) - position = 0 - for elem in self.options(): - position += elem["weight"] - if position >= choice: - self.value = elem["value"] - break - - def _choose_heaviest(self): - heaviest_idx = 0 - heaviest_weight = 0 - idx = 0 - if (len(self.options())): - for elem in self.options(): - if elem["weight"] > heaviest_weight: - heaviest_weight = elem["weight"] - heaviest_idx = idx; - idx += 1 - return self.options()[heaviest_idx]["value"] - else: - self.randomize() - def heaviest(self): - self.value = self._choose_heaviest() diff --git a/Pb_Api/Param/NumberRange.py b/Pb_Api/Param/NumberRange.py deleted file mode 100644 index fe1ece6..0000000 --- a/Pb_Api/Param/NumberRange.py +++ /dev/null @@ -1,27 +0,0 @@ -import sys -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(self.range_min,self.range_max) - @property - def value(self): - return super(Pb_Api_Param_MultiSelect, self).get_value() - @value.setter - def value(self, value): - self._value = value - if not self._value is None: - self.is_ready = 1 - self.set_by_user = 1 diff --git a/Pb_Api/Param/Option.py b/Pb_Api/Param/Option.py deleted file mode 100644 index 2a345e7..0000000 --- a/Pb_Api/Param/Option.py +++ /dev/null @@ -1,9 +0,0 @@ -class Pb_Api_Param_Option(dict): - def __init__(self, **kwargs): - super(Pb_Api_Param_Option, self).__init__(**kwargs) - self.value = kwargs["value"] - self.weight = kwargs["weight"] - def __getattr__(self, attr): - return self.get(attr) - __setattr__= dict.__setitem__ - __delattr__= dict.__delitem__ diff --git a/Pb_Api/Param/Options.py b/Pb_Api/Param/Options.py deleted file mode 100644 index ebc6fc9..0000000 --- a/Pb_Api/Param/Options.py +++ /dev/null @@ -1,21 +0,0 @@ -from Pb_Api.Param.Option import Pb_Api_Param_Option -import sys -class Pb_Api_Param_Options: - def __init__(self, *args): - self._values = args - def __iter__(self): - return iter(self._values) - def __len__(self): - return len(self._values) - def __str__(self): - return str(self._values) - def __getitem__(self, i): - return self._values[i] - def search(self, s): - for i in self: - if str(s) in i.value: - return i - @classmethod - def from_dict(cls, *args): - options = map(lambda x: Pb_Api_Param_Option(**x), args); - return cls(*options); diff --git a/Pb_Api/Param/String.py b/Pb_Api/Param/String.py deleted file mode 100644 index 3c186f4..0000000 --- a/Pb_Api/Param/String.py +++ /dev/null @@ -1,4 +0,0 @@ -from Pb_Api.Param import Pb_Api_Param -class Pb_Api_Param_String(Pb_Api_Param): - def __init__(self, **kwargs): - super(Pb_Api_Param_String, self).__init__(**kwargs) diff --git a/Pb_Api/Param/Username.py b/Pb_Api/Param/Username.py deleted file mode 100644 index 5bd3237..0000000 --- a/Pb_Api/Param/Username.py +++ /dev/null @@ -1,7 +0,0 @@ -from config import USERNAME -from Pb_Api.Param.String import Pb_Api_Param_String - -class Pb_Api_Param_Username(Pb_Api_Param_String): - def __init__(self, **kwargs): - super(Pb_Api_Param_Username, self).__init__(**kwargs) - self.default(USERNAME) diff --git a/Pb_Api/Param/__init__.py b/Pb_Api/Param/__init__.py deleted file mode 100644 index 58b3eb0..0000000 --- a/Pb_Api/Param/__init__.py +++ /dev/null @@ -1,38 +0,0 @@ -import pprint - -class Pb_Api_Param(object): -# def __init__(self, **kwargs): - def __init__(self, required=0, set_by_user=0, value=None, name=None, **kwargs): - self._value_default = None - self.name = name - self.required = required - self.is_ready = 0 - self.value = value - self.set_by_user = set_by_user - def __str__(self): - return pprint.pformat(vars(self)) - - def get_value(self): - if self.set_by_user == 1: - return self._value - return self._value_default - def set_value(self, value): - self._value = value - if not self._value is None: - self.is_ready = 1 - self.set_by_user = 1 - value = property(get_value, set_value) - - def default(self, value): - self._value_default = value - - @property - def is_ready(self): - return self._is_ready or not self.required - @is_ready.setter - def is_ready(self, n): - self._is_ready = n - - - def randomize(self): - pass diff --git a/Pb_Api/Params.py b/Pb_Api/Params.py deleted file mode 100644 index 4fcc113..0000000 --- a/Pb_Api/Params.py +++ /dev/null @@ -1,41 +0,0 @@ -import sys -import pprint -class Pb_Api_Params(object): - def __init__(self): - self._api = None - def param(self, name): - for p in self.params: - if p.name == name: - return p - return None - def __str__(self): - return pprint.pformat({ "params": map(lambda x: vars(x), self.params) }) - - - def randomize(self): - for el in self.params: - if el.set_by_user: - continue - el.randomize() - - @property - def api(self): - return self._api - @api.setter - def api(self, cls): - self._api = cls - - def execute(self): - return self.api.call(self) - - def is_ready(self): - for p in self.params: - if not p.is_ready and not p.default: - sys.stderr.write("param not ready: {}".format(p)) - return 0 - return 1 - def as_hash(self): - result = {} - for p in self.params: - result[p.name] = p.value - return result diff --git a/Pb_Api/__init__.py b/Pb_Api/__init__.py deleted file mode 100644 index bc18524..0000000 --- a/Pb_Api/__init__.py +++ /dev/null @@ -1,29 +0,0 @@ -import urllib -import urllib2 -import sys -import random -import simplejson as json -import urllib2 - -class Pb_Api: - def __init__(self): - self._required_keys = [] - self.url = "" - def post_request(self, url, params): - params = urllib.urlencode(params) - headers = { - "Content-type": "application/x-www-form-urlencoded", - "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.94 Safari/537.36", - "Accept": "text/plain" - } - try: - req = urllib2.Request(url, params, headers) - response = urllib2.urlopen(req) - return response.read() - except Exception as e: - sys.stderr.write(str(e)) - raise - def call(self, params): - if not(params.is_ready()): - raise Exception( "Api Params Not Ready") - return json.loads(self.post_request(self.url, params.as_hash())) diff --git a/config.py b/config.py deleted file mode 100644 index d4ebb23..0000000 --- a/config.py +++ /dev/null @@ -1,7 +0,0 @@ -USERNAME = "RICHARD_GIOVANNI" -TEST_URL = "http://i.asdf.us/im/fc/imBreak5qI6DN2_1425433157_.png" -PATTERN_BASE_URL = "http://asdf.us/impattern/patterns" -IMPATTERN_URL = "http://asdf.us/im/api/impattern" -IMGRID_URL = "http://asdf.us/im/api/imgrid" -IMGRADIENT_URL = "http://asdf.us/im/api/imgradient" -IMBREAK_URL = "http://asdf.us/im/api/imbreak" diff --git a/test.py b/test.py deleted file mode 100755 index eab9512..0000000 --- a/test.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/python2.7 -from Pb_Api.ImPattern import Pb_Api_ImPattern -from Pb_Api.ImGrid import Pb_Api_ImGrid -from Pb_Api.ImBreak import Pb_Api_ImBreak -from Pb_Api.ImGradient import Pb_Api_ImGradient -import pprint - -#api = Pb_Api_ImPattern() -#params = api.params_init() -#params.randomize() -#print params.as_hash() -#req = params.execute() -#print req - -#api = Pb_Api_ImGrid() -#params = api.params_init() -#params.randomize() -#print params.as_hash() -#req = params.execute() -#print req - - - -#api = Pb_Api_ImBreak() -#params = api.params_init() -#params.randomize() -#print params.as_hash() -#req = params.execute() -#print req - -api = Pb_Api_ImGradient() -params = api.params_init() -params.randomize() -print params.as_hash() -req = params.execute() -print req |
