Nodes/comfyui-panels/Polygon Origin at Vertex
ComfyUI Node

Polygon Origin at Vertex

Hinge a panel on one of its own corners

By bmad4ever·Created 12 months ago·Updated 2 months ago· 41
Polygon Origin at Vertex
    • POLY_3O
    idx0

    Polygon Origin at Vertex is the pivot node for door-hinge moves. It tells Rotate Polygon, Scale Polygon, or Skew Polygon to use one of the panel's own corners as the pivot - so a rotation swings the panel around that corner, and a scale grows it away from that corner. It's the origin option that feels physical, like anchoring a shape to a page with a pin.

    One input, one output:

    • idx - the vertex index into polygon.exterior.coords. The tooltip says exactly that, and it's the entire spec. 0 is the first vertex of the polygon's outline; the count goes around the perimeter from there.
    • Output is a POLY_3O for the transform nodes' origin input.

    The practical question is always "which index is which corner," and the honest answer is that you find out by trying - there's no on-canvas picker, so you set idx and glance at Preview Panels. For a clean rectangle built from a canvas box, the exterior coordinates are in a predictable order (roughly the corners in sequence starting at one corner), and you'll quickly learn which of 0–3 is which. For polygons that came out of Build Layout Panels with many vertices, a corner you think of as "index 0" might actually be index 3 - hence the preview. Start with a low index and step up until the panel swings the way you want.

    Where it earns its place in a comic workflow: this is the pivot that grows a panel outward from the page's edge without moving the edge itself. Want a splash panel that expands down and right from the top-left corner, staying glued to that corner? Scale around vertex 0. Want a narrow panel to rotate like it's pinned at the gutter? Rotate around the vertex that sits on the gutter line. Because the pivot is part of the polygon, it tracks the panel - unlike Polygon Origin at Point, which holds a fixed coordinate even if the panel moves.

    It's a tiny node with a big opinion attached: you're deliberately making every transform asymmetrical. Use it when a panel should feel anchored, and reach back for Center when you just want the panel to stay roughly where it is while it changes.

    Installing

    Part of comfyui-panels by bmad4ever. Via ComfyUI Manager (search "comfyui-panels") and restart, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/bmad4ever/comfyui_panels
    

    Deps: shapely, matplotlib, opencv-python - no models, no GPU. Shapely is pinned exactly; version clashes with other packs are the realistic import failure.

    CategoryBmad/Panels

    Inputs (1)

    NameTypeDefaultDescription
    idxINT0Vertex index in the polygon.exterior.coords.

    Outputs (1)

    NameTypeDescription
    POLY_3OPOLY_3O