On successful colprof execution, triggers extract_gamut and automatically loads the generated <basename>.gam mesh into the 3D viewer.
On profcheck execution, resolves the real platform profile path and ensures the gamut mesh is loaded.
Version Bump:
Incremented point version 0.1.13 -> 0.1.14 across package.json, src-tauri/Cargo.toml, and src-tauri/tauri.conf.json.
### Summary
This PR resolves Issue #57 (3D Gamut Visualization) and Issue #69 (Platform profile extension handling .icm/.icc).
Closes #57
Closes #69
### Changes
1. **Platform Profile Extension Resolution (`src-tauri/src/commands.rs`, `src-tauri/src/lib.rs`)**:
- Added `get_profile_path(cwd, basename)` command and `resolve_profile_extension`.
- Updated `extract_gamut` and `run_profcheck` to auto-resolve `.icc` vs `.icm` if the exact file does not exist directly.
2. **3D Gamut Mesh Lifecycle & Visualization (`src/js/gamut_viewer.js`, `src/assets/sRGB.gam`)**:
- Added `ResizeObserver` so the WebGL viewport adapts immediately when Stage 5 becomes visible or the window is resized.
- Maintained mesh lifecycle (`currentProfileMesh`, `sRgbMesh`) with proper disposal of previous geometries and materials.
- Bundled and loaded `sRGB.gam` reference wireframe on startup for comparative gamut evaluation.
3. **Stage 4 & Stage 5 Gamut Integration (`src/js/colprof.js`, `src/js/profcheck.js`)**:
- On successful `colprof` execution, triggers `extract_gamut` and automatically loads the generated `<basename>.gam` mesh into the 3D viewer.
- On `profcheck` execution, resolves the real platform profile path and ensures the gamut mesh is loaded.
4. **Version Bump**:
- Incremented point version `0.1.13` -> `0.1.14` across `package.json`, `src-tauri/Cargo.toml`, and `src-tauri/tauri.conf.json`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
This PR resolves Issue #57 (3D Gamut Visualization) and Issue #69 (Platform profile extension handling .icm/.icc).
Closes #57
Closes #69
Changes
src-tauri/src/commands.rs,src-tauri/src/lib.rs):get_profile_path(cwd, basename)command andresolve_profile_extension.extract_gamutandrun_profcheckto auto-resolve.iccvs.icmif the exact file does not exist directly.src/js/gamut_viewer.js,src/assets/sRGB.gam):ResizeObserverso the WebGL viewport adapts immediately when Stage 5 becomes visible or the window is resized.currentProfileMesh,sRgbMesh) with proper disposal of previous geometries and materials.sRGB.gamreference wireframe on startup for comparative gamut evaluation.src/js/colprof.js,src/js/profcheck.js):colprofexecution, triggersextract_gamutand automatically loads the generated<basename>.gammesh into the 3D viewer.profcheckexecution, resolves the real platform profile path and ensures the gamut mesh is loaded.0.1.13->0.1.14acrosspackage.json,src-tauri/Cargo.toml, andsrc-tauri/tauri.conf.json.