engrave_lines — PRINTPATH npr op

• Data kinds: image2d → image2d

• Call: import fullseye as fs; fs.ledger.engrave_lines(image, spacing_px=6.0, angle_deg=0.0, gamma=1.0, max_width=0.95) (implementation को सीधे call करना हो तो import printpath; printpath.engrave_lines(image, spacing_px=6.0, angle_deg=0.0, gamma=1.0, max_width=0.95), registry से लेना हो तो opsprintpath.get("engrave_lines"))

उपयोग

copperplate engraving — समानांतर line जिनकी चौड़ाई tone को दर्शाती है।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

★Why this earns its place: while the lines do not touch, the ink coverage of a ruling of width w and spacing d is exactly w / d. So the width needed for a target tone is solved, not tuned: w = (1 - tone) * d. The op therefore has a closed form to be graded against — blur the result and the local mean must come back to the tone you asked for.

Parameters

image : 2-D array in [0, 1]

spacing_px : float

Line spacing. The finest tone step a ruling can hold is 1 / spacing.

angle_deg : float

gamma : float

Tone shaping applied before solving for the width (tone**gamma).

max_width : float

Widest line as a fraction of the spacing; 1.0 would make solid black and

lose the ruling.

Returns an image2d: 1 = paper, 0 = ink.

Raises ValueError: spacing below 2 px (the ruling cannot be sampled); max_width outside (0, 1]; non-positive gamma; a non-finite or oversized image.

उपयोग की विस्तृत guide

• printpath family guide

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_beats_fringes_and_screens — py -3.11 examples/poc_beats_fringes_and_screens.py

वे अगले ops जिनसे type जुड़ता है (image2d को input के रूप में लेते हैं)

stipple_points_from_image · stipple_energy · stroke_tone_error · halftone_screen · hatch_field · mosaic_tiles_sites · mosaic_tiles_render · print_layer_defect_map

इसी category के (npr)

halftone_screen · halftone_moire_period · hatch_field · mosaic_tiles_sites · mosaic_tiles_render


*Provenance: printpath.py — PRINTPATH operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.