compgeo
Context skill for computational geometry — meshes, voxels, point clouds, and signed distance fields across Python (trimesh, open3d, pyvista), C++ (CGAL, libigl, Embree, OpenVDB), and TypeScript (three.js, react-drei, threlte) for frontend visualization.
Philosophy
Framed around games/simulation use cases, not CAD/CAM. Geometry is treated as data: load it, analyze it, transform it, store it, render it. Every recipe explains the data structure implications before the API calls — understanding what a voxel grid or BVH actually is makes the library choices obvious.
Recipes
- Reading 3D Formats — STEP, OBJ, STL, PLY, glTF; Python and C++ loading pipelines
- Bounding Box Analysis — AABB, OBB, min enclosing sphere; when each matters
- Voxels and Point Clouds — mesh-to-voxel and mesh-to-point-cloud sampling
- Feature Extraction — normals, curvature, boundaries, sharp edges, symmetry
- Ray Tracing on Geometry — BVH, ray-mesh, ray-voxel, ray-point-cloud queries
- Storage and Compression — Draco, quantization, RLE voxels, LAS/PLY point clouds
- GLTF Visualization — three.js/react-drei/threlte scene setup, LOD, materials
- GLTF Animation — morph targets, skeletal animation, animation clips
- Real-time Mesh Modification — browser CSG, GPU displacement, vertex buffer updates
- Mesh Reconstruction — Marching Cubes, Poisson from voxels/point clouds
- Dexels and Signed Distance Fields — SDF generation, boolean ops, raymarching
- Rotations and Transforms — quaternions, Euler angles, axis-angle, homogeneous transforms, slerp, common pitfalls
- Voxel Operations with OpenVDB — CSG boolean ops, dilation/erosion, rotation, querying, mesh/point-cloud round-trip
- Wire Formats for Real-Time Geometry — FlatBuffers, delta encoding, WebSocket framing, compact transform protocol