Home || Visual Search || Applications || Architecture || Important Messages || OGL || Src

Vec3Real64 Impala::Core::Array::Element::ColLuv2XYZ ( const Vec3Real64 &  v  )  [inline]

Conversion from Luv to XYZ (1931), D65 reference white point.

ColLuv2XYZ.gif

Definition at line 202 of file ColConvert.h.

References L2Y(), Impala::Core::Array::Element::Vec3Real64::X(), Xn, Impala::Core::Array::Element::Vec3Real64::Y(), Yn, Impala::Core::Array::Element::Vec3Real64::Z(), and Zn.

Referenced by Impala::Core::Array::Element::Color::ToCMY(), Impala::Core::Array::Element::Color::ToHSI(), Impala::Core::Array::Element::Color::ToLab(), Impala::Core::Array::Element::Color::ToOOO(), Impala::Core::Array::Element::Color::ToRGB(), and Impala::Core::Array::Element::Color::ToXYZ().

00203 {
00204     double Y = L2Y(v.X());
00205     double tmp = Xn + 15 * Yn + 3 * Zn;
00206     double unp = 4 * Xn / tmp;
00207     double vnp = 9 * Yn / tmp;
00208     double Q = v.Y() / (13 * v.X()) + unp;
00209     double R = v.Z() / (13 * v.X()) + vnp;
00210     double A = 3 * Y * (5 * R - 3);
00211     double Z = ((Q - 4) * A - 15 * Q * R * Y) / (12 * R);
00212     double X = -(A / R + 3 * Z);
00213     return Vec3Real64(X, Y, Z);
00214 }

Here is the call graph for this function:


Generated on Thu Jan 13 09:17:23 2011 for ImpalaSrc by  doxygen 1.5.1