mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-01-31 16:50:17 +08:00
Some checks are pending
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
Python Linting / Run Ruff (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
* add color type and color to rgb int node * review fix for allowing output --------- Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
43 lines
1.2 KiB
Python
43 lines
1.2 KiB
Python
from typing_extensions import override
|
|
from comfy_api.latest import ComfyExtension, io
|
|
|
|
|
|
class ColorToRGBInt(io.ComfyNode):
|
|
@classmethod
|
|
def define_schema(cls) -> io.Schema:
|
|
return io.Schema(
|
|
node_id="ColorToRGBInt",
|
|
display_name="Color to RGB Int",
|
|
category="utils",
|
|
description="Convert a color to a RGB integer value.",
|
|
inputs=[
|
|
io.Color.Input("color"),
|
|
],
|
|
outputs=[
|
|
io.Int.Output(display_name="rgb_int"),
|
|
],
|
|
)
|
|
|
|
@classmethod
|
|
def execute(
|
|
cls,
|
|
color: str,
|
|
) -> io.NodeOutput:
|
|
# expect format #RRGGBB
|
|
if len(color) != 7 or color[0] != "#":
|
|
raise ValueError("Color must be in format #RRGGBB")
|
|
r = int(color[1:3], 16)
|
|
g = int(color[3:5], 16)
|
|
b = int(color[5:7], 16)
|
|
return io.NodeOutput(r * 256 * 256 + g * 256 + b)
|
|
|
|
|
|
class ColorExtension(ComfyExtension):
|
|
@override
|
|
async def get_node_list(self) -> list[type[io.ComfyNode]]:
|
|
return [ColorToRGBInt]
|
|
|
|
|
|
async def comfy_entrypoint() -> ColorExtension:
|
|
return ColorExtension()
|