xicc/iccgamut
    
    Create a gamut file or X3DOM file  of the color gamut of an ICC
    profile.
     iccgamut allows creation of
    gamut files from the forward or backwards table of an ICC profile,
    in Lab or CIECAM02 Jab colorspace, and can also representing the
    gamut as a X3DOM file.
    
    See 3D Viewing Format for switching to
    VRML or X3D output format.
    Usage
    
    iccgamut [-options] profile
     -v           
      Verbose
     -d
      sres       Surface resolution
      details 1.0 - 50.0
     -w           
emit
      X3DOM .x3d.html file as well as CGATS .gam file
     -n           
Don't
      add X3DOM axes or white/black point
     -k           
Add
      X3DOM markers for prim. & sec. "cusp" points
     -f function  
      f = forward*, b = backwards
      -i intent    
      p = perceptual, r = relative colorimetric,
                  
s
      = saturation, a = absolute (default), d = profile default
     -o
      order      n = normal (priority: lut >
      matrix > monochrome)
                  
r
      = reverse (priority: monochrome > matrix > lut)
     -p oride      l =
      Lab_PCS (default), j = CIECAM02 Appearance Jab
     -l
      tlimit     set total ink limit, 0 - 400%
      (estimate by default)
     -L
      klimit     set black ink limit, 0 - 100%
      (estimate by default)
     -c viewcond  
      set viewing conditions for CIECAM02,
                  
either
      an enumerated choice, or a series of parameters:value changes
                pc
        - Critical print evaluation environment (ISO-3664 P1)
                   
      pp - Practical Reflection Print (ISO-3664 P2)
                  pe - Print
      evaluation environment (CIE 116-1995)
                pm - Print
      evaluation with partial Mid-tone adaptation
         
            mt - Monitor in typical work environment
           
 
        mb - Monitor in bright work environment
         
            md - Monitor in darkened work
      environment
         
            jm - Projector in dim environment
         
            jd - Projector in dark environment
        
            pcd - Photo CD - original scene outdoors
         
            ob - Original scene - Bright Outdoors
         
            cx - Cut Sheet Transparencies on a
      viewing box
            
s:surround  
      n = auto, a = average, m = dim, d = dark,
                  
 
           c = transparency (default average)
            
w:X:Y:Z     
      Adapted white point as XYZ (default media white)
            
w:x:y       
      Adapted white point as x, y
            
a:adaptation
      Adaptation luminance in cd.m^2 (default 50.0)
            
b:background
Background
      % of image luminance (default 20)
               l:imagewhite Image
      white in cd.m^2 if surround = auto (default 250)
            
        f:flare      Flare light % of image
        luminance (default 0)
              
      g:glare      Glare light % of ambient
      (default 5)
            
      g:X:Y:Z      Glare color as XYZ (default
      media white)
            
      g:x:y        Glare color as x,
      y
            
                h:hkscale    Helmholtz-Kohlrausch effect
                scale factor (default 1.0)
                      
              m:mtaf       Mid-tone
              partial adaptation factor (default 0.0)
                    
              m:X:Y:Z      Mid-tone Adaptation
              white as XYZ (default D50)
                    
              m:x:y        Mid-tone
              Adaptation white as x, y
       -x pcent       Expand/compress
      gamut cylindrically by percent
       -s            
Create
      special cube surface topology plot
    profile         
      The name of the ICC profile, as well as the basename of the gamut [.gam] and/or X3DOM [.x3d.html] file. 
    Comments
    The parameters are all those that control which table in the ICC
    profile to use, as well as what color space to convert it to. 
    
    The -v flag dumps out the ICC profile header information.
    Using -v -w will also print the gamut volume in
    cubic L*a*b* units.
    
    The -d parameter controls the level of detail displayed in
    the surface. The parameter roughly corresponds to a deltaE value, so
    smaller values give greater detail. The default value is around 10,
    and is a good place to start. Small values may take a lot of time to
    generate, and will produce big files.
    
    The -w flag causes a X3DOM file to be produced, as well as a
    gamut file.
    
    The -n flag suppresses the L*a*b* axes being created in the
    X3DOM.
    
    The -k flag adds markers
    for each of the primary and secondary "cusp" points (Red, Yellow,
    Green, Cyan, Blue & Magenta). No markers will be displayed if
    the cusps cannot be determined.
    
    The -f parameter allows choosing the ICC table to be used
    in plotting the gamut. The backwards tables generally incorporate
    gamut compression, and therefore don't reflect the native
    capabilities of the device.
    
    The -i flag selects the intent transform used for a lut
    based profile. It also selects between relative and absolute
    colorimetric for non-lut base profiles. Note that anything other
    than colorimetric may not represent the native capabilities of the
    device. The default intent will be absolute colorimetic for L*a*b*
    output, and CIECAM02 appearance for Jab output.
    
    An ICC profile is allowed to contain more than the minimum number of
    elements or table needed to describe a certain transform, and may
    contain redundant descriptions.  By default, lut based table
    information will be used first if present, followed by matrix/shaper
    information, and only using monochrome information if it is all that
    is present. The -o flag, reverses this
    order.    
    
    -p: By default the gamut
    will be created in L*a*b* colorspace. If  -pj is selected, then CIECAM02
    appearance space Jab will be used for the output, and the viewing
    conditions will be taken into account. Jab space is what is normally
    needed to be compatible with the default intents used in colprof. 
    Note that the CIECAM02 output space selection by default uses
    the colorimetric transform of the profile resulting in the
    appearance of the native device, but that the perceptual or
    saturation transforms may be used by selecting them using the -i parameter, which may give a
    different result with some profiles. This may be desirable if an
    image is to be transformed through the perceptual or saturation
    tables of a profile as part of a link with an Argyll generated
    output profile, since it will then represent the apparent gamut of
    the image when subject to these tables. If the absolute colorimetric
    intent is chosen using -ia
    in combinations with -pj,
    then  Jab with a fixed white reference is used, which emulates
    an absolute CIECAM02 Jab appearance space. 
    
    The -l parameter allows setting a total ink limit (TAC) for
    printing devices. If a device has a total ink limit, and hasn't been
    characterised with device values above this limit, then plotting the
    gamut in these areas will almost certainly be misleading. tables. By
    default, a total ink limit will be estimated from the profile
    tables. The ink limit will be in final calibrated device values if
    the profile includes calibration information.
    
    The -L parameter allows setting a black ink limit for
    printing devices. If a device is to be used with a black ink limit,
    then it is useful to evaluate the gamut with the limit in place. By
    default, a black ink limit will be estimated from the profile
    tables. The ink limit will be in final calibrated device values if
    the profile includes calibration information.
    
    The -c parameter allows setting the CIECAM02 viewing
    conditions, either by choosing a typical viewing environment, or
    controlling particular viewing condition parameters.
    
    The -x parameter allows expanding or compressing the
    resulting gamut in a cylindrical direction by the given percentage
    :- i.e "-x 120" will expand by 20%. This may be useful for creating
    a general compression gamut mapping by using such an expanded device
    gamut as input to collink -g or -G.
    
    The -s flag creates a
    special hyper-cube surface plot that is artificially colored. This
    can be useful for identifying the topology of the black ink color
    response.
    Example
    
    To create a view in L*a*b* of the absolute gamut of a CMYK file with
    an ink limit of 260%, one might use:
    
        iccgamut -w
      -ff -ia -l260 profile.icm
    
    and the resulting files will be profile.gam and profile.x3d.html.
    
    To create a gamut suitable for CIECAM02  gamut mapping space in
    colprof or collink, something like
    
        iccgamut -ir -pj -cmt  profile.icm
    
    where the viewing conditions "mt" should the same as the source
    conditions in colprof or collink.