stroke op• Data kinds: pairs → pairs
• Call: import fullseye as fs; fs.ledger.stroke_tour_closed(points, start='nearest', two_opt_rounds=8, order=None) (to call the implementation directly, import printpath; printpath.stroke_tour_closed(points, start='nearest', two_opt_rounds=8, order=None); from the registry, opsprintpath.get("stroke_tour_closed"))
Reorders the points into a closed tour that visits each point exactly 1 time and returns. → pairs
Returns (N, 2): the same points as the input, reordered. It is closed by returning from the last point to the first (the first point is not duplicated at the end).
★This is not an optimal tour (TSP is NP-hard). State its quality by comparing with a lower bound:
a closed tour cannot be shorter than the minimum spanning tree, so the closer length / mst_length is to 1 the better. For uniform points, Beardwood–Halton–Hammersley's 0.7124 √(n A) is also a guide. No golden files are used.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• poc_one_stroke_epicycles — py -3.11 examples/poc_one_stroke_epicycles.py
pairs as input)stipple_energy · mst_length · stroke_resample_closed · stroke_tone_error · mosaic_tiles_render
stroke)stipple_points_from_image · stipple_energy · mst_length · stroke_resample_closed · stroke_tone_error
*Provenance: printpath.py — PRINTPATH operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.