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: interoff-consolidate
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 2 commits
  • 14 files changed
  • 2 contributors

Commits on Sep 24, 2026

  1. interoff-lib: merge r-interoff-lib, lift polygon size limit, fix bugs

    * interoff-lib now reads optional per-face properties (numbers following the
      vertex indices of a face, e.g. m alpha W) and returns hit face indices via
      off_intersect_idx / off_intersect_all_idx / off_x_intersect_idx.
      r-interoff-lib is reduced to a compatibility wrapper; Guide_anyshape_r ported.
    * Polygons may have any number of vertices (was a 4-vertex stack buffer,
      plus 10-per-face faceArray, pixelinfo and JSON buffer overflows).
    * Fixes: gravity mode (-g) with OFF samples (curved path used with a=0,
      negative roots dropped), init_planes bug for vz==0 rays, point-in-polygon
      projection from collinear first vertices, non-unit normals (McXtrace Mirror
      OFF mode did not reflect), duplicate hits on shared edges/vertices,
      parsing robustness (NOFF/COFF, PLY properties, index validation, fclose),
      74 KB by-value struct copy per call, OpenACC shape pragma typos,
      uninitialised outputs.
    * Verified against an independent reference (57k rays, 0 mismatches) and by
      old-vs-new regression of example instruments (identical where unaffected).
    
    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
    82fe4bb View commit details
    Browse the repository at this point in the history
  2. Merge Guide_anyshape_r into Guide_anyshape (file_coatings)

    * Guide_anyshape gains file_coatings=1: m, alpha, W [, R0, Qc] are read per
      face from the OFF/PLY geometry file (numbers following the vertex indices),
      with the component parameters as defaults for missing values. Errors out if
      the file has no per-face values or if combined with a reflect table.
    * Guide_anyshape_r moved to obsolete/ with a deprecation warning; it keeps
      working unchanged. Guide_anyshape_r(m=0,alpha=0,W=0,...) is now
      Guide_anyshape(file_coatings=1,...).
      (The obsolete version computed q/n.v before propagation, slightly wrong
      with gravity; the merged component does it after propagation.)
    * Test_Guides: Guide=9 uses Guide_anyshape(file_coatings=1); results are
      bit-identical to the former Guide_anyshape_r without gravity.
    * interoff-lib.h: OFF_FACEPROP_R0/QC column conventions.
    * Docs: regenerated Guide_anyshape/Guide_anyshape_r tex with mcdoc, moved the
      latter to the obsolete chapter; examples lists updated.
    
    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
    8398734 View commit details
    Browse the repository at this point in the history
Loading