Files

27 lines
838 B
Python

from .latent_utils import PRESETS, ASPECT_RATIOS, snap64
class SmartResolutionPicker:
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"resolution_preset": (list(PRESETS.keys()), {"default": "FullHD_1920x1080"}),
"aspect_ratio": (list(ASPECT_RATIOS.keys()), {"default": "16:9_Widescreen"}),
}
}
RETURN_TYPES = ("INT", "INT")
RETURN_NAMES = ("width", "height")
FUNCTION = "calculate"
CATEGORY = "utils/latent"
def calculate(self, resolution_preset, aspect_ratio):
long_side = PRESETS[resolution_preset]
ar_w, ar_h = ASPECT_RATIOS[aspect_ratio]
scale = long_side / float(max(ar_w, ar_h))
width = snap64(ar_w * scale)
height = snap64(ar_h * scale)
return (width, height)