Bland.Markers (Elixir Technical Drawing v0.5.0)

Copy Markdown View Source

Scatter-point markers in the monochrome technical-drawing tradition.

Each marker is drawn as a self-contained SVG fragment at a pixel point. Presets alternate between open (stroke-only) and filled shapes so that overlapping series stay distinguishable without color.

Presets

  • :circle_open
  • :circle_filled
  • :square_open
  • :square_filled
  • :triangle_open
  • :triangle_filled
  • :diamond_open
  • :diamond_filled
  • :cross — saltire (×)
  • :plus — upright cross (+)
  • :asterisk — six-spoke star
  • :dot — 1-pixel dot for dense scatters

Summary

Functions

Next marker at cyclic index, skipping any in exclude.

Renders a marker at (cx, cy) pixel coordinates.

Markers in recommended cycling order.

Functions

cycle(index, exclude \\ [])

@spec cycle(non_neg_integer(), [atom()]) :: atom()

Next marker at cyclic index, skipping any in exclude.

draw(marker, cx, cy, opts \\ [])

@spec draw(atom(), number(), number(), keyword()) :: iodata()

Renders a marker at (cx, cy) pixel coordinates.

Options:

  • :size (default 5) — radius-like size parameter in px
  • :stroke (default "black") — stroke color for open markers
  • :fill (default "black") — fill for filled markers
  • :stroke_width (default 1)

preset_cycle()

@spec preset_cycle() :: [atom()]

Markers in recommended cycling order.