;------------------------------------------------------------ ;------------------------------------------------------------ ;------------------------------------------------------------ ;+ ; NAME:PLACECOLOR ; ; PURPOSE:permet de tracer la colorbar independammment d'un graphe ; ; CATEGORY:graph ; ; CALLING SEQUENCE:placecolor,pos ; ; INPUTS: ; pos:vecteur de 4 elements donnant les coordonnees du coin en bas ; a gauche et de celui en haut a droite -en cm- ds lequel on veut faire la ; barre de couleur ; ; KEYWORD PARAMETERS: tous ceux de colorbar.pro. ; ; par defaut trace une barre de couleur du meme type que celle presente ds plt ; et pltz. si max, min et divisions ne sont pas stipulees alors max=sup,min=inf ; et divisions=div ; ; OUTPUTS: ; ; COMMON BLOCKS: ; common.pro ; ; SIDE EFFECTS: ; ; RESTRICTIONS:utilisable que pour les POSTCRIPT effectues avec plein2dessin ; ; EXAMPLE: ; ; MODIFICATION HISTORY: Sebastien Masson (smasson@lodyc.jussieu.fr) ; 7/5/98 ;- ;------------------------------------------------------------ ;------------------------------------------------------------ ;------------------------------------------------------------ pro placecolor, pos, _extra = ex ;------------------------------------------------------------ ; include commons ; compile_opt idl2, strictarrsubs ; @cm_4ps IF NOT keyword_set(key_forgetold) THEN BEGIN @updatenew ENDIF ;--------------------- ; xsave = !x ysave = !y psave = !p ; reinitplt, /z, /invert pos=1.*pos mipgsz = min(page_size, max = mapgsz) if key_portrait eq 1 then begin pos[0]=pos[0]/mipgsz pos[1]=pos[1]/mapgsz pos[2]=pos[2]/mipgsz pos[3]=pos[3]/mapgsz endif else begin pos[0]=pos[0]/mapgsz pos[1]=pos[1]/mipgsz pos[2]=pos[2]/mapgsz pos[3]=pos[3]/mipgsz ENDELSE ; def_myuniquetmpdir ; IF lmgr(/demo) EQ 1 THEN BEGIN ; if we are in demo mode, we cannot save the parameters in a temporary file... @cm_demomode_used ; colnumb = colorbarparam.colnumb clbinf = colorbarparam.clbinf clbsup = colorbarparam.clbsup clbdiv = colorbarparam.clbdiv ; ENDIF ELSE BEGIN file = myuniquetmpdir + '4colorbar.dat' IF file_test(file) THEN BEGIN restore, file if size(ex, /type) EQ 8 then BEGIN if (where(tag_names(ex) EQ 'MIN'))[0] NE -1 then clbinf = ex.MIN if (where(tag_names(ex) EQ 'MAX'))[0] NE -1 then clbsup = ex.MAX if (where(tag_names(ex) EQ 'DIVISIONS'))[0] NE -1 then clbdiv = ex.DIVISIONS ENDIF ; COLORBAR, COLOR = 0, DIVISIONS = clbdiv, DISCRET = colnumb $ , cb_color = 0, POSITION = pos, MAX = clbsup $ , MIN = clbinf, cb_charsize = !p.charsize $ , _extra = ex ENDIF ENDELSE ; !x = xsave !y = ysave !p = psave ;------------------------------------------------------------ return end