From 4ec3ba18fdd60c725ad098d24af41db52c6e57f4 Mon Sep 17 00:00:00 2001 From: Humza Shahid Date: Mon, 18 Aug 2025 01:31:22 +0100 Subject: [PATCH] add ability to set (r, g, b) colour values for font --- fonts/ampersand.sml | 242 +++++++------------------ fonts/ascii-at.sml | 170 +++++------------- fonts/ascii-dot.sml | 26 +-- fonts/ascii-eight.sml | 170 +++++------------- fonts/ascii-five.sml | 146 ++++----------- fonts/ascii-four.sml | 146 ++++----------- fonts/ascii-hash.sml | 98 +++------- fonts/ascii-minus.sml | 26 +-- fonts/ascii-nine.sml | 146 ++++----------- fonts/ascii-one.sml | 98 +++------- fonts/ascii-percent.sml | 314 +++++++++------------------------ fonts/ascii-pipe.sml | 26 +-- fonts/ascii-plus.sml | 50 ++---- fonts/ascii-seven.sml | 122 ++++--------- fonts/ascii-six.sml | 146 ++++----------- fonts/ascii-space.sml | 2 +- fonts/ascii-three.sml | 170 +++++------------- fonts/ascii-tilde.sml | 122 ++++--------- fonts/ascii-two.sml | 194 +++++--------------- fonts/ascii-zero.sml | 123 ++++--------- fonts/asterisk.sml | 146 ++++----------- fonts/backtick.sml | 50 ++---- fonts/backward-slash.sml | 122 ++++--------- fonts/caret.sml | 122 ++++--------- fonts/colon.sml | 50 ++---- fonts/comma.sml | 74 ++------ fonts/cozette-ascii.sml | 2 +- fonts/dollar.sml | 194 +++++--------------- fonts/equals.sml | 50 ++---- fonts/exclamation_mark.sml | 50 ++---- fonts/forward-slash.sml | 122 ++++--------- fonts/left-angled-bracket.sml | 170 +++++------------- fonts/left-brace.sml | 122 ++++--------- fonts/left-bracket.sml | 74 ++------ fonts/left-paren.sml | 122 ++++--------- fonts/lower-case-a.sml | 122 ++++--------- fonts/lower-case-b.sml | 98 +++------- fonts/lower-case-c.sml | 122 ++++--------- fonts/lower-case-d.sml | 98 +++------- fonts/lower-case-e.sml | 146 ++++----------- fonts/lower-case-f.sml | 74 ++------ fonts/lower-case-g.sml | 122 ++++--------- fonts/lower-case-h.sml | 74 ++------ fonts/lower-case-i.sml | 98 +++------- fonts/lower-case-j.sml | 98 +++------- fonts/lower-case-k.sml | 170 +++++------------- fonts/lower-case-l.sml | 74 ++------ fonts/lower-case-m.sml | 122 ++++--------- fonts/lower-case-n.sml | 74 ++------ fonts/lower-case-o.sml | 98 +++------- fonts/lower-case-p.sml | 98 +++------- fonts/lower-case-q.sml | 122 ++++--------- fonts/lower-case-r.sml | 74 ++------ fonts/lower-case-s.sml | 122 ++++--------- fonts/lower-case-t.sml | 74 ++------ fonts/lower-case-u.sml | 74 ++------ fonts/lower-case-v.sml | 122 ++++--------- fonts/lower-case-w.sml | 122 ++++--------- fonts/lower-case-x.sml | 218 ++++++----------------- fonts/lower-case-y.sml | 98 +++------- fonts/lower-case-z.sml | 146 ++++----------- fonts/question-mark.sml | 146 ++++----------- fonts/quotes-double.sml | 50 ++---- fonts/quotes-single.sml | 26 +-- fonts/right-angled-bracket.sml | 170 +++++------------- fonts/right-brace.sml | 122 ++++--------- fonts/right-bracket.sml | 74 ++------ fonts/right-paren.sml | 122 ++++--------- fonts/semicolon.sml | 98 +++------- fonts/underscore.sml | 26 +-- fonts/unknown.sml | 98 +++------- fonts/upper-case-a.sml | 98 +++------- fonts/upper-case-b.sml | 146 ++++----------- fonts/upper-case-c.sml | 122 ++++--------- fonts/upper-case-d.sml | 146 ++++----------- fonts/upper-case-e.sml | 98 +++------- fonts/upper-case-f.sml | 74 ++------ fonts/upper-case-g.sml | 146 ++++----------- fonts/upper-case-h.sml | 74 ++------ fonts/upper-case-i.sml | 74 ++------ fonts/upper-case-j.sml | 98 +++------- fonts/upper-case-k.sml | 170 +++++------------- fonts/upper-case-l.sml | 50 ++---- fonts/upper-case-m.sml | 122 ++++--------- fonts/upper-case-n.sml | 122 ++++--------- fonts/upper-case-o.sml | 98 +++------- fonts/upper-case-p.sml | 98 +++------- fonts/upper-case-q.sml | 146 ++++----------- fonts/upper-case-r.sml | 146 ++++----------- fonts/upper-case-s.sml | 170 +++++------------- fonts/upper-case-t.sml | 50 ++---- fonts/upper-case-u.sml | 74 ++------ fonts/upper-case-v.sml | 122 ++++--------- fonts/upper-case-w.sml | 122 ++++--------- fonts/upper-case-x.sml | 218 ++++++----------------- fonts/upper-case-y.sml | 122 ++++--------- fonts/upper-case-z.sml | 146 ++++----------- 97 files changed, 2761 insertions(+), 8090 deletions(-) diff --git a/fonts/ampersand.sml b/fonts/ampersand.sml index b7dc044..42e82ce 100644 --- a/fonts/ampersand.sml +++ b/fonts/ampersand.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,304 +14,184 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-at.sml b/fonts/ascii-at.sml index 407488b..2ad68b5 100644 --- a/fonts/ascii-at.sml +++ b/fonts/ascii-at.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-dot.sml b/fonts/ascii-dot.sml index 4c4ded7..25a5c6f 100644 --- a/fonts/ascii-dot.sml +++ b/fonts/ascii-dot.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,34 +14,22 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-eight.sml b/fonts/ascii-eight.sml index 6c0fa15..f156ce1 100644 --- a/fonts/ascii-eight.sml +++ b/fonts/ascii-eight.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-five.sml b/fonts/ascii-five.sml index 96ab8ed..8804172 100644 --- a/fonts/ascii-five.sml +++ b/fonts/ascii-five.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-four.sml b/fonts/ascii-four.sml index 49a935f..f3f55c8 100644 --- a/fonts/ascii-four.sml +++ b/fonts/ascii-four.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-hash.sml b/fonts/ascii-hash.sml index 9de6958..4648a8b 100644 --- a/fonts/ascii-hash.sml +++ b/fonts/ascii-hash.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-minus.sml b/fonts/ascii-minus.sml index f4cc2ae..2d0f3fd 100644 --- a/fonts/ascii-minus.sml +++ b/fonts/ascii-minus.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,34 +14,22 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-nine.sml b/fonts/ascii-nine.sml index 8e8cec7..24eea08 100644 --- a/fonts/ascii-nine.sml +++ b/fonts/ascii-nine.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-one.sml b/fonts/ascii-one.sml index 78bb259..3502c5b 100644 --- a/fonts/ascii-one.sml +++ b/fonts/ascii-one.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-percent.sml b/fonts/ascii-percent.sml index 61f47ec..72e6b68 100644 --- a/fonts/ascii-percent.sml +++ b/fonts/ascii-percent.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,394 +14,238 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-pipe.sml b/fonts/ascii-pipe.sml index 2b351d7..f33e11c 100644 --- a/fonts/ascii-pipe.sml +++ b/fonts/ascii-pipe.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,34 +14,22 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-plus.sml b/fonts/ascii-plus.sml index a63b24a..e1824ab 100644 --- a/fonts/ascii-plus.sml +++ b/fonts/ascii-plus.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-seven.sml b/fonts/ascii-seven.sml index cbadace..abff3ab 100644 --- a/fonts/ascii-seven.sml +++ b/fonts/ascii-seven.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-six.sml b/fonts/ascii-six.sml index 8235545..434b2d7 100644 --- a/fonts/ascii-six.sml +++ b/fonts/ascii-six.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-space.sml b/fonts/ascii-space.sml index 19ef5b4..24286f2 100644 --- a/fonts/ascii-space.sml +++ b/fonts/ascii-space.sml @@ -1,5 +1,5 @@ structure AsciiSpace = struct - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = #[ ] end diff --git a/fonts/ascii-three.sml b/fonts/ascii-three.sml index 9b8e88f..040ea1e 100644 --- a/fonts/ascii-three.sml +++ b/fonts/ascii-three.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-tilde.sml b/fonts/ascii-tilde.sml index 06eb1e9..a9fc724 100644 --- a/fonts/ascii-tilde.sml +++ b/fonts/ascii-tilde.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-two.sml b/fonts/ascii-two.sml index 155e8e7..9fce71d 100644 --- a/fonts/ascii-two.sml +++ b/fonts/ascii-two.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,244 +14,148 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/ascii-zero.sml b/fonts/ascii-zero.sml index 48915c9..0287a04 100644 --- a/fonts/ascii-zero.sml +++ b/fonts/ascii-zero.sml @@ -6,8 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight): Real32.real - vector = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -15,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/asterisk.sml b/fonts/asterisk.sml index 11c7444..b94195a 100644 --- a/fonts/asterisk.sml +++ b/fonts/asterisk.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/backtick.sml b/fonts/backtick.sml index fc43186..406d7b7 100644 --- a/fonts/backtick.sml +++ b/fonts/backtick.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/backward-slash.sml b/fonts/backward-slash.sml index b1ab743..4999870 100644 --- a/fonts/backward-slash.sml +++ b/fonts/backward-slash.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/caret.sml b/fonts/caret.sml index 8c91924..f6fd855 100644 --- a/fonts/caret.sml +++ b/fonts/caret.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/colon.sml b/fonts/colon.sml index 728fb86..a2d8e88 100644 --- a/fonts/colon.sml +++ b/fonts/colon.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/comma.sml b/fonts/comma.sml index 158e474..d4a0eba 100644 --- a/fonts/comma.sml +++ b/fonts/comma.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/cozette-ascii.sml b/fonts/cozette-ascii.sml index be85e29..a8122ce 100644 --- a/fonts/cozette-ascii.sml +++ b/fonts/cozette-ascii.sml @@ -255,6 +255,6 @@ struct let val chrFun = Vector.sub (asciiTable, Char.ord chr) in - chrFun (posX, posY, scale, windowWidth, windowHeight) + chrFun (posX, posY, scale, windowWidth, windowHeight, r, g, b) end end diff --git a/fonts/dollar.sml b/fonts/dollar.sml index 78c70e5..1774da6 100644 --- a/fonts/dollar.sml +++ b/fonts/dollar.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,244 +14,148 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/equals.sml b/fonts/equals.sml index 7b37c67..4b37166 100644 --- a/fonts/equals.sml +++ b/fonts/equals.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/exclamation_mark.sml b/fonts/exclamation_mark.sml index a3aeb11..aa82dbe 100644 --- a/fonts/exclamation_mark.sml +++ b/fonts/exclamation_mark.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/forward-slash.sml b/fonts/forward-slash.sml index 3d4a1b6..da91591 100644 --- a/fonts/forward-slash.sml +++ b/fonts/forward-slash.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/left-angled-bracket.sml b/fonts/left-angled-bracket.sml index 32f632f..92c03ec 100644 --- a/fonts/left-angled-bracket.sml +++ b/fonts/left-angled-bracket.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/left-brace.sml b/fonts/left-brace.sml index 1db5ca3..a07f9e7 100644 --- a/fonts/left-brace.sml +++ b/fonts/left-brace.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/left-bracket.sml b/fonts/left-bracket.sml index df2d24c..ca1736c 100644 --- a/fonts/left-bracket.sml +++ b/fonts/left-bracket.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/left-paren.sml b/fonts/left-paren.sml index 5d17b92..92790bf 100644 --- a/fonts/left-paren.sml +++ b/fonts/left-paren.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-a.sml b/fonts/lower-case-a.sml index 78be494..a58c3c1 100644 --- a/fonts/lower-case-a.sml +++ b/fonts/lower-case-a.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-b.sml b/fonts/lower-case-b.sml index 16150cd..3833aaa 100644 --- a/fonts/lower-case-b.sml +++ b/fonts/lower-case-b.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-c.sml b/fonts/lower-case-c.sml index 4042e89..db90b2e 100644 --- a/fonts/lower-case-c.sml +++ b/fonts/lower-case-c.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-d.sml b/fonts/lower-case-d.sml index 7863e2e..226c900 100644 --- a/fonts/lower-case-d.sml +++ b/fonts/lower-case-d.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-e.sml b/fonts/lower-case-e.sml index 9b0a022..ac6c989 100644 --- a/fonts/lower-case-e.sml +++ b/fonts/lower-case-e.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-f.sml b/fonts/lower-case-f.sml index d2d7880..c4c7e39 100644 --- a/fonts/lower-case-f.sml +++ b/fonts/lower-case-f.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-g.sml b/fonts/lower-case-g.sml index 964dd36..c1095b1 100644 --- a/fonts/lower-case-g.sml +++ b/fonts/lower-case-g.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-h.sml b/fonts/lower-case-h.sml index 6407538..85a39bd 100644 --- a/fonts/lower-case-h.sml +++ b/fonts/lower-case-h.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-i.sml b/fonts/lower-case-i.sml index a331b7b..dfc0476 100644 --- a/fonts/lower-case-i.sml +++ b/fonts/lower-case-i.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-j.sml b/fonts/lower-case-j.sml index 187543f..dc7304f 100644 --- a/fonts/lower-case-j.sml +++ b/fonts/lower-case-j.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-k.sml b/fonts/lower-case-k.sml index d74ffbb..eb6ecc7 100644 --- a/fonts/lower-case-k.sml +++ b/fonts/lower-case-k.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-l.sml b/fonts/lower-case-l.sml index b9ba805..cba5b68 100644 --- a/fonts/lower-case-l.sml +++ b/fonts/lower-case-l.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-m.sml b/fonts/lower-case-m.sml index 700c78a..3e659d0 100644 --- a/fonts/lower-case-m.sml +++ b/fonts/lower-case-m.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-n.sml b/fonts/lower-case-n.sml index 9c9fc96..88c7e7a 100644 --- a/fonts/lower-case-n.sml +++ b/fonts/lower-case-n.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-o.sml b/fonts/lower-case-o.sml index ff49e3f..8e95e6b 100644 --- a/fonts/lower-case-o.sml +++ b/fonts/lower-case-o.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-p.sml b/fonts/lower-case-p.sml index d90a5cb..6dbe913 100644 --- a/fonts/lower-case-p.sml +++ b/fonts/lower-case-p.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-q.sml b/fonts/lower-case-q.sml index 0523bcc..3c7af32 100644 --- a/fonts/lower-case-q.sml +++ b/fonts/lower-case-q.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-r.sml b/fonts/lower-case-r.sml index 1a0841d..c25dc97 100644 --- a/fonts/lower-case-r.sml +++ b/fonts/lower-case-r.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-s.sml b/fonts/lower-case-s.sml index 8858742..103a576 100644 --- a/fonts/lower-case-s.sml +++ b/fonts/lower-case-s.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-t.sml b/fonts/lower-case-t.sml index 665b6bf..e5fa4d2 100644 --- a/fonts/lower-case-t.sml +++ b/fonts/lower-case-t.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-u.sml b/fonts/lower-case-u.sml index 4a8f892..a36dec1 100644 --- a/fonts/lower-case-u.sml +++ b/fonts/lower-case-u.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-v.sml b/fonts/lower-case-v.sml index 4073b6c..c77a36c 100644 --- a/fonts/lower-case-v.sml +++ b/fonts/lower-case-v.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-w.sml b/fonts/lower-case-w.sml index 5b4bc6e..665eda5 100644 --- a/fonts/lower-case-w.sml +++ b/fonts/lower-case-w.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-x.sml b/fonts/lower-case-x.sml index 1e96496..645270a 100644 --- a/fonts/lower-case-x.sml +++ b/fonts/lower-case-x.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,274 +14,166 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-y.sml b/fonts/lower-case-y.sml index 20d64e0..cbe269d 100644 --- a/fonts/lower-case-y.sml +++ b/fonts/lower-case-y.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/lower-case-z.sml b/fonts/lower-case-z.sml index d846b9d..22414af 100644 --- a/fonts/lower-case-z.sml +++ b/fonts/lower-case-z.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/question-mark.sml b/fonts/question-mark.sml index 38f37fb..592f74b 100644 --- a/fonts/question-mark.sml +++ b/fonts/question-mark.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/quotes-double.sml b/fonts/quotes-double.sml index e1829b3..36f67d4 100644 --- a/fonts/quotes-double.sml +++ b/fonts/quotes-double.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/quotes-single.sml b/fonts/quotes-single.sml index 020cfef..d4f01fb 100644 --- a/fonts/quotes-single.sml +++ b/fonts/quotes-single.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,34 +14,22 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/right-angled-bracket.sml b/fonts/right-angled-bracket.sml index ebc78bd..8b6452c 100644 --- a/fonts/right-angled-bracket.sml +++ b/fonts/right-angled-bracket.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/right-brace.sml b/fonts/right-brace.sml index 73917fc..2e0b01e 100644 --- a/fonts/right-brace.sml +++ b/fonts/right-brace.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/right-bracket.sml b/fonts/right-bracket.sml index 7c5f624..a7b379e 100644 --- a/fonts/right-bracket.sml +++ b/fonts/right-bracket.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/right-paren.sml b/fonts/right-paren.sml index 69efa16..a474829 100644 --- a/fonts/right-paren.sml +++ b/fonts/right-paren.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/semicolon.sml b/fonts/semicolon.sml index 2d445c7..bed5383 100644 --- a/fonts/semicolon.sml +++ b/fonts/semicolon.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/underscore.sml b/fonts/underscore.sml index d0f228c..e4138df 100644 --- a/fonts/underscore.sml +++ b/fonts/underscore.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,34 +14,22 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/unknown.sml b/fonts/unknown.sml index f133a14..317db59 100644 --- a/fonts/unknown.sml +++ b/fonts/unknown.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 1.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 12.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 13.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 6.000000000000000, scale, halfWidth), yToNdc (yOffset, 0.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-a.sml b/fonts/upper-case-a.sml index f343d2f..e1114a9 100644 --- a/fonts/upper-case-a.sml +++ b/fonts/upper-case-a.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-b.sml b/fonts/upper-case-b.sml index 9f5ef7b..f6a5d3e 100644 --- a/fonts/upper-case-b.sml +++ b/fonts/upper-case-b.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-c.sml b/fonts/upper-case-c.sml index bd6186f..43f26f9 100644 --- a/fonts/upper-case-c.sml +++ b/fonts/upper-case-c.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-d.sml b/fonts/upper-case-d.sml index e189e43..89d6360 100644 --- a/fonts/upper-case-d.sml +++ b/fonts/upper-case-d.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-e.sml b/fonts/upper-case-e.sml index 50b0da8..c6a8966 100644 --- a/fonts/upper-case-e.sml +++ b/fonts/upper-case-e.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-f.sml b/fonts/upper-case-f.sml index b44fcf5..5484c2a 100644 --- a/fonts/upper-case-f.sml +++ b/fonts/upper-case-f.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-g.sml b/fonts/upper-case-g.sml index 2c43b58..f0d9183 100644 --- a/fonts/upper-case-g.sml +++ b/fonts/upper-case-g.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-h.sml b/fonts/upper-case-h.sml index 797fac6..7dffb14 100644 --- a/fonts/upper-case-h.sml +++ b/fonts/upper-case-h.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-i.sml b/fonts/upper-case-i.sml index 73c05c0..8d9cf18 100644 --- a/fonts/upper-case-i.sml +++ b/fonts/upper-case-i.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-j.sml b/fonts/upper-case-j.sml index 94f6188..d4ae480 100644 --- a/fonts/upper-case-j.sml +++ b/fonts/upper-case-j.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-k.sml b/fonts/upper-case-k.sml index 1e9a762..b794e66 100644 --- a/fonts/upper-case-k.sml +++ b/fonts/upper-case-k.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-l.sml b/fonts/upper-case-l.sml index b27222a..798e7a9 100644 --- a/fonts/upper-case-l.sml +++ b/fonts/upper-case-l.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-m.sml b/fonts/upper-case-m.sml index 9a41efa..cd42c68 100644 --- a/fonts/upper-case-m.sml +++ b/fonts/upper-case-m.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-n.sml b/fonts/upper-case-n.sml index 663cdb2..340ce20 100644 --- a/fonts/upper-case-n.sml +++ b/fonts/upper-case-n.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-o.sml b/fonts/upper-case-o.sml index 45a394c..bc9a66f 100644 --- a/fonts/upper-case-o.sml +++ b/fonts/upper-case-o.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-p.sml b/fonts/upper-case-p.sml index 329a43c..3beb047 100644 --- a/fonts/upper-case-p.sml +++ b/fonts/upper-case-p.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,124 +14,76 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-q.sml b/fonts/upper-case-q.sml index ab8179d..b30bfa5 100644 --- a/fonts/upper-case-q.sml +++ b/fonts/upper-case-q.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 11.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-r.sml b/fonts/upper-case-r.sml index 280f73b..efe3079 100644 --- a/fonts/upper-case-r.sml +++ b/fonts/upper-case-r.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-s.sml b/fonts/upper-case-s.sml index a55b87c..3968d35 100644 --- a/fonts/upper-case-s.sml +++ b/fonts/upper-case-s.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,214 +14,130 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-t.sml b/fonts/upper-case-t.sml index f573958..f449944 100644 --- a/fonts/upper-case-t.sml +++ b/fonts/upper-case-t.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,64 +14,40 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-u.sml b/fonts/upper-case-u.sml index e0bf366..9728c26 100644 --- a/fonts/upper-case-u.sml +++ b/fonts/upper-case-u.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,94 +14,58 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-v.sml b/fonts/upper-case-v.sml index d266c79..0eea4dc 100644 --- a/fonts/upper-case-v.sml +++ b/fonts/upper-case-v.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-w.sml b/fonts/upper-case-w.sml index 276153e..bf7bc44 100644 --- a/fonts/upper-case-w.sml +++ b/fonts/upper-case-w.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 7.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-x.sml b/fonts/upper-case-x.sml index f67e3c8..6c29f31 100644 --- a/fonts/upper-case-x.sml +++ b/fonts/upper-case-x.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,274 +14,166 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-y.sml b/fonts/upper-case-y.sml index 4ef2702..fd17e42 100644 --- a/fonts/upper-case-y.sml +++ b/fonts/upper-case-y.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,154 +14,94 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 5.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end diff --git a/fonts/upper-case-z.sml b/fonts/upper-case-z.sml index fe855f3..3fccab6 100644 --- a/fonts/upper-case-z.sml +++ b/fonts/upper-case-z.sml @@ -6,7 +6,7 @@ struct fun yToNdc (yOffset, ypos, scale, halfHeight) = ~(((ypos * scale + yOffset) - halfHeight) / halfHeight) - fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight) = + fun lerp (xOffset: Real32.real, yOffset, scale, windowWidth, windowHeight, r, g, b) = let val halfWidth = windowWidth / 2.0 val halfHeight = windowHeight / 2.0 @@ -14,184 +14,112 @@ struct #[ xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 3.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 0.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 10.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 5.000000000000000, scale, halfWidth), yToNdc (yOffset, 9.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 1.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 8.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 2.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 6.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 3.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 4.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000, +r, g, b, xToNdc (xOffset, 4.000000000000000, scale, halfWidth), yToNdc (yOffset, 2.000000000000000, scale, halfHeight), -0.000000000000000, -0.000000000000000, -0.000000000000000 +r, g, b ] end end