docs: full Java library scan — new phases 9d/9e/10d–10g + parity table
Some checks failed
C++ Tests / test-fast (pull_request) Successful in 2m17s
API Docs / doc-build (pull_request) Successful in 49s
Markdown link check / check (pull_request) Successful in 45s
C++ Tests / test-cgal (pull_request) Failing after 10m38s
C++ Tests / quality-gates (pull_request) Successful in 2m5s
Some checks failed
C++ Tests / test-fast (pull_request) Successful in 2m17s
API Docs / doc-build (pull_request) Successful in 49s
Markdown link check / check (pull_request) Successful in 45s
C++ Tests / test-cgal (pull_request) Failing after 10m38s
C++ Tests / quality-gates (pull_request) Successful in 2m5s
Complete scan of all de.varylab.discreteconformal packages (functional/, unwrapper/, unwrapper/circlepattern/, unwrapper/koebe/, unwrapper/quasiisothermic/, uniformization/, util/) against the current roadmap. New items added to java-parity.md: - ConesUtility: cone detection, BFS cut, auto-placement, quantization (9d) - MobiusCenteringFunctional: variational Lösung über Lorentz-Geometrie (9d) - ElectrostaticSphereFunctional: Initialisierungsheuristik auf S² (9d) - StereographicUnwrapper + SphereUtility: S²→ℂ atlas für genus-0 (9d) - CirclePatternLayout + CirclePatternUtility + CPEuclideanRotation (9e) - CutAndGlueUtility, StitchingUtility, PathUtility (9c additions) - DualityUtility: Hodge-Stern + dual cycles — prerequisite 10a - HyperellipticUtility + HyperIdealHyperellipticUtility (10b) - CircleDomainUnwrapper: Koebe-Andreev-Thurston (10d) - quasiisothermic/ package: QI maps + DBF + sin-condition (10e) - KoebePolyhedron (10f) - EuclideanCyclicFunctional + HyperbolicCyclicFunctional (10g) - "Do not port" table: ColtIterationReporter, PETSc wrappers, etc. New phases added to phases.md: - Phase 9d: ConesUtility + StereographicUnwrapper + MobiusCenteringFunctional - Phase 9e: CirclePatternLayout (complement to already-ported 9a.1) - Phase 10d: CircleDomainUnwrapper (Koebe-Andreev-Thurston) - Phase 10e: quasi-isothermic maps - Phase 10f: Koebe polyhedra - Phase 10g: cyclic-symmetry functionals Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -129,6 +129,89 @@ mesh type.
|
||||
layer, +1 week 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)
|
||||
→ 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)
|
||||
→ integrate into layout.hpp normalise_hyperbolic()
|
||||
Variational Möbius centering via Lorentz geometry:
|
||||
E = Σ log(-⟨x,p⟩/√(-⟨x,x⟩))
|
||||
Supplies gradient + Hessian — replaces iterative Fréchet mean.
|
||||
Java reference: functional/MobiusCenteringFunctional.java
|
||||
```
|
||||
|
||||
9e — Circle pattern layout (Java port — complement to Phase 9a.1)
|
||||
────────────────────────────────────────────────────────────────────
|
||||
|
||||
```
|
||||
9e CirclePatternLayout + CirclePatternUtility (Java port)
|
||||
→ circle_pattern_layout.hpp
|
||||
Phase 9a.1 ported the CPEuclidean energy + solver; this phase
|
||||
adds the embedding step (ρ values → actual vertex positions in ℝ²).
|
||||
- CirclePatternUtility: compute per-face radii ρ via NTR solver
|
||||
- CirclePatternLayout: embed from ρ values (intersection-angle model)
|
||||
- CPEuclideanRotation: rotation-invariant CP functional variant
|
||||
Java references: unwrapper/circlepattern/CirclePattern{Layout,Utility}.java
|
||||
unwrapper/circlepattern/CPEuclideanRotation.java
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ◼ New research directions — Phases 10d–10g (2026 library scan)
|
||||
|
||||
These were identified by a full scan of the Java source tree in 2026.
|
||||
They extend significantly beyond the Java port into new mathematical territory.
|
||||
|
||||
```
|
||||
10d CircleDomainUnwrapper (Koebe–Andreev–Thurston)
|
||||
→ circle_domain_unwrapper.hpp
|
||||
Conformal map of a multiply-connected planar region onto a
|
||||
canonical disk-with-holes (classical complex-analysis result).
|
||||
Java reference: unwrapper/CircleDomainUnwrapper.java (570 lines)
|
||||
Mathematical basis: Koebe–Andreev–Thurston + Beardon–Stephenson 1990
|
||||
|
||||
10e Quasi-isothermic maps
|
||||
→ quasiisothermic.hpp
|
||||
Generalisation of conformal maps for meshes where exact conformality
|
||||
is unachievable (high Gaussian curvature, coarse triangulation).
|
||||
Includes: Delaunay pre-conditioning, discrete Beltrami field,
|
||||
sin-condition functional, Lawson-correspondence parameterization.
|
||||
Java references: unwrapper/quasiisothermic/ (~1 200 lines total)
|
||||
Mathematical basis: Lam 2015 + Bohle–Lam–Pinkall–Reitebuch 2015
|
||||
|
||||
10f Koebe polyhedra
|
||||
→ koebe_polyhedron.hpp
|
||||
Koebe–Andreev–Thurston theorem: realize every 3-connected planar
|
||||
graph as a convex polyhedron with edges tangent to the unit sphere.
|
||||
Connects circle packing with 3-D convex geometry.
|
||||
Java reference: unwrapper/koebe/KoebePolyhedron.java (321 lines)
|
||||
Mathematical basis: Koebe 1936 + Thurston 1997 (lecture notes)
|
||||
|
||||
10g Cyclic-symmetry functionals
|
||||
→ cyclic_functional.hpp
|
||||
Euclidean and hyperbolic DCE functionals reduced to a cyclic-symmetry
|
||||
quotient — dramatically reduces DOFs for ornamental / symmetric surfaces.
|
||||
Java references: functional/EuclideanCyclicFunctional.java
|
||||
functional/HyperbolicCyclicFunctional.java (~530 lines)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ◼ Optional / Hypothetical — geometry-central Cross-Comparison
|
||||
|
||||
Reference in New Issue
Block a user