Files

43 lines
1.2 KiB
Standard ML
Raw Permalink Normal View History

structure AsciiMinus =
struct
fun xToNdc (xOffset, xpos, scale, halfWidth) =
((xpos * scale + xOffset) - halfWidth) / halfWidth
fun yToNdc (yOffset, ypos, scale, halfHeight) =
~(((ypos * scale + yOffset) - halfHeight) / halfHeight)
fun lerp (xOffset: Real32.real, yOffset, z, scale, windowWidth, windowHeight,
r, g, b) =
let
val halfWidth = windowWidth / 2.0
val halfHeight = windowHeight / 2.0
in
#[
xToNdc (xOffset, 0.000000000000000, scale, halfWidth),
yToNdc (yOffset, 8.000000000000000, scale, halfHeight),
z,
r, g, b,
xToNdc (xOffset, 5.000000000000000, scale, halfWidth),
yToNdc (yOffset, 8.000000000000000, scale, halfHeight),
z,
r, g, b,
xToNdc (xOffset, 0.000000000000000, scale, halfWidth),
yToNdc (yOffset, 7.000000000000000, scale, halfHeight),
z,
r, g, b,
xToNdc (xOffset, 0.000000000000000, scale, halfWidth),
yToNdc (yOffset, 7.000000000000000, scale, halfHeight),
z,
r, g, b,
xToNdc (xOffset, 5.000000000000000, scale, halfWidth),
yToNdc (yOffset, 8.000000000000000, scale, halfHeight),
z,
r, g, b,
xToNdc (xOffset, 5.000000000000000, scale, halfWidth),
yToNdc (yOffset, 7.000000000000000, scale, halfHeight),
z,
r, g, b
]
end
end