Geogram Version 1.9.2
A programming library of geometric algorithms
|
►NGEO | Global Vorpaline namespace |
NCmdLine | Utilities to process command line arguments |
Nexact | Exact geometric types |
►NFileSystem | Abstraction layer for file-system management |
CMemoryNode | Implementation of a file system stored in memory |
CNode | A Node in a FileSystem |
NGeom | Geometric functions and utilities |
NMatrixUtil | Utilities for manipulating matrices |
►NMemory | Utilities for memory management |
►Caligned_allocator | An allocator that performs aligned memory allocations |
Crebind | Defines the same allocator for other types |
CPointAlignment | Defines the memory alignment of points in a vector |
CPointAlignment< 2 > | PointAlignment specialization for points of dimension 2 |
CPointAlignment< 3 > | PointAlignment specialization for points of dimension 3 |
CPointAlignment< 4 > | PointAlignment specialization for points of dimension 4 |
CPointAlignment< 6 > | PointAlignment specialization for points of dimension 6 |
CPointAlignment< 8 > | PointAlignment specialization for points of dimension 8 |
NMeshCellDescriptors | Gathers declarations of global cell descriptors |
►NNumeric | Defines numeric types used in Vorpaline |
CLimits | Extends std::numeric_limits with additional information |
CLimitsHelper | Limits helper class that extends std::numeric_limits |
CLimitsHelper< T, true > | Specialization of LimitsHelper for numeric types |
►NPCK | PCK (Predicate Construction Kit) implements a set of geometric predicates. PCK uses arithmetic filters (Meyer and Pion), expansion arithmetics (Shewchuk) and simulation of simplicity (Edelsbrunner) |
CPredicateStats | Logs statistics for predicates. The statistics are displayed on exit if the command line flag "sys:statistics" is set. It is used as follows in a predicate: |
NPermutation | Utilities for manipulating permutations |
►NProcess | Abstraction layer for process management and multi-threading |
CBasicSpinLockArray | An array of light-weight synchronisation primitives (spinlocks) |
NProgress | Framework for tracking the progression of a task |
CAABB | Base class for Axis Aligned Bounding Box trees |
CAdaptiveKdTree | Implements NearestNeighborSearch using an Adaptive Kd-tree |
CAmbientOcclusionImpl | Implementation of AmbientOcclusion full screen effect |
CApplication | Base class for all applications |
CArcBall | Enables to interactively define a rotation |
CAttribute | Manages an attribute attached to a set of object |
►CAttribute< bool > | Specialization of Attribute for booleans |
CBoolAttributeAccessor | Accessor class for adapting Attribute<bool> indexing |
CConstBoolAttributeAccessor | Accessor class for adapting Attribute<bool> indexing |
CAttributeBase | Base class for Attributes, that manipulates an attribute stored in an AttributesManager |
CAttributesManager | Managers a set of attributes attached to an object |
CAttributeStore | Notifies a set of AttributeStoreObservers each time the stored array changes size and/or base address and/or dimension |
CAttributeStoreCreator | Internal class for creating an AttributeStore from the type name of its elements |
CAttributeStoreObserver | Base class for attributes. They are notified whenever the AttributeStore is modified |
CBalancedKdTree | Implements NearestNeighborSearch using a balanced Kd-tree |
Cbasic_bindex | A couple of two indices |
Cbasic_quadindex | A tuple of four indices |
Cbasic_trindex | A triple of three indices |
CBinaryInputStream | Binary input file |
CBinaryOutputStream | Binary output file |
►CBinaryStream | Binary stream base class |
CItemSize | Size selector |
CBooleanExpression | A simple parser for boolean expressions |
CBox | Axis-aligned bounding box |
CBox2d | Axis-aligned bounding box |
CBuildRVDMesh | Constructs a polyhedral mesh from a restricted Voronoi diagram |
CCavity | Represents the set of tetrahedra on the boundary of the cavity in a 3D Delaunay triangulation |
CCDT2d | Constrained Delaunay triangulation |
►CCDTBase2d | Base class for constrained Delaunay triangulation |
CDList | Doubly connected triangle list |
CCellDescriptor | Lookup tables that describe the combinatorics of each cell type |
CCellStatusArray | An array of cell status codes associates to each tetrahedron in a Delaunay tetrahedralization |
CCentroidalVoronoiTesselation | CentroidalVoronoiTesselation is the main component of the remeshing algorithm |
CColormap | A Colormap |
CCommand | Manages the GUI of a command with ImGUI |
CCommandInvoker | Abstract class for calling functions or calling member functions |
CConsole | A console, that displays logger messages, and where the user can enter commands |
CConsoleLogger | Logger client that redirects messages to standard output |
Cconst_index_ptr_in_array | Encapsulates a const pointer to an element in an index_t array |
Cconst_index_ptr_range | |
CCoplanarFacets | Detects and retriangulates a set of coplanar facets for MeshSurfaceIntersection |
CCounted | Base class for reference-counted objects |
CCSGBuilder | Implements CSG objects and instructions |
►CCSGCompiler | Creates meshes from OpenSCAD .csg files |
CArgList | A parsed argument list in a .csg file |
CToken | |
CValue | A parsed value in a .csg file |
CCSGMesh | A Mesh with reference counting and bounding box |
CDebugStream | Easy to use functions to save geometry to a Alias Wavefront .obj file for debugging |
►CDelaunay | Abstract interface for Delaunay triangulation in Nd |
CInvalidDimension | Invalid dimension exception |
CInvalidInput | Invalid input exception |
CDelaunay2d | Implementation of Delaunay in 2d |
CDelaunay3d | Implementation of Delaunay in 3d |
CDelaunay_NearestNeighbors | Delaunay interface for NearestNeighbors search |
CEnvironment | Application environment |
CExactCDT2d | Constrained Delaunay Triangulation with vertices that are exact points. Can be used to implement 2D CSG |
Cexpansion | Represents numbers in arbitrary precision with a low-level API |
Cexpansion_nt | Expansion_nt (expansion Number Type) is used to compute the sign of polynoms exactly |
►CFactory | Factory of typed objects |
CRegisterCreator | Helper class to register a creator |
CFactory0 | Factory for types without constructor arguments |
CFactory1 | Factory for types with one constructor argument |
CFactoryCreator0 | Factory creator without constructor arguments |
CFactoryCreator1 | Factory creator with one argument |
CFileLogger | Logger client that redirects messages to a file |
CFrameBufferObject | An OpenGL frame buffer object |
CFrameField | Represents a 3D frame field, i.e. a function that associates a 3d orthonormal basis to each point in 3D space |
CFullScreenEffectImpl | Implementation of full screen effects |
CFunctionCommandInvoker | An implementation of CommandInvoker that calls a function |
CGenColor | A generic color type |
Cgeo_declare_image_serializer | Declares an image serializer for a given extension |
Cgeo_register_attribute_type | Helper class to register new attribute types |
►CGeoFile | Base class for reading or writing Geogram structured binary files |
CAttributeInfo | Internal representation of attributes |
CAttributeSetInfo | Internal representation of an attribute set |
CGeoFileException | GeoFile exception |
CImage | An image |
CImageLibrary | Manages the ImageSerializer repository and the named images |
CImageRasterizer | Draws triangles in an image |
CImageSerializer | Loads and saves images |
CImageSerializer_pgm | |
CImageSerializer_xpm | |
CImageSerializerSTB | Loads and saves images |
CImageSerializerSTBRead | An image serializer that can read images |
CImageSerializerSTBReadWrite | An image serializer that can read and write images |
Cindex_as_iterator | Wraps an integer to be used with the range-based for construct |
Cindex_ptr_in_array | Encapsulates a pointer to an element in an index_t array |
Cindex_ptr_range | |
Cindex_range | A generic index_range bounded by two "non-iterators" |
CInputGeoFile | Used to read a structured binary file |
CInstanceRepo | Repository of unique instances |
CIntegrationSimplex | Computes an objective function and its gradient over a restricted Voronoi diagram |
CintervalBase | Base class for interval arithmetics |
►CintervalRN | Number type for interval arithmetics |
CRounding | |
►CintervalRU | Interval arithmetics in round to upper (RU) mode |
CRounding | Sets FPU rounding mode for using this type of interval |
CIsectInfo | Stores information about a triangle-triangle intersection |
►CKdTree | Base class for all Kd-tree implementations |
CNearestNeighbors | The context for traversing a KdTree |
CLineInput | Reads an ASCII file line per line |
CLocalFeatureSize | Computes an approximation of lfs (local feature size) |
CLogger | Generic logging framework |
CLoggerClient | Logger client base class |
CLoggerStream | Stream used by the Logger |
CLoggerStreamBuf | Stream buffer used by the LoggerStreams |
Clua_to | Converts LUA variables to C++ variables |
Clua_to< bool > | Lua_to specialization for bool |
Clua_to< const char * > | Lua_to specialization for raw string (const char*) |
Clua_to< const std::string & > | Lua_to specialization for reference to std::string |
Clua_to< double > | Lua_to specialization for double |
Clua_to< float > | Lua_to specialization for float |
Clua_to< int > | Lua_to specialization for int |
Clua_to< Numeric::int64 > | Lua_to specialization for Numeric::int64 |
Clua_to< Numeric::uint32 > | Lua_to specialization for Numeric::uint32 |
Clua_to< Numeric::uint64 > | Lua_to specialization for Numeric::uint64 |
Clua_to< std::string > | Lua_to specialization for std::string |
Clua_wrapper | Manages wrappers around C++ functions to be called from LUA |
CMatrix | A matrix type |
CMemberFunctionCommandInvoker | An implementation of CommandInvoker that calls a member function of an object |
CMesh | Represents a mesh |
CMeshAABB2d | Base class for Axis Aligned Bounding Box trees of mesh elements with 2d boxes |
CMeshAABB3d | Base class for Axis Aligned Bounding Box trees of mesh elements with 3d boxes |
CMeshCellCornersStore | Stores the cell corners of a mesh (low-level store) |
CMeshCellFacetsStore | Stores the cell facets of a mesh (low-level store) |
CMeshCells | The cells of a mesh |
CMeshCellsAABB | Axis Aligned Bounding Box tree of mesh cells |
CMeshCellsStore | Stores the cells of a mesh (low-level store) |
CMeshEdges | The edges of a mesh |
CMeshElements | Base class for mesh elements |
CMeshFacetCornersStore | Stores the facet corners of a mesh (low-level store) |
CMeshFacets | The facets of a mesh |
►CMeshFacetsAABB | Axis Aligned Bounding Box tree of mesh facets in 3D |
CIntersection | Stores all the information related with a ray-facet intersection |
CMeshFacetsAABB2d | Axis Aligned Bounding Box tree of mesh facets in 2D |
CMeshFacetsStore | Stores the facets of a mesh (low-level store) |
►CMeshGfx | Draws a mesh using OpenGL |
CFilter | Filters primitives based on their id and on an attribute |
►CMeshHalfedges | Exposes a half-edge like API for traversing a Mesh |
CHalfedge | Stores a reference to a mesh corner and facet, and provides a halfedge-like API |
►CMeshInTriangle | Meshes a single triangle with the constraints that come from the intersections with the other triangles |
CEdge | An edge of the mesh |
CVertex | A vertex of the triangulation |
CMeshIOFlags | Mesh load/save flags |
CMeshIOHandler | Mesh loader and saver |
CMeshSplitCallbacks | A set of callbacks that specify how vertices attributes should be interpolated by subdivision functions |
CMeshSubElementsStore | Base class for mesh sub-element storage |
►CMeshSurfaceIntersection | Computes surface intersections |
CHalfedges | Halfedfge-like API wrappers on top of a triangulated mesh |
CRadialBundles | Represents the set of radial halfedge bundles |
CRadialPolylines | |
CRadialSort | |
CMeshTetrahedralizeParameters | Parameters for mesh_tetrahedralize() |
CMeshVertices | The vertices of a mesh |
CMonoThreadingThreadManager | Single thread ThreadManager |
CMorphoMath | Implements morphological operators for images |
►CNearestNeighborSearch | Abstract interface for nearest neighbor search algorithms |
CKeepInitialValues | A structure to discriminate between the two versions of get_nearest_neighbors() |
COptimizer | Optimizer minimizes a multivariate function |
COutputGeoFile | Used to write a structured binary file |
CPackedArrays | Efficient storage for array of arrays |
CParallelDelaunay3d | Multithreaded implementation of Delaunay in 3d |
CParamValidator | Tests whether texture coordinates attached to a surface mesh define a valid parameterization |
CPeriodic | Utilities for managing 3D periodic space |
►CPeriodicDelaunay3d | Multithreaded implementation of Delaunay in 3d with optional periodic boundary conditions |
CIncidentTetrahedra | Gathers some structures used by some algorithms, makes multithreading more efficient by avoiding dynamic reallocations |
CPlane | A 3D Plane |
CPrincipalAxes3d | |
CProgressClient | Task progress listener |
CProgressTask | Tracks the progress of a task |
CQuaternion | Quaternions are useful for representing rotations |
Crationalg | Rationalg (generic rational) is used to compute the sign of rational fractions exactly |
CRay | A Ray, in parametric form |
CReadOnlyScalarAttributeAdapter | Readonly access to an attribute as a double regardless its type |
CReadWriteScalarAttributeAdapter | Readwrite access to an attribute as a double regardless its type |
CRegularWeightedDelaunay2d | Regular Delaunay triangulation of weighted points |
CRegularWeightedDelaunay3d | Regular Delaunay triangulation of weighted points |
CRestrictedVoronoiDiagram | Computes a Restricted Voronoi Diagram (RVD) |
CRVDCallback | Baseclass for user functions called for each element (polygon or polyhedron) of a restricted Voronoi diagram traversal |
CRVDMeshBuilder | Builds a Mesh using the symbolic information in the vertices computed by a RestrictedVoronoiDiagram |
CRVDPolygonCallback | Baseclass for user functions called for each polygon of a surfacic restricted Voronoi diagram |
CRVDPolyhedronCallback | Baseclass for user functions called for each polyhedron of a volumetric restricted Voronoi diagram |
CRVDVertexMap | RVDVertexMap maps symbolic vertices to unique ids |
►CScalarAttributeAdapterBase | Access to an attribute as a double regardless its type |
CAccessor | Accessor class used by ScalarAttributeAdapter to implement indexing operator |
CConstAccessor | Accessor class used by ScalarAttributeAdapter to implement indexing operator (const version) |
►CSimpleApplication | |
CColormapInfo | |
CSimpleMeshApplication | An Application that manipulates a single Mesh |
CSmartPointer | A smart pointer with reference-counted copy semantics |
CStatusBar | StatusBar displays the progress bar |
CStopwatch | Scope restricted stopwatch |
CStructuringElement | A structuring element, that is the definition of neighborhood used by a morphological operation |
CSystemEnvironment | System environment |
CTaskCanceled | Exception thrown when a task is canceled |
CTextEditor | A minimalistic text editor |
CThread | Platform-independent base class for running threads |
CThreadManager | Platform-independent base class for running concurrent threads |
CTypedAttributeStore | Stores an array of elements of a given type, and notifies a set of AttributeStoreObservers each time the storead array changes size and/or base address |
CTypedAttributeStoreCreator | Implementation of AttributeStoreCreator for a specific type |
CTypedThreadGroup | Typed collection of Threads |
CUnsharpMaskingImpl | Implementation of UnsharpMasking full screen effect |
CVariableObserver | Observes Environment variables |
CVariableObserverList | List of VariableObservers |
Cvec2Hg | 2d vector with homogeneous coordinates |
Cvec2HgLexicoCompare | Comparator class for vec2Hg \detail Used to create maps indexed by vec2Hg or SOS symbolic perturbation |
Cvec3Hg | 3d vector with homogeneous coordinates |
Cvec3HgLexicoCompare | Comparator class for vec3Hg \detail Used to create maps indexed by vec3Hg or SOS symbolic perturbation |
Cvecng | Generic maths vector |
Cvecng< 2, T > | Specialization of class vecng for DIM == 2 |
Cvecng< 3, T > | Specialization of class vecng for DIM == 3 |
Cvecng< 4, T > | Specialization of class vecn3 for DIM == 4 |
Cvector | Vector with aligned memory allocation |
Cvector< bool > | Specialization of vector for elements of type bool |