示例#1
0
        private TransformationRGBtoLUV getDef(TransformationRGBtoLUV oldColor, TransformationRGBtoLUV newColor)
        {
            TransformationRGBtoLUV def = new TransformationRGBtoLUV("0", "0", "0");

            def.setL(oldColor.getL() - newColor.getL());
            def.setU(oldColor.getU() - newColor.getU());
            def.setV(oldColor.getV() - newColor.getV());
            return(def);
        }
示例#2
0
        private Color findNewPixel(TransformationRGBtoLUV pixelLUV, TransformationRGBtoLUV def)
        {
            TransformationRGBtoLUV newPixel = new TransformationRGBtoLUV("0", "0", "0");

            newPixel.setL(pixelLUV.getL() - def.getL());
            newPixel.setU(pixelLUV.getU() - def.getU());
            newPixel.setV(pixelLUV.getV() - def.getV());

            TransformationLUVtoRGB newPixelRGB = new TransformationLUVtoRGB(Convert.ToString(newPixel.getL()),
                                                                            Convert.ToString(newPixel.getU()), Convert.ToString(newPixel.getV()));

            int red   = newPixelRGB.getRed();
            int green = newPixelRGB.getGreen();
            int blue  = newPixelRGB.getBlue();

            if (red < 0)
            {
                red = 0;
            }
            else if (red > 255)
            {
                red = 255;
            }
            if (blue < 0)
            {
                blue = 0;
            }
            else if (blue > 255)
            {
                blue = 255;
            }
            if (green < 0)
            {
                green = 0;
            }
            else if (green > 255)
            {
                green = 255;
            }
            Color pix = Color.FromArgb(255, red, green, blue);

            return(pix);
        }