Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mccode-dev/McCode
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: mccode-dev/McCode
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: geometry-mesh-lib
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 1 commit
  • 2 files changed
  • 2 contributors

Commits on Sep 24, 2026

  1. geometry-mesh-lib: new triangle-mesh geometry library (STL/OFF/PLY)

    New library in the style of interoff-lib, based on the mesh support of
    Union_mesh / union-lib, not (yet) a drop-in replacement for either:
    
    * Readers: STL ASCII and binary (binary detected from the file size, so
      headers starting with "solid" work), OFF/NOFF/COFF with polygons of any
      size and per-face properties, PLY ascii/binary little/big endian with
      extra elements/properties skipped and scalar face properties kept.
      STEP is rejected with a message to export STL/OFF/PLY.
    * Init: scale (e.g. 1e-3 for mm), interoff-style resize/centre, hash-based
      vertex welding (O(N)), ear-clipping triangulation (non-convex polygons),
      unit normals, area, volume, topology (edges, boundary / non-manifold
      edges, Euler characteristic), consistent orientation with outward
      normals for closed meshes, bounding box/sphere, BVH.
    * Ray tracing: gmesh_intersect (all hits sorted, caller-sized buffer, no
      allocation per ray), gmesh_intersect_t0t3 (off_intersect convention),
      gmesh_inside (deterministic parity test, no random numbers). Hits on
      shared edges/vertices are reported once; parallel rays never give
      inf/NaN hits.
    * gmesh_display (each polygon edge once, or JSON polyhedron),
      gmesh_face_prop, gmesh_print_info, gmesh_free.
    
    Co-Authored-By: Claude Opus 5.5 <[email protected]>
    Claude-Session: https://claude.ai/code/session_01BJS7ARkNN9yyhSDmmigudu
    Peter Willendrup and claude committed Sep 24, 2026
    Configuration menu
    Copy the full SHA
    ae3f4af View commit details
    Browse the repository at this point in the history
Loading