00001 /* psPoly - two dimensional polygon. */ 00002 00003 #ifndef PSPOLY_H 00004 #define PSPOLY_H 00005 00006 struct psPoint 00007 /* A two-dimensional point, typically in pixel coordinates. */ 00008 { 00009 struct psPoint *next; 00010 double x, y; /* Position */ 00011 }; 00012 00013 struct psPoly 00014 /* A two-dimensional polygon */ 00015 { 00016 struct psPoly *next; 00017 int ptCount; /* Number of points. */ 00018 struct psPoint *ptList; /* First point in list, which is circular. */ 00019 struct psPoint *lastPoint; /* Last point in list. */ 00020 }; 00021 00022 struct psPoly *psPolyNew(); 00023 /* Create new (empty) polygon */ 00024 00025 void psPolyFree(struct psPoly **pPoly); 00026 /* Free up resources associated with polygon */ 00027 00028 void psPolyAddPoint(struct psPoly *poly, double x, double y); 00029 /* Add point to polygon. */ 00030 00031 #endif /* PSPOLY_H */
1.5.2