summaryrefslogtreecommitdiff
path: root/src/sim/sim.h
diff options
context:
space:
mode:
authorscuri <scuri>2009-11-27 22:44:15 +0000
committerscuri <scuri>2009-11-27 22:44:15 +0000
commitd96819756a30e82b52798487343a4fcbdec11a88 (patch)
tree628d1c0bc03ee7eb443dba2850d34b589f2d32c1 /src/sim/sim.h
parentc4ca69d3fa84dca98dce71c7a71b61413d6be165 (diff)
Fixed: polygon filling in the IMAGERGB driver when the segments contain horizontal lines.
Diffstat (limited to 'src/sim/sim.h')
-rw-r--r--src/sim/sim.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/sim/sim.h b/src/sim/sim.h
index 9d96a8a..8421f53 100644
--- a/src/sim/sim.h
+++ b/src/sim/sim.h
@@ -43,8 +43,11 @@ typedef struct _simLineSegment
unsigned short ErrorInc, ErrorAcc;
} simLineSegment;
-void simAddSegment(simLineSegment* segment, int x1, int y1, int x2, int y2, int *y_max, int *y_min);
-int simSegmentInc(simLineSegment* segment, cdCanvas* canvas, int y);
+int simAddSegment(simLineSegment* segment, int x1, int y1, int x2, int y2, int *y_max, int *y_min);
+int simSegmentInc(simLineSegment* segment);
+
+int simPolyFindHorizontalIntervals(simLineSegment *segments, int n_seg, int* xx, int *hh, int y, int height);
+void simPolyMakeSegments(simLineSegment *segments, int *n_seg, cdPoint* poly, int n, int *max_hh, int *y_max, int *y_min);
void simPolyFill(cdSimulation* simulation, cdPoint* poly, int n);
void simLineThin(cdCanvas* canvas, int x1, int y1, int x2, int y2);