added some bulk utility nodes
This commit is contained in:
+121
@@ -195,6 +195,40 @@ class KfConditioningAdd:
|
||||
return (outv, )
|
||||
|
||||
|
||||
|
||||
class KfConditioningAddx10:
|
||||
CATEGORY = CATEGORY
|
||||
FUNCTION = "main"
|
||||
RETURN_TYPES = ("CONDITIONING",)
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(s):
|
||||
return {
|
||||
"required": {
|
||||
"cond_0": ("CONDITIONING",{"forceInput": True,}),
|
||||
},
|
||||
"optional": {
|
||||
"cond_1": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_2": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_3": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_4": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_5": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_6": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_7": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_8": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
"cond_9": ("CONDITIONING",{"forceInput": True, "default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
def main(self, cond_0, **kwargs):
|
||||
((cond_t_out, cond_d_out),) = deepcopy(cond_0)
|
||||
for ((cond_t,cond_d),) in kwargs.values():
|
||||
cond_t, cond_d = deepcopy(cond_t), deepcopy(cond_d)
|
||||
cond_t_out = cond_t_out + cond_t
|
||||
cond_d_out["pooled_output"] = cond_d_out["pooled_output"] + cond_d["pooled_output"]
|
||||
return [((cond_t_out, cond_d_out),)] #((cond_t_out, cond_d_out),)
|
||||
|
||||
|
||||
# class KfCurveInverse:
|
||||
# CATEGORY = CATEGORY
|
||||
# FUNCTION = "main"
|
||||
@@ -340,6 +374,48 @@ class KfCurvesAdd:
|
||||
return (curve_1 + curve_2, )
|
||||
|
||||
|
||||
class KfCurvesAddx10:
|
||||
CATEGORY = CATEGORY
|
||||
FUNCTION = "main"
|
||||
RETURN_TYPES = ("KEYFRAMED_CURVE",)
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(s):
|
||||
return {
|
||||
"required": {
|
||||
"curve_0": ("KEYFRAMED_CURVE",{"forceInput": True,}),
|
||||
},
|
||||
"optional": {
|
||||
"curve_1": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_2": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_3": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_4": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_5": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_6": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_7": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_8": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_9": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
def main(self, curve_0, curve_1, curve_2, curve_3, curve_4, curve_5, curve_6, curve_7, curve_8, curve_9):
|
||||
#curve_1 = deepcopy(curve_1)
|
||||
#curve_2 = deepcopy(curve_2)
|
||||
#return (curve_1 + curve_2, )
|
||||
curve_out = (
|
||||
curve_0 +
|
||||
curve_1 +
|
||||
curve_2 +
|
||||
curve_3 +
|
||||
curve_4 +
|
||||
curve_5 +
|
||||
curve_6 +
|
||||
curve_7 +
|
||||
curve_8 +
|
||||
curve_9)
|
||||
return (curve_out,)
|
||||
|
||||
|
||||
class KfCurvesSubtract:
|
||||
CATEGORY = CATEGORY
|
||||
FUNCTION = "main"
|
||||
@@ -380,6 +456,48 @@ class KfCurvesMultiply:
|
||||
return (curve_1 * curve_2, )
|
||||
|
||||
|
||||
class KfCurvesMultiplyx10:
|
||||
CATEGORY = CATEGORY
|
||||
FUNCTION = "main"
|
||||
RETURN_TYPES = ("KEYFRAMED_CURVE",)
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(s):
|
||||
return {
|
||||
"required": {
|
||||
"curve_0": ("KEYFRAMED_CURVE",{"forceInput": True,}),
|
||||
},
|
||||
"optional": {
|
||||
"curve_1": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_2": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_3": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_4": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_5": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_6": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_7": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_8": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
"curve_9": ("KEYFRAMED_CURVE",{"forceInput": True, "default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
def main(self, curve_0, curve_1, curve_2, curve_3, curve_4, curve_5, curve_6, curve_7, curve_8, curve_9):
|
||||
#curve_1 = deepcopy(curve_1)
|
||||
#curve_2 = deepcopy(curve_2)
|
||||
#return (curve_1 + curve_2, )
|
||||
curve_out = (
|
||||
curve_0 *
|
||||
curve_1 *
|
||||
curve_2 *
|
||||
curve_3 *
|
||||
curve_4 *
|
||||
curve_5 *
|
||||
curve_6 *
|
||||
curve_7 *
|
||||
curve_8 *
|
||||
curve_9)
|
||||
return (curve_out,)
|
||||
|
||||
|
||||
## This seems to not be working properly. I think the issue is upstream in Keyframed
|
||||
# TODO: set as experimental?
|
||||
class KfCurvesDivide:
|
||||
@@ -481,6 +599,9 @@ NODE_CLASS_MAPPINGS = {
|
||||
"KfCurvesDivide": KfCurvesDivide,
|
||||
"KfCurveConstant": KfCurveConstant,
|
||||
#########################
|
||||
"KfConditioningAddx10":KfConditioningAddx10,
|
||||
"KfCurvesAddx10":KfCurvesAddx10,
|
||||
"KfCurvesMultiplyx10":KfCurvesMultiplyx10,
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user