System.Drawing.PieChart.EdgeColor.GetRenderingColor C# (CSharp) Method

GetRenderingColor() public static method

Gets the actual color used for rendering.
public static GetRenderingColor ( EdgeColorType edgeColorType, System.Color color ) : System.Color
edgeColorType EdgeColorType
color System.Color
return System.Color
        public static Color GetRenderingColor(EdgeColorType edgeColorType, Color color)
        {
            Debug.Assert(color != Color.Empty);
            if (edgeColorType == EdgeColorType.Contrast || edgeColorType == EdgeColorType.EnhancedContrast)
                edgeColorType = GetContrastColorType(color, edgeColorType);
            float correctionFactor = 0;
            switch (edgeColorType) {
            case EdgeColorType.SystemColor:
                return SystemColors.WindowText;
            case EdgeColorType.SurfaceColor:
                return color;
            case EdgeColorType.FullContrast:
                return GetFullContrastColor(color);
            case EdgeColorType.DarkerThanSurface:
                correctionFactor = -ColorUtil.BrightnessEnhancementFactor1;
                break;
            case EdgeColorType.DarkerDarkerThanSurface:
                correctionFactor = -ColorUtil.BrightnessEnhancementFactor2;
                break;
            case EdgeColorType.LighterThanSurface:
                correctionFactor = +ColorUtil.BrightnessEnhancementFactor1;
                break;
            case EdgeColorType.LighterLighterThanSurface:
                correctionFactor = +ColorUtil.BrightnessEnhancementFactor2;
                break;
            case EdgeColorType.NoEdge:
                return System.Drawing.Color.Transparent;
            }
            return ColorUtil.CreateColorWithCorrectedLightness(color, correctionFactor);
        }