Example #1
0
void cdboxSIM(cdCtxCanvas* ctxcanvas, int xmin, int xmax, int ymin, int ymax)
{
  cdCanvas* canvas = ((cdCtxCanvasBase*)ctxcanvas)->canvas;
  
  if (canvas->use_matrix)
  {
    cdPoint poly[5]; /* leave room of one more point */
    poly[0].x = xmin; poly[0].y = ymin;
    poly[1].x = xmin; poly[1].y = ymax;
    poly[2].x = xmax; poly[2].y = ymax;
    poly[3].x = xmax; poly[3].y = ymin;
    canvas->cxPoly(canvas->ctxcanvas, CD_FILL, poly, 4);
  }
  else
  {
    cdSimulation* simulation = canvas->simulation;
    int y;

    /* must set line attributes here, because fill simulation use cxLine and cxPixel */
    int old_line_style = cdCanvasLineStyle(canvas, CD_CONTINUOUS);
    int old_line_width = cdCanvasLineWidth(canvas, 1);

    for(y=ymin;y<=ymax;y++)
      simFillHorizLine(simulation, xmin, y, xmax);

    cdCanvasLineStyle(canvas, old_line_style);
    cdCanvasLineWidth(canvas, old_line_width);
  }
}
Example #2
0
File: sim.c Project: Vulcanior/IUP
void simFillHorizBox(cdSimulation* simulation, int xmin, int xmax, int ymin, int ymax)
{
  int y;
  for(y=ymin;y<=ymax;y++)
    simFillHorizLine(simulation, xmin, y, xmax);
}