Exemplo n.º 1
0
        public ColorRGB RotateAboutBlue(double amount)
        {
            double c = DoubleEx.CosCircle(amount);
            double s = DoubleEx.SinCircle(amount);

            return(new ColorRGB(c * R - s * G, s * R + c * G, B, A));
        }
Exemplo n.º 2
0
        public ColorRGB RotateAboutGreen(double amount)
        {
            double c = DoubleEx.CosCircle(amount);
            double s = DoubleEx.SinCircle(amount);

            return(new ColorRGB(c * R + s * B, G, -s * R + c * B, A));
        }
Exemplo n.º 3
0
        public ColorRGB RotateAboutRed(double amount)
        {
            double c = DoubleEx.CosCircle(amount);
            double s = DoubleEx.SinCircle(amount);

            return(new ColorRGB(R, c * G - s * B, s * G + c * B, A));
        }
Exemplo n.º 4
0
        public ColorCMY RotateAboutYellow(double amount)
        {
            double cs = DoubleEx.CosCircle(amount);
            double sn = DoubleEx.SinCircle(amount);

            return(new ColorCMY(cs * C - sn * M, sn * C + cs * M, Y, Z));
        }
Exemplo n.º 5
0
        public ColorCMY RotateAboutMagenta(double amount)
        {
            double cs = DoubleEx.CosCircle(amount);
            double sn = DoubleEx.SinCircle(amount);

            return(new ColorCMY(cs * C + sn * Y, M, -sn * C + cs * Y, Z));
        }
Exemplo n.º 6
0
        public ColorCMY RotateAboutCyan(double amount)
        {
            double cs = DoubleEx.CosCircle(amount);
            double sn = DoubleEx.SinCircle(amount);

            return(new ColorCMY(C, cs * M - sn * Y, sn * M + cs * Y, Z));
        }