Chipmunk2D Pro API Reference  6.2.1
 All Classes Functions Variables Typedefs Properties Groups Pages
cpPolyline.h
1 // Copyright 2013 Howling Moon Software. All rights reserved.
2 // See http://chipmunk2d.net/legal.php for more information.
3 
4 // Polylines are just arrays of vertexes.
5 // They are looped if the first vertex is equal to the last.
6 // cpPolyline structs are intended to be passed by value and destroyed when you are done with them.
7 typedef struct cpPolyline {
8  int count, capacity;
9  cpVect *verts;
10 } cpPolyline;
11 
13 void cpPolylineDestroy(cpPolyline line);
14 
15 // Returns true if the first vertex is equal to the last.
16 cpBool cpPolylineIsLooped(cpPolyline line);
17 
22 cpPolyline cpPolylineSimplifyCurves(cpPolyline line, cpFloat tol);
23 
28 cpPolyline cpPolylineSimplifyVertexes(cpPolyline line, cpFloat tol);
29 
31 cpPolyline cpPolylineToConvexHull(cpPolyline line, cpFloat tol);
32 
33 
35 typedef struct cpPolylineSet {
36  int count, capacity;
37  cpPolyline *lines;
39 
41 cpPolylineSet *cpPolylineSetAlloc(void);
42 
44 cpPolylineSet *cpPolylineSetInit(cpPolylineSet *set);
45 
47 cpPolylineSet *cpPolylineSetNew(void);
48 
50 void cpPolylineSetDestroy(cpPolylineSet *set, cpBool freePolylines);
51 
53 void cpPolylineSetFree(cpPolylineSet *set, cpBool freePolylines);
54 
60 void cpPolylineSetCollectSegment(cpVect v0, cpVect v1, cpPolylineSet *lines);
61 
70 cpPolylineSet *cpPolylineConvexDecomposition_BETA(cpPolyline line, cpFloat tol);
71