AcGe类的误差

struct AcGeContext {
  AcGeTol gTol;
  void (* gErrorFunc)();
  void (* gOrthoVector)(const AcGeVector3d&,AcGeVector3d&);
  void* (* gAllocMem)(size_t);
  void* (* gAllocMemLeak)(size_t, const char *, int);
  void (* gFreeMem)(void*);
  void* (* gAllocMemNear)(size_t, AcGe::metaTypeIndex, const void*);
  void* (* gAllocMemNearVector)(size_t, AcGe::metaTypeIndex, unsigned int, const void*);
  void (* gSetExternalStore)(const void*);
  void (* gAssertFunc)(const ACHAR *condition, const ACHAR *filename, int lineNumber, const ACHAR *status);
};

gegbl.h

Members 
Description 
AcGeTol gTol; 
Provides a "global" default tolerance object. This is an AcGeTol object that contains the default AcGeTol tolerance values (equalPoint and equalVector tolerances set to 1.e-10). 
void (* gErrorFunc)(); 
This function pointer can be set to point to a function that can be used to handle errors. By default, this pointer points to a function that is empty (that is, does nothing more than return). 
void (* gOrthoVector)(const AcGeVector3d&,AcGeVector3d&); 
This function pointer goes to a function that calculates a vector that is orthogonal to vec and sets orthoVec to the result.
If the absolute values of the X and Y components are each less than 1/64, then: orthoVec.x is set to vec.z orthoVec.y is set to 0.0 orthoVec.z is set to -vec.x
Otherwise: orthoVec.x is set to -vec.y orthoVec.y is set to vec.x orthoVec.z is set to 0.0 
void* (* gAllocMem)(size_t); 
This function pointer points to a user-defined function for allocating memory. All new operations in gelib go through the function pointed to by gAllocMem. If an application is using a different memory manager than gelib, then this function pointer can be set to point to the application's own memory allocation function. This avoids problems that arise from having an application delete objects that were created by gelib using a different memory manager than the application. 
void (* gFreeMem)(void*); 
This function pointer points to a user-defined function for freeing memory. All delete operations in gelib go through the function pointed to by gFreeMem. 

The AcGeContext structure provides a namespace for a tolerance data value and a few functions that are used throughout the AcGe library.

猜你喜欢

转载自blog.csdn.net/pangshaohua/article/details/42146705
今日推荐