Data and rule graphics

VectorPaint cyclic-overlap triangles: control three crossings with local segments

Build a decorative triangle with A over B, B over C and C over A, distinguishing whole-object stacking from local segment treatment.

English translation of the Chinese original, translated on . Original publication dates, attribution, code and version notes are retained.

Three whole objects in one global stacking order cannot simultaneously place A over B, B over C and C over A. Use local segments at the joins of triangular bands to control each overlap. This is a 2D composition experiment, not a proved impossible 3D object or a claim that physical materials assemble with the same appearance.

Write all three local overlap rules first

On a 900 by 800 pixel canvas, arrange three broad bands A, B and C in a triangle. Mark three crossings in the draft and fix the rules A over B, B over C and C over A instead of changing them while drawing. Start with three clear flat colours to minimise texture distractions. Retain complete sources for every band and use separate objects for crossing treatments. Try a global stacking change once and observe at least one rule failing. The task concerns local versus global ordering, not finding a magic control that automatically resolves a cycle.

Keep base widths and edge treatment consistent

Draw three closed polygon bands with similar widths, clean principal edges and ends extending into their crossings. Inspect fill outlines without strokes so heavy lines cannot conceal seams. The triangle needs a clear directional loop rather than engineering-exact angles. Group bands independently and include direction and A/B/C identity in their names. Keep complete-band copies in a hidden reference layer; do not cut the only sources into unrecoverable pieces for one crossing. Check for unnecessary nodes and self-intersections before introducing local overlays.

Complete two globally compatible joins first

Place whole A over B and B over C. Inspect these first two crossings for readable upper/lower boundaries. At the third, A will cover C, contradicting the list; retain that result temporarily for comparison. Moving all of C to the front fixes the third but breaks B over C, reproducing the cycle. Identify each crossing rather than mistaking a brighter colour for correct depth. Small draft arrows may identify bands, but the final drawing should primarily communicate through occlusion boundaries, with text explaining the design rule.

Use a source-matched local segment at the third join

From C’s complete source, create a segment that covers only the third crossing, matching its shape, direction and colour, and place it above A. Keep it away from the B/C crossing so the established relationship survives. Use an independent closed shape or a verified mask structure rather than assuming an automatic slicing tool. Join segment edges continuously to C without width jumps or misalignment. Temporarily recolour it to inspect coverage, then restore the colour. Name it traceably as a display segment of C, not a fourth band.

Trace continuity and occlusion around the loop

Start at A and follow visible edges through B and C, reading each over/under relationship against the three rules. One correct corner does not establish all three. For segment seams, inspect path joins and strokes instead of thickening the entire drawing. Matching colour alone does not establish continuity; compare direction and width. Hide shadows first so flat shapes work before adding limited shading. This cycle describes local display relationships in this image and does not prove an equivalent relationship impossible in every 3D arrangement or with bendable materials.

Recolour one band to test segment maintenance

In a copy, recolour C and its local segment together, checking for a small leftover old-colour patch. Ordinary copied objects do not automatically share a visual identity, so editing only the largest base band is insufficient. Move C slightly and observe whether its segment and A crossing also need adjustment; they are not permanently bound. Restore the final state after testing and retain the naming list. Segmentation offers flexible local ordering but requires maintaining associated styles and geometry. Where no cycle is needed, a simple global order is easier to manage; do not segment merely for complexity.

Keep an inspectable structure and clean output

Save complete sources, local segments and rule explanations. Inspect all three crossings and the narrowest gaps in the final export at actual size, ensuring no unintended patch edges show. Check transparency against light and dark backgrounds. Do not delete the segmented source after exporting an image, since future recolouring would lose traceable relationships. Name it a two-dimensional decorative loop with its revision and retain a separately labelled A/B/C explanatory version if teaching. The result is not automatically a 3D assembly drawing or structural validation; preserve its purpose when sharing so local-overlay techniques are not mistaken for an accepted physical design.

Recheck rules and segment scope when one repair breaks another

If fixing corner three breaks corner two, check whether all of C was raised or its local segment extends too far. For a fourth-looking band, inspect colour, boundaries and naming and remove test pieces. Compare source direction for poor seams rather than concealing them with blur or large shadows. Reduce decoration when readability suffers while keeping three identities and crossing boundaries. After repairs, compare the global-order version and inspect each local crossing. You control the result when you can explain which relationships follow whole-object order and which require segmentation.

Related tutorials and sources

VectorPaint woven strips: verify alternating over-and-under crossings, VectorPaint layers and groups: make complex work easier to select and edit.

Sources checked on November 4, 2026: VectorPaint 1.0.8, requiring iOS / iPadOS 17 or later. Capability scope follows the official App Store description and Apple public version lookup. These are exercises and checks you can perform, without a claim of step-by-step physical-device testing or verification in every target environment. Example content is instructional; follow the controls in your installed version.