|
Geogram Version 1.9.2
A programming library of geometric algorithms
|
| ▼ geogram | |
| ► api | |
| defs.h | Basic definitions for the Geogram C API |
| ► basic | |
| algorithm.h | Wrappers around parallel implementation of STL |
| android_utils.h | Functions for Android |
| android_wrapper.h | This file should be included first in Android applications |
| argused.h | A function to suppress unused parameters compilation warnings |
| assert.h | Assertion checking mechanism |
| attributes.h | Generic mechanism for attributes |
| b_stream.h | Provides classes for reading and writing binary data |
| boolean_expression.h | Class for parsing and evaluating boolean expressions |
| command_line.h | Functions to parse and store command line arguments |
| command_line_args.h | Definitions of standard command line arguments |
| common.h | Common include file, providing basic definitions. Should be included before anything else by all header files in Vorpaline |
| counted.h | Base class of reference-counted objects, to be used with smart pointers |
| debug_stream.h | |
| determinant.h | Determinants for small sizes |
| environment.h | Provides a mechanism to store global variables, retrieve them by their names and attach observers to them |
| factory.h | Generic factory mechanism |
| file_system.h | Functions and times for filesystem manipulation |
| geofile.h | Functions to read and write structured files |
| geometry.h | Geometric functions in 2d and 3d |
| geometry_nd.h | Geometric functions in arbitrary dimension |
| line_stream.h | Utility class to read a file line per line and parsing fields from each line |
| logger.h | Generic logging mechanism |
| matrix.h | Generic matrix type |
| memory.h | Types and functions for memory manipulation |
| numeric.h | Types and functions for numbers manipulation |
| packed_arrays.h | Efficient storage for array of arrays |
| permutation.h | Functions to manipulate permutations |
| process.h | Function and classes for process manipulation |
| process_private.h | Internal functions for process manipulation |
| progress.h | Functions and classes for displaying progress bars |
| psm.h | Some replacement functions for Geogram classes exposed in Pluggable Software Modules |
| quaternion.h | Class that represents quaternions (eases manipulation of 3D rotations) |
| range.h | C++-20 like helpers for manipulating ranges of integers |
| rationalg.h | Generic implementation of rational type |
| smart_pointer.h | Pointers with automatic reference counting |
| stopwatch.h | Classes for measuring time |
| string.h | Functions for string manipulation |
| thread_sync.h | Functions and classes for process manipulation |
| vecg.h | Generic implementation of geometric vectors |
| vechg.h | Generic implementation of geometric vectors in homogeneous coordinates |
| ► bibliography | |
| bibliography.h | |
| ► delaunay | |
| cavity.h | |
| CDT_2d.h | Constained Delaunay triangulation in 2D |
| delaunay.h | Abstract interface for Delaunay |
| delaunay_2d.h | Implementation of Delaunay in 2d |
| delaunay_3d.h | Implementation of Delaunay in 3d |
| delaunay_nn.h | Implementation of Delaunay using nearest neighbors |
| delaunay_sync.h | Synchronization primitives for parallel Delaunay |
| delaunay_tetgen.h | Implementation of Delaunay in 3D using the tetgen library by Hang Si |
| delaunay_triangle.h | Implementation of Delaunay in 2D using the triangle library by Jonathan Shewchuk |
| LFS.h | A class for computing local feature size |
| parallel_delaunay_3d.h | Multithreaded implementation of Delaunay in 3d |
| periodic.h | Manipulation of indices for 3D periodic space |
| periodic_delaunay_3d.h | |
| ► image | |
| color.h | Color types |
| colormap.h | Colormap type |
| image.h | |
| image_library.h | Management of image serializers and named images |
| image_rasterizer.h | |
| image_serializer.h | Class to draw triangles in an image |
| image_serializer_pgm.h | |
| image_serializer_stb.h | Implementation of image serializer using stb_image.h and stb_image_write.h |
| image_serializer_xpm.h | |
| morpho_math.h | Classes for morphological operations on images |
| ► lua | |
| lua_io.h | LUA bindings for geogram IO and filesystem functions |
| lua_wrap.h | Utilities to write lua bindings |
| ► mesh | |
| index.h | Classes for managing tuples of indices |
| mesh.h | The class that represents a mesh |
| mesh_AABB.h | Axis Aligned Bounding Box trees for accelerating geometric queries that operate on a Mesh |
| mesh_baking.h | Functions to bake attributes from meshes to images |
| mesh_compare.h | Functions for comparing two meshes for exact equality |
| mesh_CSG.h | Functions and classes for Constructive Solid Geometry with meshes |
| mesh_decimate.h | Functions for decimating a mesh |
| mesh_degree3_vertices.h | Functions for removing degree 3 vertices in a mesh |
| mesh_distance.h | Distance computations between meshes |
| mesh_fill_holes.h | Functions for filling the holes in a mesh |
| mesh_frame_field.h | |
| mesh_geometry.h | Functions for accessing the geometry in a mesh |
| mesh_halfedges.h | Classes and function for virtually seeing a mesh as a set of halfedges |
| mesh_intersection.h | Functions for computing surfacic (and soon volumetric) mesh intersections |
| mesh_io.h | Functions to load and save meshes |
| mesh_local_operations.h | Functions to modify a mesh locally |
| mesh_manifold_harmonics.h | |
| mesh_partition.h | Functions to split a mesh into multiple parts |
| mesh_preprocessing.h | Functions to pre-process a mesh |
| mesh_remesh.h | Functions for remeshing |
| mesh_reorder.h | Reorders the elements in a mesh to improve data locality |
| mesh_repair.h | |
| mesh_sampling.h | Functions to generate random samples on surfacic and in volumetric meshes |
| mesh_smoothing.h | |
| mesh_subdivision.h | |
| mesh_surface_intersection.h | Functions for computing intersections between surfacic meshes and for boolean operations |
| mesh_surface_intersection_internal.h | Classes used by MeshSurfaceIntersection |
| mesh_tetrahedralize.h | Functions for filling a surface mesh with tetrahedra |
| mesh_topology.h | Functions to query and compare mesh topology |
| triangle_intersection.h | Symbolic computation of triangle-triangle intersection |
| ► NL | |
| nl.h | The public API of the OpenNL linear solver library. Click the "More..." link below for simple example programs |
| nl_64.h | |
| nl_amgcl.h | |
| nl_arpack.h | Internal OpenNL functions that interfaces ARPACK |
| nl_blas.h | Abstract interface to the basic linear algebra routines used by OpenNL internally |
| nl_cholmod.h | Internal OpenNL functions that interface Cholmod |
| nl_context.h | Internal OpenNL functions to manipulate contexts |
| nl_cuda.h | Internal OpenNL functions that interface with CUDA |
| nl_ext.h | Some optional extensions of the OpenNL linear solver library |
| nl_iterative_solvers.h | Internal OpenNL functions that implement iterative solvers |
| nl_linkage.h | Specify linkage for OpenNL integrated into Geogram |
| nl_matrix.h | Internal OpenNL functions to manipulate sparse matrices |
| nl_mkl.h | Internal OpenNL functions that interface MKL |
| nl_preconditioners.h | Internal OpenNL functions that implement preconditioners |
| nl_private.h | Some macros and functions used internally by OpenNL |
| nl_superlu.h | Internal OpenNL functions that interfaces SuperLU |
| ► numerics | |
| ► predicates | |
| aligned3d.h | |
| det3d.h | |
| det4d.h | |
| det_compare_4d.h | |
| dot3d.h | |
| dot_compare_3d.h | |
| orient2d.h | |
| orient3d.h | |
| orient4d.h | |
| side1.h | |
| side2.h | |
| side3.h | |
| side3_2dlifted.h | |
| side3h.h | |
| side4.h | |
| side4h.h | |
| exact_geometry.h | Exact predicates and constructs |
| expansion_nt.h | High-level interface to multi-precision arithmetics |
| interval_nt.h | |
| lbfgs_optimizers.h | |
| matrix_util.h | Some utilities for matrix manipulation |
| multi_precision.h | Implementation of multi-precision arithmetics |
| optimizer.h | Abstract base class for numerical optimizers, used to minimize a multivariate function |
| PCK.h | Utilities to write geometric predicates (Predicate Construction Kit) |
| predicates.h | Filtered exact predicates for restricted Voronoi diagrams |
| ► parameterization | |
| mesh_ABF.h | |
| mesh_atlas_maker.h | |
| mesh_global_param.h | Basic functions used by global surface parameterization algorithms (PGP, QuadCover) |
| mesh_LSCM.h | |
| mesh_param_packer.h | |
| mesh_param_validator.h | |
| mesh_PGP_2d.h | |
| mesh_segmentation.h | |
| ► points | |
| co3ne.h | Implementation of the Simple and Scalable Surface Reconstruction algorithm (Concurrent Co-Cones) |
| colocate.h | Functions to merge points with identical or similar locations |
| kd_tree.h | An implementation of NearestNeighborSearch with a kd-tree |
| nn_search.h | Abstract interface for nearest neighbor searching |
| principal_axes.h | A class to compute the principal axes of a point cloud |
| ► voronoi | |
| convex_cell.h | Class to compute the intersection of a set of half-spaces in 3D |
| CVT.h | Main class for computing centroidal Voronoi tesselations |
| generic_RVD.h | Generic implementation of restricted Voronoi diagrams |
| generic_RVD_cell.h | Internal representation of polyhedra for GEO::GenericVoronoiDiagram |
| generic_RVD_polygon.h | Internal representation of polygons for GenericVoronoiDiagram |
| generic_RVD_utils.h | Some utilities for implementing surfacic and volumetric restricted Voronoi diagrams |
| generic_RVD_vertex.h | Types and utilities for manipulating vertices in geometric and symbolic forms in restricted Voronoi diagrams |
| integration_simplex.h | Base classes for computing integrals over the cells of a restricted Voronoi diagram |
| RVD.h | Class and functions to compute restricted Voronoi diagrams and extract information from them |
| RVD_callback.h | Declaration of base types for implementing user-defined code that queries the cells of a restricted Voronoi diagram |
| RVD_mesh_builder.h | Utilities to build meshes derived from restricted Voronoi diagrams |
| ▼ geogram_gfx | |
| ► api | |
| defs.h | Basic definitions for the Geogram C API |
| ► basic | |
| common.h | Common include file, providing basic definitions. Should be included before anything else by all header files in geogram_gfx |
| frame_buffer_object.h | Helper class for manipulating OpenGL frame buffer objects |
| GL.h | Some utility functions for OpenGL graphics |
| GLSL.h | Utilities for manipulating GLSL shaders |
| ► full_screen_effects | |
| ambient_occlusion.h | Implementation of AmbientOcclusion full screen effect |
| full_screen_effect.h | Low-level base class for full screen effects |
| unsharp_masking.h | Implementation of UnsharpMasking full screen effect |
| ► GLUP | |
| ► shaders | |
| ► fullscreen | |
| ambient_occlusion_fragment_shader.h | |
| blur_fragment_shader.h | |
| depth_dependent_blur_fragment_shader.h | |
| unsharp_masking_fragment_shader.h | |
| vertex_shader.h | |
| ► GLUP | |
| constants.h | |
| defs.h | |
| fragment_ray_tracing.h | |
| fragment_shader_utils.h | |
| portable_fragment_shader.h | |
| ShaderToy.h | |
| stdglup.h | |
| ► GLUPES | |
| fragment_shader.h | |
| fragment_shader_state.h | |
| fragment_shader_utils.h | |
| lines_fragment_shader.h | |
| points_fragment_shader.h | |
| points_vertex_shader.h | |
| spheres_fragment_shader.h | |
| spheres_vertex_shader.h | |
| thick_lines_fragment_shader.h | |
| thick_lines_vertex_shader.h | |
| vertex_shader.h | |
| vertex_shader_state.h | |
| ► GLUPGLSL | |
| fragment_shader.h | |
| gather_vertex_shader.h | |
| geometry_shader_preamble.h | |
| lines_fragment_shader.h | |
| marching_cells.h | |
| points_fragment_shader.h | |
| points_vertex_shader.h | |
| spheres_fragment_shader.h | |
| spheres_vertex_shader.h | |
| state.h | |
| tess_evaluation_shader.h | |
| thick_lines_fragment_shader.h | |
| thick_lines_geometry_shader.h | |
| thick_lines_vertex_shader.h | |
| vertex_shader.h | |
| embedded_shaders.h | |
| GLUP.h | GLUP: GL Useful Primitives |
| GLUP_context.h | Internal implementation of GLUP context |
| GLUP_context_ES.h | Internal implementation of GLUP using OpenGL ES or GLSL 1.5 with no geometry shader and no uniform buffer |
| GLUP_context_GLSL.h | Internal implementation of GLUP using modern OpenGL and GLSL shaders |
| GLUP_marching_cells.h | Implementation of the marching cells algorithms |
| GLUP_private.h | Slightly faster GLUP functions, not part of the API (do not use in client code) |
| ► gui | |
| application.h | Base class for all applications |
| arc_ball.h | Controls a 3d rotation from user mouse input |
| command.h | A simple system to interface C++ functions with a ImGui interface. Used mainly by geobox |
| console.h | A console |
| events.h | |
| gui_state.h | |
| gui_state_h.h | |
| gui_state_v.h | |
| simple_application.h | |
| simple_mesh_application.h | |
| status_bar.h | Implementation of the status bar |
| text_editor.h | A simple text editor |
| user_callback_android.h | Functions to handle user input in the rendering area of a geogram application |
| ► imgui_ext | |
| icon_font.h | |
| imgui_ext.h | |
| imgui_impl_android_ext.h | |
| ► lua | |
| lua_glup.h | |
| lua_imgui.h | LUA bindings for ImGUI |
| lua_simple_application.h | LUA bindings for SimpleApplication |
| ► mesh | |
| mesh_gfx.h | A class to display a mesh using OpenGL/GLUP |