Move to preset files
This commit is contained in:
+22
-9
@@ -1,23 +1,36 @@
|
||||
import yaml, os, random
|
||||
module_root_directory = os.path.dirname(os.path.realpath(__file__))
|
||||
config_file = os.path.join(module_root_directory,'sizes.yaml')
|
||||
# TODO: make inputs?
|
||||
def read_config(item):
|
||||
with open(config_file, 'r') as file:
|
||||
return yaml.safe_load(file)[item]
|
||||
sizes_dir = os.path.join(os.path.dirname(__file__), "sizes")
|
||||
sizes_dir = os.path.abspath(sizes_dir)
|
||||
|
||||
def read_config(preset_file):
|
||||
if preset_file == "Preset":
|
||||
preset_file_path = os.path.join(sizes_dir,"SD1.5.yaml")
|
||||
else:
|
||||
preset_file_path = os.path.join(sizes_dir,preset_file)
|
||||
with open( preset_file_path, 'r') as file:
|
||||
return yaml.safe_load(file)['sizes']
|
||||
|
||||
def load_presets():
|
||||
preset_list = [file for file in os.listdir(sizes_dir) if file.endswith(".yaml")]
|
||||
return preset_list
|
||||
|
||||
class RandomSize:
|
||||
CATEGORY = "utils"
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
preset = ["Preset"] # 20
|
||||
preset += load_presets()
|
||||
return {
|
||||
"required": { "seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff}) },
|
||||
"required": {
|
||||
"seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff}),
|
||||
"preset": (preset,)
|
||||
},
|
||||
}
|
||||
RETURN_TYPES = ("INT","INT")
|
||||
RETURN_NAMES = ("width","height")
|
||||
FUNCTION = "func"
|
||||
def func(self:str,seed):
|
||||
sizes = read_config('sizes')
|
||||
def func(self:str,seed, preset):
|
||||
sizes = read_config(preset)
|
||||
rand_obj = random.Random(seed)
|
||||
size = rand_obj.choice(sizes)
|
||||
x, y = [int(v) for v in size.split('x')]
|
||||
|
||||
-22
@@ -1,22 +0,0 @@
|
||||
sizes:
|
||||
- 512x512
|
||||
- 512x768
|
||||
- 640x768
|
||||
- 512x1024
|
||||
- 640x640
|
||||
- 640x896
|
||||
- 768x512
|
||||
- 768x640
|
||||
- 768x768
|
||||
- 768x1024
|
||||
- 1024x512
|
||||
- 1024x768
|
||||
- 640x1536
|
||||
- 768x1344
|
||||
- 832x1216
|
||||
- 840x1176
|
||||
- 896x1152
|
||||
- 960x1088
|
||||
- 1024x1024
|
||||
- 1216x832
|
||||
- 1344x768
|
||||
@@ -0,0 +1,18 @@
|
||||
sizes:
|
||||
- 512x2048
|
||||
- 576x1792
|
||||
- 640x1600
|
||||
- 704x1472
|
||||
- 768x1344
|
||||
- 832x1216
|
||||
- 896x1152
|
||||
- 960x1088
|
||||
- 1024x1024
|
||||
- 1088x960
|
||||
- 1152x896
|
||||
- 1216x832
|
||||
- 1344x768
|
||||
- 1472x704
|
||||
- 1600x640
|
||||
- 1792x576
|
||||
- 2048x512
|
||||
@@ -0,0 +1,10 @@
|
||||
sizes:
|
||||
- 256x1024
|
||||
- 320x768
|
||||
- 384x640
|
||||
- 448x576
|
||||
- 512x512
|
||||
- 576x448
|
||||
- 640x384
|
||||
- 768x320
|
||||
- 1024x256
|
||||
@@ -0,0 +1,10 @@
|
||||
sizes:
|
||||
- 320x1216
|
||||
- 384x1024
|
||||
- 448x896
|
||||
- 512x768
|
||||
- 640x640
|
||||
- 768x512
|
||||
- 896x448
|
||||
- 1024x384
|
||||
- 1216x320
|
||||
@@ -0,0 +1,14 @@
|
||||
sizes:
|
||||
- 384x1536
|
||||
- 448x1280
|
||||
- 512x1152
|
||||
- 576x1024
|
||||
- 640x896
|
||||
- 704x832
|
||||
- 768x768
|
||||
- 832x704
|
||||
- 896x640
|
||||
- 1024x576
|
||||
- 1152x512
|
||||
- 1280x448
|
||||
- 1536x384
|
||||
@@ -0,0 +1,16 @@
|
||||
sizes:
|
||||
- 448x1792
|
||||
- 512x1536
|
||||
- 576x1344
|
||||
- 640x1216
|
||||
- 704x1088
|
||||
- 768x1024
|
||||
- 832x960
|
||||
- 896x896
|
||||
- 960x832
|
||||
- 1024x768
|
||||
- 1088x704
|
||||
- 1216x640
|
||||
- 1344x576
|
||||
- 1536x512
|
||||
- 1792x448
|
||||
@@ -0,0 +1,10 @@
|
||||
sizes:
|
||||
- 320x768 # 1:2.4
|
||||
- 384x640 # 1:1.667
|
||||
- 512x768 # 1:1.5
|
||||
- 448x576 # 1:1.286
|
||||
- 512x512 # 1:1
|
||||
- 576x448
|
||||
- 768x512
|
||||
- 640x384
|
||||
- 768x320
|
||||
@@ -0,0 +1,10 @@
|
||||
sizes:
|
||||
- 640x1536 # 1:2.4
|
||||
- 768x1344 # 1:1.75
|
||||
- 832x1216 # 1:1.462
|
||||
- 896x1152 # 1:1.286
|
||||
- 1024x1024 # 1:1
|
||||
- 1152x896
|
||||
- 1216x832
|
||||
- 1344x768
|
||||
- 1536x640
|
||||
Reference in New Issue
Block a user