How to make 3D color gamut plots

T60 Thinkpad/sRGB/Adobe RGB, top view
T60 Thinkpad/sRGB/Adobe RGB, top view

T60 Thinkpad/sRGB/Adobe RGB, side view
T60 Thinkpad/sRGB/Adobe RGB, side view

The above images are screen shots from a 3D plot that compares the color gamut of my Lenovo T60 Thinkpad with sRGB and Adobe RGB (1998). The large white wireframe plot is Adobe RGB, the magenta wireframe plot is sRGB, and the solid color plot in the middle is my T60 Thinkpad. Yes, the T60's gamut is considerably smaller than sRGB. While the 2D screenshots are all well and good the 3D VRML version is much better, because you can drag the model around so you can view it from any angle, not just the two angles that the above images show. And nobody has to manually make screenshots.

Note: the screenshots were done from the old VRML 3D models. The new x3dom 3D models don't have labels on the graph. But is still the same data.

Install a VRML viewer plugin

Here is how to make your own 3D plots. These are VRML files and you need a VRML viewer plugin. I use Windows and I have had good luck with the (free for non-commercial user) Cortona3D Viewer. If this doesn't work for you, Google for VRML Viewer. June 3, 2015. .wrl is dead. We now use the X3DOM format for 3-D modeling that doesn't need a plugin if you use a modern browser.

Got the VRML viewer installed? Good, then test it on the 3D VRML files of my T60's gamut (VRML) (Drag your mouse to rotate the 3D plot.) Now test your browser on the 3D VRML files of my T60's gamut (X3DOM) (Drag your mouse to rotate the 3D plot.)

Install Argyll

Generating the gamut plots isn't difficult. You need a few .exe files from ArgyllCMS. (Windows users, follow the directions on this page.) Verify that the Argyll programs you need are on the path by opening a MS-Prompt (or shell prompt, etc.) and typing

iccgamut -V

You should see a lot of information about iccgamut options scrolling off the screen. If you get a complaint about

'iccgamut' is not recognized as an internal or external command, operable program or batch file.

(or similar), then the programs from Argyll aren't installed.

Once we have the Argyll programs installed, you use

iccgamut Create a gamut file or x3dom file of the color gamut of an ICC profile

viewgam Convert one or more gamuts into a X3DOM 3D visualization file.

Collect a few ICC profiles.

Create a directory (folder) somewhere. Say, C:\Color Gamuts Copy a few ICC profiles to this directory from where Windows (Mac...?) stores them. On my Win 7 system, the ICC profiles are stored in C:\Windows\System32\spool\drivers\color Copy the profiles for sRGB and Adobe RGB (1998)

AdobeRGB1998.icc
sRGB Color Space Profile.icm

and any other profile that you want to compare. For example, T60-Monitor Profile.icm is the ICC profile for my Lenovo T60 Thinkpad.

Make '.gam' gamut files

Then create a batch file named MakeGamut.bat in the directory where you put the profiles. (Right click, New text file, and rename it to be MakeGamut.bat) Copy and paste

cls

set PROFILE1=sRGB Color Space Profile.icm
set PROFILE2=AdobeRGB1998.icc
set PROFILE3=T60-Monitor Profile.icm

Rem Makes gamut files
iccgamut -v -w -ff -ir "%PROFILE1%"
iccgamut -v -w -ff -ir "%PROFILE2%"
iccgamut -v -w -ff -ir "%PROFILE3%"

pause

into MakeGamut.bat (Substitute the name of own profile in place of T60-Monitor Profile.icm.) Double click on MakeGamut.bat to run it.

This will create three ".gam" files that correspond to the three profiles. The -w option tells iccgamut to also create a .wrl (VRML) X3DOM file at the same time that it creates the .gam files.

Make an X3DOM (3-D model) file

Now we make a batch file that will use Argyll viewgam to make our VRML file from the three .gam files. Say, MakeVRML.bat

cls

set GAM1=T60-Monitor Profile.gam
set GAM2=sRGB Color Space Profile.gam
set GAM3=AdobeRGB1998.gam

Rem the output file
set OUT=T60_sRGB_AdobeRGB
Rem viewgam will generate T60_sRGB_Adobe.xd3.html

viewgam -t .3 -cn "%GAM1%"  -cm "%GAM2%" -cw "%GAM3%" "%OUT%"

pause

will create the VRML X3DOM .x3d.html file T60_sRGB_AdobeRGB.x3d.html Double click on it and your browser should display it. Look at the docs for iccgamut and viewgam for more options.

The reason why I split this up into two batch files is because you only need to make the .gam files once. Once you have built up a collection of .gam files, you can run mutations of MakeVRML.bat and make other .wrl files to compare different profiles and color spaces. Look through your own collection of .icc and .icm files.

Questions? Write to 3dplotshowto@frogymandias.org