]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake3/common/polylib.h
Importing code changes for q3map2 from Rambetter-math-fix-experiments branch
[xonotic/netradiant.git] / tools / quake3 / common / polylib.h
index 58b21d5a2a83a4d02799c90803d289e1c3b617e8..5e560d9d75dad4d3625886651d5621d9dbeef247 100644 (file)
@@ -55,3 +55,20 @@ void ChopWindingInPlace (winding_t **w, vec3_t normal, vec_t dist, vec_t epsilon
 // frees the original if clipped
 
 void pw(winding_t *w);
+
+
+///////////////////////////////////////////////////////////////////////////////////////
+// Below is double-precision stuff.  This was initially needed by the base winding code
+// in q3map2 brush processing.
+///////////////////////////////////////////////////////////////////////////////////////
+
+typedef struct
+{
+       int             numpoints;
+       vec3_accu_t     p[4]; // variable sized
+} winding_accu_t;
+
+winding_accu_t *BaseWindingForPlaneAccu(vec3_t normal, vec_t dist);
+void   ChopWindingInPlaceAccu(winding_accu_t **w, vec3_t normal, vec_t dist, vec_t epsilon);
+winding_t      *CopyWindingAccuToRegular(winding_accu_t *w);
+void   FreeWindingAccu(winding_accu_t *w);