aboutsummaryrefslogtreecommitdiff
path: root/src/mtx_qhull/zhull.h
diff options
context:
space:
mode:
authorFranz Zotter <fzotter@users.sourceforge.net>2012-08-21 08:10:42 +0000
committerFranz Zotter <fzotter@users.sourceforge.net>2012-08-21 08:10:42 +0000
commit5086631c287a954bae9c2bb4a987cb7f1eda3e57 (patch)
tree344393f7d6b8cbed979444c48f23003a232eb9c4 /src/mtx_qhull/zhull.h
parent585ca79e105c6e8ca57a2320c2335623a184ae06 (diff)
convex hull algorithm added
svn path=/trunk/externals/iem/iemmatrix/; revision=16165
Diffstat (limited to 'src/mtx_qhull/zhull.h')
-rw-r--r--src/mtx_qhull/zhull.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/mtx_qhull/zhull.h b/src/mtx_qhull/zhull.h
new file mode 100644
index 0000000..dd520e1
--- /dev/null
+++ b/src/mtx_qhull/zhull.h
@@ -0,0 +1,25 @@
+
+typedef struct facet_ {
+ plane_t plane;
+ list_t corners;
+ list_t outsideset;
+ list_t insideset;
+ size_t farthest_outside_point;
+ list_t neighbors;
+ float maxdistance;
+} facet_t;
+
+typedef struct zhull_ {
+ points_t pts;
+ list_t facets;
+ list_t facets_with_outsidepoints;
+ list_t facets_with_insidepoints;
+} zhull_t;
+
+void calculateZHull(zhull_t *zh,int maxit);
+void printZhull(const zhull_t * const zh);
+void freeZhull(zhull_t *zh);
+zhull_t zhullInitPoints(const float *x, const float *y,
+ const float *z, const size_t num_points);
+void printFacet(const zhull_t * const zh,
+ const facet_t * const f);