From 77a6c6c8614af91eac1917509c24a2adc40d44da Mon Sep 17 00:00:00 2001 From: FizzleDorf <1fizzledorf@gmail.com> Date: Thu, 13 Apr 2023 03:54:26 -0400 Subject: [PATCH] first commit --- nodes.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/nodes.py b/nodes.py index 946c66857..076c843f6 100644 --- a/nodes.py +++ b/nodes.py @@ -58,6 +58,30 @@ class ConditioningCombine: def combine(self, conditioning_1, conditioning_2): return (conditioning_1 + conditioning_2, ) +class ConditioningAddWeighted: + @classmethod + def INPUT_TYPES(s): + return {"required": {"conditioning_1": ("CONDITIONING", ), "conditioning_2": ("CONDITIONING", ), + "conditioning_1_strength": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.1}), + "conditioning_2_strength": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.1}) + }} + RETURN_TYPES = ("CONDITIONING",) + FUNCTION = "addWeighted" + + CATEGORY = "conditioning" + + + def addWeighted(self, conditioning_1, conditioning_2, conditioning_1_strength, conditioning_2_strength): + conditioning_1_tensor = conditioning_1[0][0] + conditioning_2_tensor = conditioning_2[0][0] + output = conditioning_1 + if conditioning_1_tensor.shape[1] > conditioning_2_tensor.shape[1]: + conditioning_2_tensor = torch.cat((conditioning_2_tensor, torch.zeros((1,conditioning_1_tensor.shape[1] - conditioning_2_tensor.shape[1],768))), dim=1) + elif conditioning_2_tensor.shape[1] > conditioning_1_tensor.shape[1]: + conditioning_1_tensor = torch.cat((conditioning_1_tensor, torch.zeros((1,conditioning_2_tensor.shape[1] - conditioning_1_tensor.shape[1],768))), dim=1) + output[0][0] = ((conditioning_1_tensor * conditioning_1_strength) + (conditioning_2_tensor * conditioning_2_strength))/(conditioning_1_strength + conditioning_2_strength) + return (output, ) + class ConditioningSetArea: @classmethod def INPUT_TYPES(s):