Graphviz 14.1.1~dev.20251209.0353
Loading...
Searching...
No Matches
poly.h File Reference
#include <stdbool.h>
#include <util/api.h>
#include <neatogen/geometry.h>
Include dependency graph for poly.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Poly
 

Functions

PRIVATE bool polyOverlap (Point, Poly *, Point, Poly *)
 
PRIVATE int makePoly (Poly *, Agnode_t *, double, double)
 
PRIVATE int makeAddPoly (Poly *, Agnode_t *, double, double)
 
PRIVATE void breakPoly (Poly *)
 

Function Documentation

◆ breakPoly()

PRIVATE void breakPoly ( Poly pp)

Definition at line 27 of file poly.c.

References free(), and Poly::verts.

Referenced by freeNodes().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeAddPoly()

PRIVATE int makeAddPoly ( Poly pp,
Agnode_t n,
double  xmargin,
double  ymargin 
)

Definition at line 111 of file poly.c.

References agerrorf(), bbox(), BOX, CIRCLE, Poly::corner, genRound(), gv_calloc(), isBox(), Poly::kind, boxf::LL, makeScaledTransPoint(), ND_clust, ND_height, ND_shape, ND_shape_info, ND_width, Poly::nverts, Poly::origin, PS2INCH, PUTPT, SH_POINT, SH_POLY, SH_RECORD, shapeOf(), streq(), boxf::UR, Poly::verts, pointf_s::x, Point::x, pointf_s::y, and Point::y.

Referenced by makeInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makePoly()

PRIVATE int makePoly ( Poly pp,
Agnode_t n,
double  xmargin,
double  ymargin 
)

Definition at line 199 of file poly.c.

References agerrorf(), bbox(), BOX, CIRCLE, Poly::corner, genRound(), gv_calloc(), inflatePts(), isBox(), Poly::kind, boxf::LL, makeScaledPoint(), ND_clust, ND_height, ND_shape, ND_shape_info, ND_width, Poly::nverts, Poly::origin, PS2INCH, PUTPT, SH_POINT, SH_POLY, SH_RECORD, shapeOf(), streq(), boxf::UR, Poly::verts, pointf_s::x, Point::x, pointf_s::y, and Point::y.

Referenced by makeInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ polyOverlap()

PRIVATE bool polyOverlap ( Point  p,
Poly pp,
Point  q,
Poly qp 
)

Definition at line 406 of file poly.c.

References addpt(), Poly::corner, dx, dy, edgesIntersect(), free(), inBox(), inPoly(), ISBOX(), ISCIRCLE(), Poly::nverts, Poly::origin, pintersect(), transCopy(), Poly::verts, Point::x, and Point::y.

Referenced by countOverlap().

Here is the call graph for this function:
Here is the caller graph for this function: