Manifold 3.0
Robust geometry
 
Loading...
Searching...
No Matches

Debugging features. More...

Classes

struct  ExecutionParams
 Global parameters that control debugging output. Only has an effect when compiled with the MANIFOLD_DEBUG flag. More...
 
struct  userErr
 
struct  topologyErr
 
struct  geometryErr
 

Macros

#define DEBUG_ASSERT(condition, EX, msg)
 
#define ASSERT(condition, EX)
 

Typedefs

using logicErr = std::logic_error
 

Functions

ExecutionParamsManifoldParams ()
 
std::string ToString (const Manifold::Error &error)
 
std::ostream & operator<< (std::ostream &stream, const Manifold::Error &error)
 
template<typename Ex >
void AssertFail (const char *file, int line, const char *cond, const char *msg)
 
template<typename Ex >
void AssertFail (const char *file, int line, const std::string &cond, const std::string &msg)
 

Detailed Description

Debugging features.

The features require compiler flags to be enabled. Assertions are enabled with the MANIFOLD_DEBUG flag and then controlled with ExecutionParams.


Class Documentation

◆ manifold::ExecutionParams

struct manifold::ExecutionParams

Global parameters that control debugging output. Only has an effect when compiled with the MANIFOLD_DEBUG flag.

Class Members
bool intermediateChecks = false

Perform extra sanity checks and assertions on the intermediate data structures.

bool verbose = false

Verbose output primarily of the Boolean, including timing info and vector sizes.

bool processOverlaps = true

If processOverlaps is false, a geometric check will be performed to assert all triangles are CCW.

bool suppressErrors = false

Suppresses printed errors regarding CW triangles. Has no effect if processOverlaps is true.

bool cleanupTriangles = true Perform optional but recommended triangle cleanups in SimplifyTopology()

Macro Definition Documentation

◆ DEBUG_ASSERT

#define DEBUG_ASSERT ( condition,
EX,
msg )
Value:
if (!(condition)) AssertFail<EX>(__FILE__, __LINE__, #condition, msg);

◆ ASSERT

#define ASSERT ( condition,
EX )
Value:
if (!(condition)) throw(EX);

Function Documentation

◆ ManifoldParams()

ExecutionParams & ManifoldParams ( )

Allows modification of the assertions checked in MANIFOLD_DEBUG mode.

Returns
ExecutionParams&