2
#include <grass/display.h>
3
#include <grass/raster.h>
5
#include "local_proto.h"
7
int drawcell(View * view)
14
struct Colors *colors;
19
if (!view->cell.configured)
21
if (view == VIEW_MAP1 || view == VIEW_MAP1_ZOOM) {
22
colors = &VIEW_MAP1->cell.colors;
23
read_colors = view == VIEW_MAP1;
26
colors = &VIEW_MAP2->cell.colors;
27
read_colors = view == VIEW_MAP2;
30
G_free_colors(colors);
31
if (G_read_colors(view->cell.name, view->cell.mapset, colors) < 0)
40
G_set_window(&view->cell.head);
41
nrows = G_window_rows();
42
ncols = G_window_cols();
44
left = view->cell.left;
47
R_standard_color(BLUE);
48
Outline_box(top, top + nrows - 1, left, left + ncols - 1);
50
if (getenv("NO_DRAW"))
53
fd = G_open_cell_old(view->cell.name, view->cell.mapset);
56
cell = G_allocate_cell_buf();
59
sprintf(msg, "Plotting %s ...", view->cell.name);
62
D_cell_draw_setup(top, top + nrows, left, left + ncols);
63
for (row = 0; row < nrows; row++) {
64
if (G_get_map_row_nomask(fd, cell, row) < 0)
66
D_draw_c_raster(row, cell, colors);
72
if (colors != &VIEW_MAP1->cell.colors)
73
set_colors(&VIEW_MAP1->cell.colors);