File size: 2,823 Bytes
c6535db | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | # ComfyUI - mxToolkit - Max Smirnov 2024
import nodes
class AnyType(str):
def __ne__(self, __value: object) -> bool:
return False
any = AnyType("*")
class mxSeed:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"X": ("INT", {"default": 0, "min": 0, "max": 4294967296}),
},
}
RETURN_TYPES = ("INT",)
RETURN_NAMES = ("X",)
FUNCTION = "main"
CATEGORY = 'utils/mxToolkit'
def main(self, X,):
return (X,)
class mxStop:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"In": (any,),
},
}
@classmethod
def VALIDATE_INPUTS(s, **kwargs):
return True
RETURN_TYPES = (any,)
FUNCTION = "main"
CATEGORY = 'utils/mxToolkit'
def main(self, In):
out = In;
nodes.interrupt_processing();
return (out,)
class mxSlider:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"Xi": ("INT", {"default": 20, "min": -4294967296, "max": 4294967296}),
"Xf": ("FLOAT", {"default": 20, "min": -4294967296, "max": 4294967296}),
"isfloatX": ("INT", {"default": 0, "min": 0, "max": 1}),
},
}
RETURN_TYPES = (any,)
RETURN_NAMES = ("X",)
FUNCTION = "main"
CATEGORY = 'utils/mxToolkit'
def main(self, Xi, Xf, isfloatX):
if isfloatX > 0:
out = Xf
else:
out = Xi
return (out,)
class mxSlider2D:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"Xi": ("INT", {"default": 512, "min": -4294967296, "max": 4294967296}),
"Xf": ("FLOAT", {"default": 512, "min": -4294967296, "max": 4294967296}),
"Yi": ("INT", {"default": 512, "min": -4294967296, "max": 4294967296}),
"Yf": ("FLOAT", {"default": 512, "min": -4294967296, "max": 4294967296}),
"isfloatX": ("INT", {"default": 0, "min": 0, "max": 1}),
"isfloatY": ("INT", {"default": 0, "min": 0, "max": 1}),
},
}
RETURN_TYPES = (any, any,)
RETURN_NAMES = ("X","Y",)
FUNCTION = "main"
CATEGORY = 'utils/mxToolkit'
def main(self, Xi, Xf, isfloatX, Yi, Yf, isfloatY):
if isfloatX > 0:
outX = Xf
else:
outX = Xi
if isfloatY > 0:
outY = Yf
else:
outY = Yi
return (outX, outY,)
NODE_CLASS_MAPPINGS = {
"mxSeed": mxSeed,
"mxStop": mxStop,
"mxSlider": mxSlider,
"mxSlider2D": mxSlider2D,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"mxSeed": "Seed",
"mxStop": "Stop",
"mxSlider": "Slider",
"mxSlider2D": "Slider 2D",
} |