feat: variation range
This commit is contained in:
+11
-5
@@ -21,6 +21,7 @@ void print_help(int status_code) {
|
|||||||
"[-s=SLOPE] "
|
"[-s=SLOPE] "
|
||||||
"[-c=R,G,B] "
|
"[-c=R,G,B] "
|
||||||
"[--var=R,G,B] "
|
"[--var=R,G,B] "
|
||||||
|
"[-vr=VAR_RANGE]"
|
||||||
"[-m]\n\n"
|
"[-m]\n\n"
|
||||||
"generate a marble-like pattern bitmap image, blazing fast.\n\n"
|
"generate a marble-like pattern bitmap image, blazing fast.\n\n"
|
||||||
"options:\n"
|
"options:\n"
|
||||||
@@ -33,8 +34,9 @@ void print_help(int status_code) {
|
|||||||
" -p, --pixel pixel size (default: random)\n"
|
" -p, --pixel pixel size (default: random)\n"
|
||||||
" -s, --slope slope [0-255] (default: random)\n"
|
" -s, --slope slope [0-255] (default: random)\n"
|
||||||
" -c, --color base color [0-255,0-255,0-255] (default: random)\n"
|
" -c, --color base color [0-255,0-255,0-255] (default: random)\n"
|
||||||
" -v, --variation base variation [0-255,0-255,0-255] (default: "
|
" -va, --variation fixed variation [0-255,0-255,0-255] (default: "
|
||||||
"random)\n"
|
"random)\n"
|
||||||
|
" -vr, --var-range random variation range [0-255] (default: 30)\n"
|
||||||
" -m, --monochrome black & white generation");
|
" -m, --monochrome black & white generation");
|
||||||
exit(status_code);
|
exit(status_code);
|
||||||
}
|
}
|
||||||
@@ -121,6 +123,8 @@ parameters parse_args(int argc, char **argv) {
|
|||||||
params.file_path = "output.bmp";
|
params.file_path = "output.bmp";
|
||||||
params.monochrome = false;
|
params.monochrome = false;
|
||||||
|
|
||||||
|
unsigned char var_range = 30;
|
||||||
|
|
||||||
bool size_set = false;
|
bool size_set = false;
|
||||||
bool slope_set = false;
|
bool slope_set = false;
|
||||||
bool start_set = false;
|
bool start_set = false;
|
||||||
@@ -171,9 +175,11 @@ parameters parse_args(int argc, char **argv) {
|
|||||||
} else if (is_arg(arg, "-c") || is_arg(arg, "--color")) {
|
} else if (is_arg(arg, "-c") || is_arg(arg, "--color")) {
|
||||||
parse_color(arg, value, params.start);
|
parse_color(arg, value, params.start);
|
||||||
start_set = true;
|
start_set = true;
|
||||||
} else if (is_arg(arg, "-v") || is_arg(arg, "--variation")) {
|
} else if (is_arg(arg, "-va") || is_arg(arg, "--variation")) {
|
||||||
parse_color(arg, value, params.var);
|
parse_color(arg, value, params.var);
|
||||||
var_set = true;
|
var_set = true;
|
||||||
|
} else if (is_arg(arg, "-vr") || is_arg(arg, "--var-range")) {
|
||||||
|
var_range = parse_char(arg, value);
|
||||||
} else if (is_arg(arg, "-m") || is_arg(arg, "--monochrome")) {
|
} else if (is_arg(arg, "-m") || is_arg(arg, "--monochrome")) {
|
||||||
params.monochrome = true;
|
params.monochrome = true;
|
||||||
} else {
|
} else {
|
||||||
@@ -203,9 +209,9 @@ parameters parse_args(int argc, char **argv) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!var_set) {
|
if (!var_set) {
|
||||||
params.var[0] = rand_uchar(20);
|
params.var[0] = rand_uchar(var_range);
|
||||||
params.var[1] = rand_uchar(20);
|
params.var[1] = rand_uchar(var_range);
|
||||||
params.var[2] = rand_uchar(20);
|
params.var[2] = rand_uchar(var_range);
|
||||||
}
|
}
|
||||||
|
|
||||||
return params;
|
return params;
|
||||||
|
|||||||
Reference in New Issue
Block a user