Files
CavinHuang-comfyui-nodes-docs/docs/ImageDrawRectangleRoundedByContainer.md
2024-07-04 08:39:03 +08:00

257 lines
7.3 KiB
Markdown

# Documentation
- Class name: `ImageDrawRectangleRoundedByContainer`
- Category: `image/draw`
- Output node: `False`
ImageDrawRectangleRoundedByContainer 节点专门用于在指定容器内绘制圆角矩形。它利用容器的尺寸来确定绘图区域,并允许对矩形的外观进行详细定制,包括其大小、边框、填充颜色和圆角程度。
# Input types
## Required
- **`container`**
- 用于绘制圆角矩形的容器。它定义了绘图操作的边界和上下文。
- Comfy dtype: IMAGE
- Python dtype: numpy.ndarray
- **`start_x`**
- 矩形的起始 x 坐标,定义了形状的左边界。
- Comfy dtype: FLOAT
- Python dtype: float
- **`start_y`**
- 矩形的起始 y 坐标,定义了形状的上边界。
- Comfy dtype: FLOAT
- Python dtype: float
- **`end_x`**
- 矩形的结束 x 坐标,定义了形状的右边界。
- Comfy dtype: FLOAT
- Python dtype: float
- **`end_y`**
- 矩形的结束 y 坐标,定义了形状的下边界。
- Comfy dtype: FLOAT
- Python dtype: float
- **`radius`**
- 圆角的半径,决定了矩形corners的圆润程度。
- Comfy dtype: INT
- Python dtype: float
- **`outline_size`**
- 矩形轮廓的粗细。
- Comfy dtype: INT
- Python dtype: float
- **`outline_red`**
- 轮廓颜色的红色分量。
- Comfy dtype: INT
- Python dtype: float
- **`outline_green`**
- 轮廓颜色的绿色分量。
- Comfy dtype: INT
- Python dtype: float
- **`outline_blue`**
- 轮廓颜色的蓝色分量。
- Comfy dtype: INT
- Python dtype: float
- **`outline_alpha`**
- 轮廓颜色的透明度(alpha)分量。
- Comfy dtype: FLOAT
- Python dtype: float
- **`fill_red`**
- 矩形填充颜色的红色分量。
- Comfy dtype: INT
- Python dtype: float
- **`fill_green`**
- 矩形填充颜色的绿色分量。
- Comfy dtype: INT
- Python dtype: float
- **`fill_blue`**
- 矩形填充颜色的蓝色分量。
- Comfy dtype: INT
- Python dtype: float
- **`fill_alpha`**
- 矩形填充颜色的透明度(alpha)分量。
- Comfy dtype: FLOAT
- Python dtype: float
- **`top_left_corner`**
- 指定左上角是否应该是圆角。
- Comfy dtype: COMBO[STRING]
- Python dtype: bool
- **`top_right_corner`**
- 指定右上角是否应该是圆角。
- Comfy dtype: COMBO[STRING]
- Python dtype: bool
- **`bottom_right_corner`**
- 指定右下角是否应该是圆角。
- Comfy dtype: COMBO[STRING]
- Python dtype: bool
- **`bottom_left_corner`**
- 指定左下角是否应该是圆角。
- Comfy dtype: COMBO[STRING]
- Python dtype: bool
- **`SSAA`**
- 超级采样抗锯齿因子,用于提高绘图质量。
- Comfy dtype: INT
- Python dtype: int
- **`method`**
- 用于绘图的方法,影响渲染技术。
- Comfy dtype: COMBO[STRING]
- Python dtype: str
# Output types
- **`image`**
- 在指定容器内绘制了圆角矩形的结果图像。
- Comfy dtype: IMAGE
- Python dtype: numpy.ndarray
## Usage tips
- Infra type: `CPU`
- Common nodes: unknown
## Source code
```python
class ImageDrawRectangleRoundedByContainer:
def __init__(self):
pass
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"container": ("IMAGE",),
"start_x": ("FLOAT", {
"default": 0.1,
"max": 1.0,
"step": 0.01
}),
"start_y": ("FLOAT", {
"default": 0.2,
"max": 1.0,
"step": 0.01
}),
"end_x": ("FLOAT", {
"default": 0.9,
"max": 1.0,
"step": 0.01
}),
"end_y": ("FLOAT", {
"default": 0.8,
"max": 1.0,
"step": 0.01
}),
"radius": ("INT", {
"default": 180,
"max": 360,
"step": 1
}),
"outline_size": ("INT", {
"default": 1,
"step": 1
}),
"outline_red": ("INT", {
"default": 0,
"max": 255,
"step": 1
}),
"outline_green": ("INT", {
"default": 0,
"max": 255,
"step": 1
}),
"outline_blue": ("INT", {
"default": 0,
"max": 255,
"step": 1
}),
"outline_alpha": ("FLOAT", {
"default": 1.0,
"max": 1.0,
"step": 0.01
}),
"fill_red": ("INT", {
"default": 255,
"max": 255,
"step": 1
}),
"fill_green": ("INT", {
"default": 255,
"max": 255,
"step": 1
}),
"fill_blue": ("INT", {
"default": 255,
"max": 255,
"step": 1
}),
"fill_alpha": ("FLOAT", {
"default": 1.0,
"max": 1.0,
"step": 0.01
}),
"top_left_corner": (["true", "false"],),
"top_right_corner": (["true", "false"],),
"bottom_right_corner": (["true", "false"],),
"bottom_left_corner": (["true", "false"],),
"SSAA": ("INT", {
"default": 4,
"min": 1,
"max": 16,
"step": 1
}),
"method": (["lanczos", "bicubic", "hamming", "bilinear", "box", "nearest"],),
},
}
RETURN_TYPES = ("IMAGE",)
FUNCTION = "node"
CATEGORY = "image/draw"
# noinspection PyPep8Naming, PyUnresolvedReferences, PyArgumentList
def node(
self,
container,
start_x,
start_y,
end_x,
end_y,
radius,
outline_size,
outline_red,
outline_green,
outline_blue,
outline_alpha,
fill_red,
fill_green,
fill_blue,
fill_alpha,
top_left_corner,
top_right_corner,
bottom_right_corner,
bottom_left_corner,
SSAA,
method
):
return ImageDrawRectangleRounded().image_draw_rounded(
container[0, :, :, 0].shape[1],
container[0, :, :, 0].shape[0],
start_x,
start_y,
end_x,
end_y,
radius,
outline_size,
outline_red,
outline_green,
outline_blue,
outline_alpha,
fill_red,
fill_green,
fill_blue,
fill_alpha,
top_left_corner,
top_right_corner,
bottom_right_corner,
bottom_left_corner,
SSAA,
method
)
```