"""More SVG path fragments, continued from :mod:`_glyph_art`. Split off purely to keep both modules under the 250-line cap; the division between the two files carries no meaning beyond that. :mod:`glyphs` imports from both, so no caller or test needs to know which file a glyph lives in. """ from __future__ import annotations # Three rising bars with a plotted point above the tallest -- a day-by-day log # that adds up to a trend, which is what a life tracker is. The bars are # strokes rather than filled rects so the glyph keeps one stroke weight # throughout; at a 168px pitch the 72px strokes leave 96px gaps, well above # MIN_NEGATIVE_SPACE. The marker sits on its own row clear of the bar caps, # and is hollow so it reads as a data point rather than a full stop. _TRACK_BARS = """\ """ # A note whose stem drops past the head onto a flat baseline foot, so one # vertical stroke reads as both a music stem and a letterform ascender sitting # on a text line -- lyricanki turns songs into words. Filled, not stroked, for # the nib/anvil reason: at 72px weight an outlined note-head's interior is # under MIN_NEGATIVE_SPACE and fills in solid at 48dp. # # Geometry, all inside SAFE_BOX (x=232..792, y=232..792): # stem x=520..592, y=272..584 (72 wide, the family stroke weight) # head ellipse (501,580) rx=118 ry=90 rot -20deg: y=486..674, x=386..616, # overlapping the stem's end, so the stem stops at y=584 # flags two stacked wedges off the stem top, reaching x=756 and x=736 # foot x=232..792, y=724..776 (52 tall, reads as the baseline) # # The head's lowest point is y=674: a rotated ellipse reaches # sqrt((rx*sin t)^2 + (ry*cos t)^2) below its centre, NOT ry. That leaves 50px # above the foot, clear of MIN_NEGATIVE_SPACE=36. A first draft used ry=104 at # cy=672 and recorded "40px clearance" without doing that sum -- the head # overlapped the foot by 40px and rendered as a mailbox. Recompute, never eyeball. # # Rejected: a bare note says nothing about words; a speech bubble around one # has nested outlines that vanish at 48dp. _NOTE_ASCENDER = """\ """