コード例 #1
0
        public override Color At(PointType point)
        {
            var colorA = Ap.At(Ap.Transform.Inverse() * point);
            var colorB = Bp.At(Bp.Transform.Inverse() * point);

            return((colorA + colorB) * 0.5);
        }
コード例 #2
0
        public override Color At(PointType point)
        {
            var colorMain = Main.At(point);

            if (colorMain == Main.A)
            {
                return(Ap.At(Ap.Transform.Inverse() * point));
            }
            if (colorMain == Main.B)
            {
                return(Bp.At(Bp.Transform.Inverse() * point));
            }

            var altMain = Color.White - colorMain;

            var colorA = colorMain * Ap.At(Ap.Transform.Inverse() * point);
            var colorB = altMain * Bp.At(Bp.Transform.Inverse() * point);

            return(colorA + colorB);
        }