You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I was playing around with the library - great work by the way - and encountered some issues when converting back to sRGB.
I noticed them when creating an awt.Color after a few conversions using the library and noticed the sRGB float value was out of range. You can easily reproduce the issue with the following code:
val srgbColor = Srgb(testColor)
val oklabColor = srgbColor.convert<Oklab>()
val computedSrgbColor = oklabColor.convert<Srgb>()
val awtColor = java.awt.Color(computedSrgbColor.r.toFloat(), computedSrgbColor.g.toFloat(), computedSrgbColor.b.toFloat())
The value of computedSrgbColor has a value of r which is 1.0000000001775198, when converted back to Float it rounds back to 1.0. However both the value of g and b, even when converter to float fall out of the range [0,1], and are in fact negative (respectively -6.415840168402798E-8 and -3.9362722935143425E-7).
I was wondering if they are both just expected rounding errors which are safe to be coerced in the range [0,1], or I am missing something which isn't obvious.
For clarification I'm just using the conversion to awt.Color to easily preview them in the debugger :)
The text was updated successfully, but these errors were encountered:
I was playing around with the library - great work by the way - and encountered some issues when converting back to sRGB.
I noticed them when creating an
awt.Color
after a few conversions using the library and noticed the sRGB float value was out of range. You can easily reproduce the issue with the following code:The value of
computedSrgbColor
has a value ofr
which is1.0000000001775198
, when converted back to Float it rounds back to1.0
. However both the value ofg
andb
, even when converter to float fall out of the range [0,1], and are in fact negative (respectively-6.415840168402798E-8
and-3.9362722935143425E-7
).I was wondering if they are both just expected rounding errors which are safe to be coerced in the range [0,1], or I am missing something which isn't obvious.
For clarification I'm just using the conversion to
awt.Color
to easily preview them in the debugger :)The text was updated successfully, but these errors were encountered: