private Tuple <Point, Color> ComputeColor(Point p, int max, ColorRamp colorRamp) { var current = _hitPlot.GetHitsForPoint(p); var ratio = Gamma(1.0 - Math.Pow(Math.E, -10.0 * current / max)); return(Tuple.Create(p, colorRamp.GetColor(ratio).ToColor())); }
private Tuple <Point, Color> ComputeColor(Point p, int maxRed, int maxGreen, int maxBlue) { var currentRed = _hitPlotRed.GetHitsForPoint(p); var currentGreen = _hitPlotGreen.GetHitsForPoint(p); var currentBlue = _hitPlotBlue.GetHitsForPoint(p); var expRed = Gamma(1.0 - Math.Pow(Math.E, -10.0 * currentRed / maxRed)); var expGreen = Gamma(1.0 - Math.Pow(Math.E, -10.0 * currentGreen / maxGreen)); var expBlue = Gamma(1.0 - Math.Pow(Math.E, -10.0 * currentBlue / maxBlue)); var color = Color.FromArgb( (int)(255 * expRed), (int)(255 * expGreen), (int)(255 * expBlue)); return(Tuple.Create(p, color)); }