1
0
Fork 0

feat(gui): replace mask to grayscale with fill button

This commit is contained in:
Sean Sube 2023-01-14 10:50:30 -06:00
parent d5c68811d6
commit 3ad3299734
1 changed files with 12 additions and 7 deletions

View File

@ -260,27 +260,30 @@ export function MaskCanvas(props: MaskCanvasProps) {
/> />
<Button <Button
variant='outlined' variant='outlined'
startIcon={<FormatColorFill />} startIcon={<Gradient />}
onClick={() => { onClick={() => {
floodCanvas(bufferRef, floodBelow); floodCanvas(bufferRef, floodBelow);
drawBuffer();
save(); save();
}}> }}>
Gray to black Gray to black
</Button> </Button>
<Button <Button
variant='outlined' variant='outlined'
startIcon={<Gradient />} startIcon={<FormatColorFill />}
onClick={() => { onClick={() => {
floodCanvas(bufferRef, floodGray); floodCanvas(bufferRef, floodBlack);
drawBuffer();
save(); save();
}}> }}>
Grayscale Fill with black
</Button> </Button>
<Button <Button
variant='outlined' variant='outlined'
startIcon={<FormatColorFill />} startIcon={<Gradient />}
onClick={() => { onClick={() => {
floodCanvas(bufferRef, floodAbove); floodCanvas(bufferRef, floodAbove);
drawBuffer();
save(); save();
}}> }}>
Gray to white Gray to white
@ -325,8 +328,8 @@ export function floodAbove(n: number): number {
} }
} }
export function floodGray(n: number): number { export function floodBlack(): number {
return n; return 0;
} }
export function grayToRGB(n: number, o = 1.0): string { export function grayToRGB(n: number, o = 1.0): string {
@ -347,6 +350,8 @@ function floodCanvas(ref: RefObject<HTMLCanvasElement>, flood: FloodFn) {
pixels[i] = final; pixels[i] = final;
pixels[i + 1] = final; pixels[i + 1] = final;
pixels[i + 2] = final; pixels[i + 2] = final;
// eslint-disable-next-line @typescript-eslint/no-magic-numbers
pixels[i + 3] = 255;
} }
} }