/* Brian O'Connor * * vispoly.h: functions & data structures for creating a visibility * polygon */ #ifndef VISPOLY_H #define VISPOLY_H #include "input.h" #include "line.h" #define CALCPOLY_PTS 40 class EdgeInfo; class VPEdge: public Line { public: VPEdge(Point *p1, Point *p2) : Line(p1, p2) { bGap = FALSE; bMark = FALSE; fullEdge = NULL;} Line *fullEdge; int bGap; int bMark; }; class VPoly { public: int nEdges; VPEdge **edges; }; int MakeVisPoly(EdgeInfo *eInfo, Point *p, VPoly *vpoly); void ExtendGapEdge(Point *p1, Point *p2, EdgeInfo *e, EdgeInfo *vEdges, Obstacle *o2); #endif /*VISPOLY_H*/