#include "neato.h"
#include <assert.h>
#include <string.h>
#include <math.h>
#include "poly.h"
#include "mem.h"
Include dependency graph for poly.c:
Go to the source code of this file.
Defines | |
#define | BOX 1 |
#define | ISBOX(p) ((p)->kind & BOX) |
#define | CIRCLE 2 |
#define | ISCIRCLE(p) ((p)->kind & CIRCLE) |
#define | PUTPT(P, X, Y) ((P).x=(X),(P).y=(Y)) |
#define | Pin 1 |
#define | Qin 2 |
#define | Unknown 0 |
#define | advance(A, B, N) (B++, A = (A+1)%N) |
Functions | |
void | polyFree () |
void | breakPoly (Poly *pp) |
void | makePoly (Poly *pp, Agnode_t *n, double margin) |
int | polyOverlap (Point p, Poly *pp, Point q, Poly *qp) |
#define advance | ( | A, | |||
B, | |||||
N | ) | (B++, A = (A+1)%N) |
#define CIRCLE 2 |
#define ISBOX | ( | p | ) | ((p)->kind & BOX) |
#define ISCIRCLE | ( | p | ) | ((p)->kind & CIRCLE) |
#define PUTPT | ( | P, | |||
X, | |||||
Y | ) | ((P).x=(X),(P).y=(Y)) |
void breakPoly | ( | Poly * | pp | ) |
Definition at line 178 of file poly.c.
References agerr(), AGERR, BOX, CIRCLE, Poly::corner, Poly::kind, box::LL, N_GNEW, ND_clust, ND_height, ND_shape, ND_shape_info, ND_width, Poly::nverts, Poly::origin, PUTPT, polygon_t::regular, SH_POINT, SH_POLY, SH_RECORD, shapeOf(), polygon_t::sides, streq, box::UR, polygon_t::vertices, Poly::verts, Point::x, pointf_s::x, point::x, Point::y, pointf_s::y, and point::y.
Definition at line 402 of file poly.c.
References addPt(), Poly::corner, ISBOX, ISCIRCLE, N_GNEW, NULL, Poly::nverts, Poly::origin, Poly::verts, Point::x, and Point::y.