Nodes/Avatar Graph/UV Select Circle
ComfyUI Node

UV Select Circle

Select a radius, not a region

By avatechai·Created 3 years ago·Updated 2 years ago· 264
UV Select Circle
  • BPY_OBJ
  • BPY_OBJ
x0
y0
radius25
wait_for_inputtrue
mode

UV Select Circle is the "grab everything within a radius of this point" selector. Instead of selecting one element or the whole map, you give it a center and a radius and it selects everything inside the circle. It's the UV-space equivalent of Blender's circle-select tool, and in a graph it's the most practical of the pack's shape selectors - because it's the only one that takes real numeric inputs you can set without a mouse.

How it works

It wraps bpy.ops.uv.circle_select on your BPY_OBJ, same auto-generated pattern as the rest of the pack. The inputs:

  • x and y - the center of the circle, in pixels on the UV editor (not 0–1 UV units). This is a Blender-ism: circle select operates in viewport pixel space.
  • radius - the selection radius in pixels, default 25.
  • mode - SET (replace selection), ADD (add to it), or SUB (subtract from it).
  • wait_for_input - this one's a trap. It defaults to true, which in Blender means "don't use these coordinates, go interactive and wait for the mouse instead." For a graph you want it off, so the operator actually uses the x/y/radius you fed it. If you leave it on and the node seems to do nothing, this is why.

Output is the same BPY_OBJ with the circular selection applied.

Where it fits

Circle select is the natural middle ground in a graph: more precise than Select All, less fiddly than point-select. In Avatar Graph it's good for grabbing a compact feature region - the area around the eye or mouth on a face mesh - before running UV Hide, UV Pack Islands, or a seam operation on just that island. The pixel-space coordinates are the main friction: you'll be estimating numbers against the UV editor you can't see, so expect to iterate. Start with a generous radius and ADD/SUB passes to dial it in.

Installing Avatar Graph

This node ships in the Avatar Graph pack from Avatech. From ComfyUI/custom_nodes:

git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui
python -m pip install -r requirements.txt

then restart ComfyUI with --enable-cors-header. Or ComfyUI Manager → search Avatar Graph → Install.

Standard pack warnings: it pins bpy==3.6.0, which needs Python 3.10.x - other versions fail the pip install. First launch downloads the ~2.5 GB SAM model. And the pack is openly still in development; pin it once your workflow is stable.

Categoryblender

Inputs (6)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
xoptINT0-2147483648–2147483647
yoptINT0-2147483648–2147483647
radiusoptINT251–2147483647
wait_for_inputoptBOOLEANtrue
modeoptCOMBO3 options: SET, ADD, SUB

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ