Renamed matrix brightness to gamma

This commit is contained in:
Serge
2024-04-26 12:19:39 +02:00
parent 6d36794f5e
commit 7e523d02c0
5 changed files with 75 additions and 80 deletions

View File

@@ -465,7 +465,7 @@ namespace GHelper.AnimeMatrix
int matrixZoom = AppConfig.Get("matrix_zoom", 100);
int matrixContrast = AppConfig.Get("matrix_contrast", 100);
int matrixBrightness = AppConfig.Get("matrix_brightness", 0);
int matrixGamma = AppConfig.Get("matrix_gamma", 0);
int matrixSpeed = AppConfig.Get("matrix_speed", 50);
@@ -487,9 +487,9 @@ namespace GHelper.AnimeMatrix
image.SelectActiveFrame(dimension, i);
if (rotation == MatrixRotation.Planar)
deviceMatrix.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixBrightness);
deviceMatrix.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixGamma);
else
deviceMatrix.GenerateFrameDiagonal(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixBrightness);
deviceMatrix.GenerateFrameDiagonal(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixGamma);
deviceMatrix.AddFrame();
}
@@ -504,9 +504,9 @@ namespace GHelper.AnimeMatrix
else
{
if (rotation == MatrixRotation.Planar)
deviceMatrix.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixBrightness);
deviceMatrix.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixGamma);
else
deviceMatrix.GenerateFrameDiagonal(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixBrightness);
deviceMatrix.GenerateFrameDiagonal(image, matrixZoom, matrixX, matrixY, matrixQuality, matrixContrast, matrixGamma);
deviceMatrix.Present();
}

View File

@@ -344,21 +344,21 @@ namespace GHelper.AnimeMatrix
if (present) Present();
}
private void SetBitmapDiagonal(Bitmap bmp, int deltaX = 0, int deltaY = 0, int contrast = 100, int brightness = 0)
private void SetBitmapDiagonal(Bitmap bmp, int deltaX = 0, int deltaY = 0, int contrast = 100, int gamma = 0)
{
for (int y = 0; y < bmp.Height; y++)
{
for (int x = 0; x < bmp.Width; x++)
{
var pixel = bmp.GetPixel(x, y);
var color = Math.Min((pixel.R + pixel.G + pixel.B + brightness) * contrast / 300, 255);
var color = Math.Min((pixel.R + pixel.G + pixel.B + gamma) * contrast / 300, 255);
if (color > 20)
SetLedDiagonal(x, y, (byte)color, deltaX, deltaY - (FullRows / 2) - 1);
}
}
}
private void SetBitmapLinear(Bitmap bmp, int contrast = 100, int brightness = 0)
private void SetBitmapLinear(Bitmap bmp, int contrast = 100, int gamma = 0)
{
for (int y = 0; y < bmp.Height; y++)
{
@@ -366,7 +366,7 @@ namespace GHelper.AnimeMatrix
if (x % 2 == y % 2)
{
var pixel = bmp.GetPixel(x, y);
var color = Math.Min((pixel.R + pixel.G + pixel.B + brightness) * contrast / 300, 255);
var color = Math.Min((pixel.R + pixel.G + pixel.B + gamma) * contrast / 300, 255);
if (color > 20)
SetLedPlanar(x / 2, y, (byte)color);
}
@@ -413,7 +413,7 @@ namespace GHelper.AnimeMatrix
Present();
}
public void GenerateFrame(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default, int contrast = 100, int brightness = 0)
public void GenerateFrame(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default, int contrast = 100, int gamma = 0)
{
int width = MaxColumns / 2 * 6;
int height = MaxRows;
@@ -440,11 +440,11 @@ namespace GHelper.AnimeMatrix
}
Clear();
SetBitmapLinear(bmp, contrast, brightness);
SetBitmapLinear(bmp, contrast, gamma);
}
}
public void GenerateFrameDiagonal(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default, int contrast = 100, int brightness = 0)
public void GenerateFrameDiagonal(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default, int contrast = 100, int gamma = 0)
{
int width = MaxRows + FullRows;
int height = MaxColumns + FullRows;
@@ -471,7 +471,7 @@ namespace GHelper.AnimeMatrix
}
Clear();
SetBitmapDiagonal(bmp, -panX, height + panY, contrast, brightness);
SetBitmapDiagonal(bmp, -panX, height + panY, contrast, gamma);
}
}