summaryrefslogtreecommitdiff
path: root/hammer/brushops.h
diff options
context:
space:
mode:
Diffstat (limited to 'hammer/brushops.h')
-rw-r--r--hammer/brushops.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/hammer/brushops.h b/hammer/brushops.h
new file mode 100644
index 0000000..8305b44
--- /dev/null
+++ b/hammer/brushops.h
@@ -0,0 +1,33 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#ifndef BRUSHOPS_H
+#define BRUSHOPS_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "MapFace.h"
+
+
+#define ON_PLANE_EPSILON 0.5f // Vertices must be within this many units of the plane to be considered on the plane.
+#define MIN_EDGE_LENGTH_EPSILON 0.1f // Edges shorter than this are considered degenerate.
+#define ROUND_VERTEX_EPSILON 0.01f // Vertices within this many units of an integer value will be rounded to an integer value.
+
+
+void Add3dError(DWORD dwObjectID, LPCTSTR pszReason, PVOID pInfo);
+
+
+winding_t *ClipWinding(winding_t *in, PLANE *split);
+winding_t *CopyWinding(winding_t *w);
+winding_t *NewWinding(int points);
+void FreeWinding (winding_t *w);
+winding_t *CreateWindingFromPlane(PLANE *pPlane);
+size_t WindingSize(int points);
+void RemoveDuplicateWindingPoints(winding_t *pWinding, float fMinDist = 0);
+
+
+#endif // BRUSHOPS_H