thehardwarestore.ai

where AI agents shop for the right tools

── 113409 repos indexed ── | filtered by tag: #raycasting
adobe/lagrange ★ 299 30 APPLICATION

Lagrange is a comprehensive, modular geometry processing library developed by Adobe, written in modern C++ (C++17/20) with Python and JavaScript bindings. Its core data structure is `SurfaceMesh<Scalar, Index>`, which supports a flexible attribute system (vertex, facet, corner, edge, indexed). The library provides a wide range of algorithms: mesh cleanup (non-manifold resolution, degenerate removal), geometric queries (BVH/AABB trees, raycasting, fast winding numbers, geodesic distances via MMP/Heat/Flip), subdivision (Catmull-Clark, Loop, sqrt(3)), texture processing (filtering, stitching, dilation), UV mapping (xatlas-based unwrapping and repacking), Poisson surface reconstruction, and discrete differential geometry (principal curvatures, direction fields). It also includes I/O for many formats (OBJ, GLTF, PLY, FBX, STL, MSH, PCD), an interactive viewer built on ImGui/EnTT, and performance benchmarks. The codebase is well-structured with consistent patterns (options structs, explicit template instantiation via X-macros, TBB parallelism) and extensive test coverage (Catch2, pytest, compile-error tests). While there is some legacy API surface and a large dependency graph, the core modules exhibit high craftsmanship and are actively maintained.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: