reviewer-meeting prep: CI promotion + 3rd-party licenses + output_uv_map(ID) + briefing trio #19

Merged
user2595 merged 13 commits from reviewer/meeting-prep into main 2026-05-26 09:15:41 +00:00
Showing only changes of commit f93292e815 - Show all commits

View File

@@ -129,16 +129,22 @@ mesh type.
+ holonomy infrastructure.
Effort: ~2 weeks for fundamental polygon, +2 weeks for surgery
layer, +1 week integration.
```
9d — Cone singularities + sphere atlas (Java port + research extension)
────────────────────────────────────────────────────────────────────────
9d — Cone metrics + sphere utilities (Java port + research extension)
────────────────────────────────────────────────────────────────────
9d.1 ConesUtility (Java port — Euclidean only)
→ cones_utility.hpp
Java source: ConesUtility.java (~200 lines)
```
9d.1 ConesUtility (Java port: unwrapper/ConesUtility.java)
→ cone_singularities.hpp
Fills the "⚠️ data structure only" gap in java-parity.md:
- Detect interior cone vertices (angle deficit ≠ 0)
- BFS path from cone to mesh boundary → cut edge set
- Auto-placement: conjugate gradient on Θ-gradient magnitude
- Quantization: snap cone angles to π/2, π/3, π/6 for
quad / triangle / hexagonal atlas targets
Java reference: unwrapper/ConesUtility.java
Mathematical reference: Troyanov 1991 + Springborn 2020 §3
Port scope: prescribed cone angles Θᵥ ≠ 2π in Euclidean mode.
Status: 🔲 planned
9d.2 Non-Euclidean cone extensions (RESEARCH, not in Java)
→ extend ConesUtility to HyperIdeal + Spherical modes
@@ -153,68 +159,13 @@ mesh type.
automatic cone placement; directly applicable to 9d.2 algorithm.
Status: 🔲 planned
9d.3 StereographicUnwrapper (Java port)
→ stereo_unwrapper.hpp
Java source: StereographicUnwrapper.java (266 lines)
Converts spherical DCE output (Point_3 on S²) to a 2-D atlas
via stereographic projection + Möbius centring.
Closes the visualisation gap from discrete_conformal_map_spherical().
Effort: small (~3 days).
Status: 🔲 planned
9e — CirclePatternLayout (Java port)
─────────────────────────────────────
9e CirclePatternLayout + CirclePatternUtility (Java port)
→ circle_pattern_layout.hpp
Java sources: CirclePatternLayout.java + CirclePatternUtility.java
+ CPEuclideanRotation.java
Mathematical reference: Bobenko-Springborn 2004 variational principle
+ Bobenko-Hoffmann-Springborn 2006 "Minimal
surfaces from circle patterns" (Discrete &
Comput. Geom. 35, 2006).
Status: 🔲 planned
9f — Polygon Laplacian (RESEARCH — no Java equivalent)
──────────────────────────────────────────────────────
9f Discrete Laplacian on general polygonal meshes
→ polygon_laplacian.hpp
Java source: NONE
Mathematical reference:
Alexa, Wardetzky 2011 "Discrete Laplacians on General Polygonal
Meshes" (ACM SIGGRAPH 2011) — virtual-node construction,
polygon cotangent weights extending the Pinkall-Polthier formula.
Alexa 2020 "Discrete Laplacians on General Polygonal Meshes"
(ACM TOG 39, 2020) — extended journal treatment, error bounds.
Enables: DCE energy evaluation on quad-dominant / Voronoi /
polygon meshes without forced triangulation.
Replaces euclidean_hessian.hpp for non-triangular inputs.
Status: 🔲 planned (pure research, no Java source)
Effort: medium (~2 weeks core + tests; +1 week Newton integration).
```
9d — Cone metrics + sphere utilities (Java port — 2026 library scan)
────────────────────────────────────────────────────────────────────
```
9d.1 ConesUtility (Java port: unwrapper/ConesUtility.java)
→ cone_singularities.hpp
Fills the "⚠️ data structure only" gap in java-parity.md:
- Detect interior cone vertices (angle deficit ≠ 0)
- BFS path from cone to mesh boundary → cut edge set
- Auto-placement: conjugate gradient on Θ-gradient magnitude
- Quantization: snap cone angles to π/2, π/3, π/6 for
quad / triangle / hexagonal atlas targets
Java reference: unwrapper/ConesUtility.java
9d.2 StereographicUnwrapper + SphereUtility (Java port)
9d.3 StereographicUnwrapper + SphereUtility (Java port)
→ stereographic_layout.hpp
Stereographic projection S²→{∞} + Möbius centering for
genus-0 surfaces. Converts spherical DCE output to a flat 2-D atlas.
Java reference: unwrapper/StereographicUnwrapper.java (266 lines)
9d.3 MobiusCenteringFunctional (Java port, optional upgrade)
9d.4 MobiusCenteringFunctional (Java port, optional upgrade)
→ integrate into layout.hpp normalise_hyperbolic()
Variational Möbius centering via Lorentz geometry:
E = Σ log(-⟨x,p⟩/√(-⟨x,x⟩))
@@ -235,6 +186,30 @@ mesh type.
- CPEuclideanRotation: rotation-invariant CP functional variant
Java references: unwrapper/circlepattern/CirclePattern{Layout,Utility}.java
unwrapper/circlepattern/CPEuclideanRotation.java
Mathematical reference: Bobenko-Springborn 2004 variational principle
+ Bobenko-Hoffmann-Springborn 2006 "Minimal
surfaces from circle patterns" (Discrete &
Comput. Geom. 35, 2006).
```
9f — Polygon Laplacian (RESEARCH — no Java equivalent)
──────────────────────────────────────────────────────
```
9f Discrete Laplacian on general polygonal meshes
→ polygon_laplacian.hpp
Java source: NONE
Mathematical reference:
Alexa, Wardetzky 2011 "Discrete Laplacians on General Polygonal
Meshes" (ACM SIGGRAPH 2011) — virtual-node construction,
polygon cotangent weights extending the Pinkall-Polthier formula.
Alexa 2020 "Discrete Laplacians on General Polygonal Meshes"
(ACM TOG 39, 2020) — extended journal treatment, error bounds.
Enables: DCE energy evaluation on quad-dominant / Voronoi /
polygon meshes without forced triangulation.
Replaces euclidean_hessian.hpp for non-triangular inputs.
Status: 🔲 planned (pure research, no Java source)
Effort: medium (~2 weeks core + tests; +1 week Newton integration).
```
---