3D gamut viewer (SceneKit) #28
Open
opened 2026-09-08 17:43:57 +01:00 by gronod
·
0 comments
No Branch/Tag Specified
main
milestone/m5-profile
feat/23-colprof
develop
milestone/m4-measurement
feat/18-instrument-detection
milestone/m3-printing
feat/17-print-panel-ui
feat/15-lp-spool
feat/14-colorsync
feat/13-nsprintpanel
feat/12-printer-enum
milestone/m2-targets
feat/7-targen-argv
milestone/m1-foundation
feat/4-wizard-gating
feat/5-settings-logging
feat/6-file-dialogs
feat/3-argyll-resolution
feat/2-process-manager
feat/1-app-scaffold
No results found.
Labels
Clear labels
Bug/Architecture
Bug/Backend
Bug/DevOps
Bug/UI
Compat/Breaking
Feature/Architecture
Feature/Backend
Feature/DevOps
Feature/UI
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Project/ICCery-v2
Core / wizard / process infra defect
Argyll orchestration, file/data defect
Build, packaging, CI defect
Views, controls, dialogs defect
Breaking change that won't be backward compatible
Core / wizard / process infra
Argyll orchestration, file/data engines
Build, packaging, CI
Views, controls, dialogs
Something is not working
Documentation changes
Improve existing functionality
New functionality
This is security issue
Issue or pull request related to testing
Priority
Critical
1
The priority is critical
Priority
High
2
The priority is high
Priority
Low
4
The priority is low
Priority
Medium
3
The priority is medium
ICCery v2 Mac rewrite
Reviewed
Confirmed
1
Issue has been confirmed
Reviewed
Duplicate
2
This issue or pull request already exists
Reviewed
Invalid
3
Invalid issue
Reviewed
Won't Fix
3
This issue won't be fixed
Status
Abandoned
3
Somebody has started to work on this but abandoned work
Status
Blocked
1
Something is blocking this issue or pull request
Status
Need More Info
2
Feedback is required to reproduce issue or to continue work
Milestone
No items
No Milestone
M6 — Gamut, Stage 0, CGATS, release
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: gronod/iccery-v2-mac#28
Reference in New Issue
Block a user
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
Native SceneKit CIELAB viewer. Fix spec 18 §10 traps; do not clone them.
Spec refs
docs/18-gamut-viewer.md (all), 23-assets.md. #179 #185 #112 #225.
Scope
In:
.gamparser, SceneKit scene, sRGB overlay, controls.Out: Metal rewrite, Three.js port, WebGL at boot.
Implementation notes
Parser: two CGATS
BEGIN_DATAblocks — verticesVERTEX_NO L a b(discard index, push-order), then faces 0-based concatenated. Strip#comments incl. inline. Non-numeric/arity/plausibility/empty-file warnings. Native faces > convex hull. Vertex-only → hull fallback (dedup by coord key). ASCII only.Scene: X=a* ±128, Y=L* 0–100, Z=b* ±128. Camera home (180,120,180) lookAt (0,50,0), orbit + damping.
Axis scaffold at (0,50,0). Profile mesh vertex colours Lab→sRGB (D50→D65 Bradford, γ, clamp) opacity 0.88 double-sided.
sRGB reference = bundled REAL
sRGB.gam(issue 3), faint fill + edge outline ~15°.Controls: visibility + opacity per layer; R resets camera on a focusable container.
Load on Stage 5 entry + post-verify. Do not allocate the scene at app launch.
Fix, do not replicate: opacity-inference bug, label-visibility bug, dead keybinding (doc 18 §10).
Rewrite invariants
#179 dual-table + (a,L,b) layout. #185 axes/edges/vertex-colour. #112 density stays 10 (producer). #225 no 3D at boot.
Dependencies
Blocks-on: 3 (asset), 24 (
.gam).Unblocks: none.
Test
windowat module load — #212 class).Acceptance criteria