Nodes/ComfyUI_DAO_master/DXF Add Circle
ComfyUI Node

DXF Add Circle

The primitive that makes the vector pack click

By orion4d·Created about a year ago·Updated 12 months ago· 11
DXF Add Circle
  • dxf
  • DXF
cx0.00
cy0.00
radius10.00

Every CAD drawing starts with a circle, and so does every workflow built with the DAO pack's DXF nodes. DXF Add Circle appends a circle to a DXF document - center point plus radius - and hands back a fresh, updated document. Simple on its face, but it's the shape you'll reach for constantly once you're building vector geometry in ComfyUI: wheels, rings, bullseyes, the bases of gears, holes to cut.

It's part of orion4d/ComfyUI_DAO_master, the French-authored vector-and-image pack, and it runs on ezdxf, the mature Python library for real DXF files. The whole DXF family works the same non-destructive way, so one circle is usually just the first stamp in a longer chain.

How it works

The mechanism is shared with every DXF Add … node: take the incoming dxf document, copy it into a brand-new document via ezdxf's Importer, add the new entity to the modelspace, and return the new document. Your input doc is never mutated, so you can branch a drawing into multiple variants safely.

For a circle, the inputs are exactly three:

  • cx, cy - center coordinates (defaults 0, 0).
  • radius - how big, minimum 0.0001 (default 10).

Output is a single DXF socket carrying the updated document.

What to do with it

Wire a DXF New node in front to start from a blank doc, chain several primitives together - circle, then a line, then a star - and finish with DXF Preview to see your drawing, or DXF to SVG to carry it into the SVG side of the pack. The output is a real DXF, so you can also save it and hand it to laser cutters or CAD software.

Installing

ComfyUI Manager (search ComfyUI_DAO_master) or:

cd ComfyUI/custom_nodes
git clone https://github.com/orion4d/ComfyUI_DAO_master.git
pip install ezdxf

Restart after installing, and you're drawing.

Where people get burned

The same trap as all the primitives: forget to wire the previous DXF node's output into this node's dxf input and you're silently building from an empty document. And don't set radius to 0 - the node enforces a minimum of 0.0001 for a reason; a zero-radius circle is a point that renders as nothing.

CategoryDAO_master/DXF/Primitives

Inputs (4)

NameTypeDefaultDescription
dxfDXF
cxFLOAT0.00
cyFLOAT0.00
radiusFLOAT10.00

Outputs (1)

NameTypeDescription
DXFDXF