[webkit-reviews] review requested: [Bug 13842] Simplify Color::light() and Color::dark() : [Attachment 14684] Simpler implementation

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 23 09:09:22 PDT 2007

mitz at webkit.org has asked  for review:
Bug 13842: Simplify Color::light() and Color::dark()

Attachment 14684: Simpler implementation

------- Additional Comments from mitz at webkit.org
(In reply to comment #3)
> (From update of attachment 14684 [edit])
> Does this really give the same values as before? If so, seems fine. But I was

> under the impression that scaling value didn't affect the 3 channels equally.

If you look at convertHSVToRGB() you'll see that its result can be expressed as
"v times some vector x whose components do not depend on v", so indeed for
given h and s components, scaling v affects the 3 channels equally. (IIRC in
the HSL space, L doesn't affect all channels equally, since L=1.0 maps to

> I don't think dark() properly handles the case where all three of r, g, and b

> are zero.

I verified that in that case (v - 0.33f) / v is -inf and therefore the
multiplier is 0, so the result is <0,0,0,alpha>, which is what I would expect.

More information about the webkit-reviews mailing list