source: trunk/SRC/Colors/lct.pro @ 478

Last change on this file since 478 was 478, checked in by pinsard, 12 years ago

non interactive mode using z-buffer

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.9 KB
RevLine 
[2]1;+
2;
[231]3; @file_comments
[137]4; Fastest than type loadct, file = 'palette.tbl'
[2]5;
[231]6; @categories
[157]7; Graphics, Color
[2]8;
[137]9; @param numpal {in}{optional}
10; number of the color palette we want to select in the file palette.tbl
[2]11;
[231]12; @keyword LIGHTNESS
[137]13; a scalar used to change the Lightness of the color
[163]14; palette to be able to adjust according to the printer we use,
[231]15; the media (paper or slide)...
[19]16;               lightness < 1 to get lighter colors
17;                         > 1 to get darker colors
18;
[137]19; @keyword FILE {default='palette.tbl'}
20; The file containing the color palette. It can be in any directory of the !path
[2]21;
[137]22; @keyword GET_NAME
23; Set this keyword to a named variable in which the names of the color tables
[163]24; are returned as a string array. No changes are made to the color table.
[133]25;
[137]26; @keyword _EXTRA
[260]27; Used to pass keywords to <proidl>LOADCT</proidl>
[133]28;
[137]29; @history
[478]30;
31; - pinsardf 20120814T142936Z curie51.c-curie.tgcc.ccc.cea.fr (Linux)
32;
33;   * not anymore set_plot, 'x' when !d.name = 'z'
34;
[137]35; Sebastien Masson (smasson\@lodyc.jussieu.fr)
36; 30/3/1999: add extra
37; 6/7/1999: mac/windows compatibility
[133]38;
[231]39; @version
40; $Id$
[133]41;
[2]42;-
[327]43PRO lct, numpal, FILE=file, GET_NAME=get_name, LIGHTNESS=lightness, _EXTRA=ex
[114]44;
45  compile_opt idl2, strictarrsubs
46;
[133]47; definition of the name of the file containing colors palettes.
[137]48  if keyword_set(file) then nametbl = file ELSE nametbl = 'palette.tbl'
[239]49; look for nametbl file
[285]50  nametbl = find(nametbl, /firstfound, /nopro)
[239]51  if nametbl NE 'NOT FOUND' then BEGIN
[231]52    if n_elements(ex) NE 0 then $
[137]53       if (where(tag_names(ex) EQ 'FILE'))[0] NE -1 then ex.FILE = nametbl
[133]54; if we are in POSTSCRIPT mode, we have to pass in X mode in order to change the color palette
[137]55    oldname = !d.name
[478]56    ;++if !d.name EQ 'PS' OR !d.name EQ 'Z' then BEGIN
57    if !d.name EQ 'PS' then BEGIN
[137]58      thisOS = !VERSION.OS_FAMILY
59      thisOS = STRMID(thisOS, 0, 3)
60      thisOS = STRUPCASE(thisOS)
61      CASE thisOS of
62        'MAC': SET_PLOT, thisOS
63        'WIN': SET_PLOT, thisOS
64        ELSE: SET_PLOT, 'X'
65      ENDCASE
66      !p.BACKGROUND = (!d.n_colors-1) < 255
67      !p.color = 0
68      if !d.n_colors gt 256 then !p.background = 'ffffff'x
69    ENDIF
[2]70;
[137]71    if arg_present(get_name) then begin
72      if n_elements(numpal) EQ 0 then $
73         loadct, file = nametbl, GET_NAME = get_name, _EXTRA = ex $
74      ELSE loadct, numpal, file = nametbl, /silent, GET_NAME = get_name, _EXTRA = ex
[231]75    ENDIF ELSE BEGIN
[137]76      if n_elements(numpal) EQ 0 then loadct, file = nametbl, _EXTRA = ex $
77      ELSE loadct, numpal, file = nametbl, /silent, _EXTRA = ex
[231]78    ENDELSE
[2]79;
[231]80    if oldname EQ 'PS' AND keyword_set(lightness) then palit, lightness
[19]81;
[137]82    set_plot, oldname
83    IF oldname EQ 'X' OR oldname EQ 'MAC' OR oldname EQ 'WIN' then BEGIN
84      !p.BACKGROUND = (!d.n_colors-1) < 255
85      !p.color = 0
86      if !d.n_colors gt 256 then !p.background = 'ffffff'x
87    ENDIF
[2]88
[137]89  ENDIF ELSE ras = report('The file containing the color palettes doesn''t exist...')
[2]90
[137]91  return
[2]92end
Note: See TracBrowser for help on using the repository browser.