25 int i_width, i_height, maxval;
32 input = fopen(
png.file_name,
"rb");
36 if (fscanf(input,
"P6 %d %d %d", &i_width, &i_height, &maxval) != 3)
41 if (i_width !=
png.width || i_height !=
png.height)
42 G_fatal_error(
"PNG: input file has incorrect dimensions: expected: "
44 png.width,
png.height, i_width, i_height);
46 for (y = 0, p =
png.grid; y <
png.height; y++) {
47 for (
x = 0;
x <
png.width;
x++, p++) {
73 int i_width, i_height, maxval;
80 mask_name[strlen(mask_name) - 2] =
'g';
82 input = fopen(mask_name,
"rb");
84 G_fatal_error(
"PNG: couldn't open input mask file %s", mask_name);
86 if (fscanf(input,
"P5 %d %d %d", &i_width, &i_height, &maxval) != 3)
91 if (i_width !=
png.width || i_height !=
png.height)
92 G_fatal_error(
"PNG: input mask file has incorrect dimensions: "
93 "expected: %dx%d got: %dx%d",
94 png.width,
png.height, i_width, i_height);
98 for (y = 0, p =
png.grid; y <
png.height; y++) {
99 for (
x = 0;
x <
png.width;
x++, p++) {
102 int k = fgetc(input);
104 k = k * 255 / maxval;
void G_free(void *buf)
Free allocated memory.
unsigned int png_get_color(int r, int g, int b, int a)
void G_fatal_error(const char *msg,...)
Print a fatal error message to stderr.
GRASS png display driver - header file.
char * G_store(const char *s)
Copy string to allocated memory.