Example #1
0
        public static Color Transform(this Color color, IRgbTransformMatrix transform)
        {
            if (transform == null)
            {
                throw new ArgumentNullException(nameof(transform));
            }

            var c0 = color.R / 255.0;
            var c1 = color.G / 255.0;
            var c2 = color.B / 255.0;

            var r =
                (transform[0, 0] * c0) +
                (transform[0, 1] * c1) +
                (transform[0, 2] * c2);

            var g =
                (transform[1, 0] * c0) +
                (transform[1, 1] * c1) +
                (transform[1, 2] * c2);

            var b =
                (transform[2, 0] * c0) +
                (transform[2, 1] * c1) +
                (transform[2, 2] * c2);

            r = EnsureBound(r);
            g = EnsureBound(g);
            b = EnsureBound(b);

            return(new Color(r, g, b));
        }
Example #2
0
 internal GameColors(IRgbTransformMatrix transform)
 {
     Hud          = EliteOrange.Transform(transform);
     AnalysisMode = _analysisMode.Transform(transform);
 }