My overall objective is to take a heading range(0° to 360°, remap it to a range of 0 to 1, and send that value to a separate function to force a specific frame of an animation to play.
I have done several searches, and found several different applications ranging from normalize to lerp, but I think I may have confused myself. Any help would be appreciated!
So the simple solution is to just divide by the max value of 360. This works because your min is 0.
x/360 = percentage
If the range wasn’t 0->m, but instead n->m. You’d need to subtract the min, and divide by the range (it’s literally the inverse of lerp).
(x - n) / (m - n) = percentage
You can see if you substitute 0 in for n, you get the x / m for the previous.
And lets say you needed to map it to a range of a → b, you can take that 0->1 and multiply it by said range using lerp.
((x - n) / (m - n)) * (b - a) + a
you could see this as f(g(x)) where g(x) is the inverse lerp, and f(x) is lerp.
g(x) = (x-n) / (m-n)
f(x) = x * (b - a) + a
replace f(g(x)) = g(x) * (b - a) + a
It was right in front of my face. Thank you for the response.