Skip to content
Snippets Groups Projects
Commit eff2a5e0 authored by Andi Walther's avatar Andi Walther :speech_balloon:
Browse files

work on ctp

parent 5440c0bc
No related branches found
No related tags found
No related merge requests found
pro aw_view2d, data_in ,_extra = _extra $
, no_data_idx = no_data_idx $
, space_idx = space_idx $
, space_col = space_col $
, jpg = jpg $
, bartitle = bartitle $
, xrange = xrange $
......@@ -11,6 +12,7 @@ pro aw_view2d, data_in ,_extra = _extra $
, layout = layout $
, color_bar = color_bar $
, cmb = cmb $
, ctp_class = ctp_class $
, noax = noax $
, w =w ; msg coast point
......@@ -18,10 +20,23 @@ pro aw_view2d, data_in ,_extra = _extra $
default,bartitle,''
default,position, [0.2,0.1,0.95,0.9]
data = data_in
data = float(data_in )
n_dim = size(dfata,/n_dim)
if n_elements(no_data_idx) gt 0 then begin
data[no_data_idx] = !VALUES.F_NAN
endif
if n_dim eq 3 then begin
for i=0,2 do data[i,no_data_idx] = !VALUES.F_NAN
endif else begin
data[no_data_idx] = !VALUES.F_NAN
endelse
endif
if n_elements(space_idx) gt 0 then begin
data[space_idx] = !VALUES.F_NAN
endif
if n_elements(color_bar) eq 1 then begin
......@@ -84,12 +99,23 @@ pro aw_view2d, data_in ,_extra = _extra $
ctt = ['white','green','blue','ivory']
data = bytscl(data,top=3,min=0,max=3)
endif
if keyword_set(ctp_class) then begin
ctt = ['gray','blue','light green','red','white']
data = bytscl(data,top=3,min=0,max=3)
if n_elements(space_idx) gt 0 then begin
data[space_idx] = 4
endif
endif
;ct[0,*] = cgcolor('gray',/triple)
p = image(data,rgb_table=ctt,_extra = _extra, position = position $
if size(data,/n_dim) eq 3 then begin
p = image(data,buffer = buffer,/current)
endif else begin
p = image(data,rgb_table=ctt,_extra = _extra, position = position $
, font_size = 13.,background_color='gray',aspect_ratio=aspect_ratio,/current,layout = layout,min_value=0 )
endelse
if ~keyword_set(noax) then begin
p.axis_style = 3
xax = AXIS('X', LOCATION='bottom', TICKDIR=0, MINOR=0,coord_TRANS=[a_x,b_x],target = p)
......
......@@ -15,12 +15,18 @@ end
function cws_read::readdata_OCA, version
default,version,'icwg2'
self.infile = file_search(self.build_source_path(), $
'OCA_SEV_MET-09_F2L01_'+self->get_date(/string,/year,/month,/day_single) +'_' + $
self->get_date(/string,/hour,/minute)+'.nc',c=c)
if c ne 1 then return,-1
if c ne 1 then begin
print,'pattern :',self.build_source_path()
print,'OCA_SEV_MET-09_F2L01_'+self->get_date(/string,/year,/month,/day_single) +'_' + $
self->get_date(/string,/hour,/minute)+'.nc'
return,-1
endif
case strLowCase(version) of
'icwg2': begin
......
......@@ -18,9 +18,8 @@
PRO cws_read::transformIt, version=version, force=force
version = 'ICWG2'
COMMON FEEDBACK, quiet, verbose, debug
verbose =1
IF verbose THEN PRINT, '... transform file format for ', self.product $
IF self.verbose THEN PRINT, '... transform file format for ', self.product $
, ' of group ', self.grp, ' (cws_read__transformit.pro)'
if self.scale ne 1.0 then begin
......
......@@ -11,10 +11,10 @@ pro cws_stats::constants
reg = orderedhash()
; group list
grpList =['CMS','EUM','OCA','MPF','FUB','DLR','MFR','RMB','AWG','UKM','GSF','LAR','COX','OCA2','KNM','TPS','SUI','CLV','LARN','MFRN']
has_ctp = [1 ,1 ,1 ,1 ,0 ,1 ,0 ,0 ,1 ,1 ,0 ,1 ,0 ,0, 0 ,1 ,1 ,1 ,1, 1]
has_ctt = [ 1 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,1 ,1 ,1 ,1 ,0 ,0, 0 ,1 ,0 ,1 ,1, 1]
has_ctp = [1 ,1 ,1 ,1 ,0 ,1 ,0 ,0 ,0 ,1 ,0 ,1 ,0 ,0, 0 ,1 ,1 ,1 ,1, 1]
has_ctt = [ 1 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 ,1 ,1 ,1 ,0 ,0, 0 ,1 ,0 ,1 ,1, 1]
;has_ctp = [0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 ,0 ,1 ,0 ,0, 0 ,0 ,0 ,1 ,1]
has_cmb = [1,1,1,1,0,0,1,0,1,1,0,0,0,0,0,1,1,1,1,1]
has_cmb = [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1]
has_cod = [1,0,1,0,0,0,0,1,1,1,1,1,0,0,0,1,0,1,1,1]
version = [4,2,4,2,1,2,2,2,2,4,2,2,3,3,4,4,4,4,4,4]
......
......@@ -465,322 +465,7 @@ pro cws_stats::make_image, group=group, hour=hour, product=product, single=singl
'ctp':begin
if self.verbose then print,'... create cloud top pressure images'
x_def = !x
y_def = !y
if keyword_set(single) then begin
; single plot
!p.multi=0
!x.margin = 2.0
!y.margin = [0.0,0.2]
!y.omargin = [0.2,0.2]
charsize = 0.95
endif else begin
; self->startDevice, xscale=0.2 + (2./3.*float(pmultimg[1])) $
; , yscale=0.5 + (2./3.* float(pmultimg[1])), addn=addName
!x.margin=0.9
!y.margin=[0.2,2.2]
!x.omargin=1.
!y.omargin=[9.,6.]
charsize = 3.
!p.multi = self.coef['prd',self.product,'pmulti']
Window,2,xsize= 400 * !p.multi[1],ysize=400.* !p.multi[2]
endelse
lon = self->lon()
low = lon*0.
mid = lon*0.
hig = lon*0.
; loop over groups
; FOR gg = 0 , n_elements(guteInd) -1 DO BEGIN
;
foreach group, group_list do begin
print, ' create picture for group ', group
self->set_group, group
; read the data from file
img = self->get_data(phase=phase, surf=surf )
; skip plot if single plot is wanted and there is no data
if keyword_set(single) and n_elements(img) eq 1 then continue
; skip groups with no data
if max(img) eq -1 then begin
img=fltarr(ndims)-1.
endif else begin
ndims = size(img,/dim)
endelse
!p.charsize = imgCharsize
dum = (0 * img) $
+ 1*(between(img,100,400)) $
+ 2*(between(img,400,700) ) $
+ 3*(between(img,700,1000) )
print, group +' min/max CTP: ', min(img), max(img)
r = 255.*(dum eq 3)
g = 255.*(dum eq 2)
b = 255.*(dum eq 1)
img2 = fix(0> transpose([ [[r]] , [[g]] , [[b]]],[2,0,1]) <255)
hig += dum eq 1
mid += dum eq 2
low += dum eq 3
; for single plot open device for each group
if keyword_set(single) then begin
; self->startDevice, xscale=1.2, yscale=1.2, /single, n1 = group_str, addn=addName
window,xsize=800,ysize=800
position = [0.05,0.1,0.90,1.0]
endif else begin
delvar, position
endelse
view2d, img2 $
,no_data_idx=where(img le 0) $
,coast_vec=size(coast,/type) eq 10 ? coast : 0 $
; ,title = group_str $
,aspect=1 $
,coast_col=0 $
,mini=1 $
,maxi=3 $
,ticklength =0. $
,/cool $
,/no_axes $
,charsize=charsize * 0.8 $
,space_idx = where(lon lt -200) $
,space_col= !p.background $
,col_table = 14 $
,verbose = verbose, position=position
; single plot for each group ...
if keyword_set(single) then begin
; write date and region above the title
xyouts, 0.5, 0.97, self.coef['prd',product,'longname'] $
+ ', ' + self->get_date(/nice) $
+ ', ' + 'Cut-'+string(self.cut,format='(i2.2)'),color=fsc_color('black'),/normal $
,alignment=0.5, charsize=5.9
; plot color bar for single plot
r_dum=fltarr(120,30)
g_dum=fltarr(120,30)
b_dum=fltarr(120,30)
for i=0,2 do begin
if i eq 0 then r_dum[i*40:((i+1)*40)-1,*] = 255
if i eq 1 then g_dum[i*40:((i+1)*40)-1,*] = 255
if i eq 2 then b_dum[i*40:((i+1)*40)-1,*] = 255
endfor
dumColorBar = lonarr(90,10)
for tt = 0 ,2 do dumColorBar[(tt*30):((tt+1)*30)-1,0:9] = tt+1
loadct,39
img3 = fix(0> transpose([ [[r_dum]] , [[g_dum]] , [[b_dum]]],[2,0,1]) <255)
tv,img3,0.25,0.05,/normal,true=1,xsize=0.5,ysize=0.06
for i=0,2 do begin
case i of
0:d='Low'
1:d='Mid'
2:d='High'
endcase
xyouts,0.34+i*0.165,0.065,d $
,/normal,color=fsc_color('white'),alignment=0.5, charsize=1.0
endfor
; close file for each group
outname = self->build_result_filename(_extra=_extra, single=single $
, n_disks=n_disks,n1=group_str)+addname
write_jpeg,outname+'.jpg',tvrd(/true),/true
print,outname
endif else begin
xyouts,1.06 * !x.crange[0] ,0.92 * !y.crange[1],group,align=0.,charsize=4.,/data,charthick = 2.
endelse
endforeach
if not keyword_set(single) then begin
; write product and region
loadct, 0, /SILENT
; write date
xyouts,0.02,0.95,self->get_date(/nice),/normal,charsize=0.8*imgCharsize
; plot color bar for multi plot
;dumColorBar = lonarr(90,10)
;for tt = 0 ,2 do dumColorBar[(tt*30):((tt+1)*30)-1,0:9] = tt+1
r_dum=fltarr(300,30)
g_dum=fltarr(300,30)
b_dum=fltarr(300,30)
for i=0,2 do begin
if i eq 0 then r_dum[i*100:((i+1)*100)-1,*] = 255
if i eq 1 then g_dum[i*100:((i+1)*100)-1,*] = 255
if i eq 2 then b_dum[i*100:((i+1)*100)-1,*] = 255
endfor
loadct,39
img3 = fix(0> transpose([ [[r_dum]] , [[g_dum]] , [[b_dum]]],[2,0,1]) <255)
tv,img3,0.35,0.02,/normal,true=1,xsize=0.3,ysize=0.04
for i=0,2 do begin
case i of
0:d='Low'
1:d='Mid'
2:d='High'
endcase
xyouts,0.36+i*0.06,0.024,d $
,/normal,color=fsc_color('white'),alignment=0.5,charthick=1.7
endfor
endif
if n_elements(group_list) gt 2 then begin
; for single plot open device for Match plot
if keyword_set(single) then self->startDevice, xscale=1.2, yscale=1.2, n1 = 'MATCH', addn=addName
; plot the disagreement (either seperate file or multi file)
r = 255.*(low/11.)
g = 255.*(mid/11.)
b = 255.*(hig/11.)
img = fix(0> transpose([ [[r]] , [[g]] , [[b]]],[2,0,1]) <255)
; self->startDevice,add='_match',xs=1.,ys=1.2
; x2ps,self->build_result_filename(_extra=_extra,single=single)+'_match'+'.eps'
; !p.multi=0
non_agree = where( (total(img ne 0,1) eq 2.) AND (lon gt (-100)) )
view2d, img, /no_a,/asp,space_idx = where(lon lt -200),space_col=!p.background $
, no_data_idx = non_agree , no_data_col = fsc_color('gray') $
, title = 'Match', charsize=charsize * 0.8 $
, coast_vec=size(coast,/type) eq 10 ? coast : 0
r_dum=fltarr(120,30)
g_dum=fltarr(120,30)
b_dum=fltarr(120,30)
for i=0,2 do begin
if i eq 0 then r_dum[i*40:((i+1)*40)-1,*] = 255
if i eq 1 then g_dum[i*40:((i+1)*40)-1,*] = 255
if i eq 2 then b_dum[i*40:((i+1)*40)-1,*] = 255
endfor
; single plot for each group ...
if keyword_set(single) then begin
; write date and region above the title
xyouts, 0.5, 0.95, 'MATCH' $
+' '+'Cut-'+makes(self.cut,self.cut,1,di=2),color=fsc_color('black'),/normal $
,alignment=0.5,charsize=0.9
; close file for each group
self->endDevice
if ~keyword_set(ps) then self->makeJPG
endif
endif ; match
; if not keyword_set(single) then begin
; ; plot color bar for multiplot
; dumColorBar = lonarr(90,10)
; for tt = 0 ,2 do dumColorBar[(tt*30):((tt+1)*30)-1,0:9] = tt+1
;
; ; view2d, dumColorBar,pos = [0.1,0.3,1.0,0.5],/cool,/no_ax,col_table = 14
; ;
; ; xyouts,100.*0.16,5,'High',align=0.5,/data,col=fsc_color('white'),charsize=0.8
; ; xyouts,100.*0.47,5,'Middle',align=0.5,/data,col=fsc_color('white'),charsize=0.8
; ; xyouts,100.*0.78,5,'Low',align=0.5,/data,col=fsc_color('white'),charsize=0.8
;
; loadct,39
; img3 = fix(0> transpose([ [[r_dum]] , [[g_dum]] , [[b_dum]]],[2,0,1]) <255)
; tv,img3,0.35,0.02,/normal,true=1,xsize=0.3,ysize=0.04
;
; for i=0,2 do begin
; case i of
; 0:d='Low'
; 1:d='Mid'
; 2:d='High'
; endcase
; xyouts,0.4+i*0.1,0.06,d $
; ,/normal,color=fsc_color('white'),alignment=0.5
; endfor
; endif
;
xyouts,0.55,0.97,self.coef['prd',product,'longname'] $
+' '+'Cut-'+string(self.cut,form='(i2.2)'),color=fsc_color('white'),/normal $
,alignment=0.5,charsize=4,charthick = 2.
; RGB picture is switched off
if n_elements(group_list ) lt (!p.multi[1]*!p.multi[2]) then begin
rgb = self->rgb()
view2d,rgb,/cool,/no_axes $
,/aspect $
,space_idx=where(self->lon() lt -200) $
,space_col=!p.background
orbt_nr = time_2_orbit( $
julday(self.month,self.day,self.year,self.hour,self.minute))
oCwsAtrain = obj_new('cws2',overpass=orbt_nr)
lon = oCwsAtrain->get_data(prod='LON',/data)
lat = oCwsAtrain->get_data(prod='LAT',/data)
ydt = oCwsAtrain->get_data(pr='YDT',/data)
pxl = geo_2_msg(lon,lat)
ind = where (between((ydt mod (3600D*24D))/3600D $
,float(self.hour)+float(self.minute)/60. $
,float(self.hour)+(float(self.minute))/60.+0.3) $
and between(pxl.(0),self.x_0,self.x_1) $
and between(pxl.(1),self.y_0,self.y_1) ,cW)
lon = self->lon()
!p.multi=0
if cw gt 0 then begin
scale = self.scale eq 0 ? 1 : self.scale
plots,((pxl.(0)-self.x_0)*scale)[ind],((pxl.(1)-self.y_0)*scale)[ind] $
,color=fsc_color('red'),/data
endif
endif
png_transparent_bg, tvrd(true=3), color = color , name = self.build_result_filename(_extra=_extra,single=single,n_disks=n_disks)+addname+'.png'
print,'created pic: ', self.build_result_filename(_extra=_extra,single=single,n_disks=n_disks)+addname+'.png'
!x=x_def
!y=y_def
self.make_image_ctp,single = single, addtitle = addtitle, group = group, phase=phase,addname= addname
end
......
......@@ -6,8 +6,7 @@ pro cws_stats::make_image_cmb $
, phase = phase
x_def = !x
y_def = !y
group_list = self->create_group_list(product=product, group=group, guteInd=guteInd, single=single, no_FUB=no_FUB)
n_groups = n_elements(group_list)
......
pro cws_stats::make_image_ctp $
, single = single $
, addtitle=addtitle $
, group = group $
, phase = phase $
, addname = addname
if self.verbose then print,'... create cloud top pressure images'
group_list = self->create_group_list(product=product, group=group, guteInd=guteInd, single=single, no_FUB=no_FUB)
n_groups = n_elements(group_list)
if keyword_set(single) then begin
; single plot
!p.multi=0
!x.margin = 2.0
!y.margin = [0.0,0.2]
!y.omargin = [0.2,0.2]
charsize = 0.95
endif else begin
!P.multi=self.coef['prd','ctp','pmulti']
w1 = window ( dimensions = [400 * ceil((n_groups+2)/3.),406*3] , location =[0.1,0.1] )
endelse
lon = self->lon()
low = lon*0.
mid = lon*0.
hig = lon*0.
gg = 0
foreach group, group_list do begin
print, ' create picture for group ', group
self.set_group, group
; read the data from file
img = self->get_data(phase=phase, surf=surf )
; skip plot if single plot is wanted and there is no data
if keyword_set(single) and n_elements(img) eq 1 then continue
; skip groups with no data
if max(img) eq -1 then begin
img=fltarr(ndims)-1.
endif else begin
ndims = size(img,/dim)
endelse
dum = (0 * img) $
+ 1*(between(img,100,400)) $
+ 2*(between(img,400,700) ) $
+ 3*(between(img,700,1000) )
print, group +' min/max CTP: ', min(img), max(img)
hig += dum eq 1
mid += dum eq 2
low += dum eq 3
; for single plot open device for each group
if keyword_set(single) then begin
; self->startDevice, xscale=1.2, yscale=1.2, /single, n1 = group_str, addn=addName
window,xsize=800,ysize=800
position = [0.05,0.1,0.90,1.0]
endif else begin
undefine, position
endelse
aw_view2d,dum, w = w $
, title = group $
, min_value = 0, font_size = 18,/ctp_class,/noax, /buffer $
, space_idx = where(lon lt -200)
rr = w.CopyWindow(BORDER=0)
w1.setCurrent
pp = image(rr,layout = [ceil((n_groups+2)/3.),3,gg+1], /current )
w.close
gg ++
endforeach
if n_elements(group_list) gt 2 then begin
; for single plot open device for Match plot
;if keyword_set(single) then self->startDevice, xscale=1.2, yscale=1.2, n1 = 'MATCH', addn=addName
; plot the disagreement (either seperate file or multi file)
r = 40+215.*(low/float(n_groups))
g = 40+215.*(mid/float(n_groups))
b = 40+2125.*(hig/float(n_groups))
img_show = fix(0> transpose([ [[r]] , [[g]] , [[b]]],[2,0,1]) <255)
r = 255.*(low/float(n_groups))
g = 255.*(mid/float(n_groups))
b = 255.*(hig/float(n_groups))
img = fix(0> transpose([ [[r]] , [[g]] , [[b]]],[2,0,1]) <255)
; make pixels gray
idx_0 = where(img eq 0)
img_show[idx_0] = 0
idx = where(total(img,1) eq 0.)
for i=0,2 do begin
img_sm = img_show[i,*,*]
img_sm[idx] = 0.
img_show[i,*,*] = img_sm
endfor
idx_space = where(lon lt -200)
for i=0,2 do begin
img_sm= img_show[i,*,*]
img_sm[idx_space] =255.
img_show[i,*,*] = img_sm
endfor
aw_view2d,img_show,/noax, w=w
rr = w.CopyWindow(BORDER=0)
w1.setCurrent
pp = image(rr,layout = [ceil((n_groups+2)/3.),3,gg+1], /current )
w.close
gg++
img = fix(0> transpose([ [[r]] , [[g]] , [[b]]],[2,0,1]) <255)
agree = max(img,dim=1)
img_tot = total(img,1)
aw_view2d,agree/255.,/noax, w=w,/colo,no_data_idx=where(lon lt -200 or agree eq 0 or img_tot lt 254)
rr = w.CopyWindow(BORDER=0)
w1.setCurrent
pp = image(rr,layout = [ceil((n_groups+2)/3.),3,gg+1], /current )
w.close
gg++
; single plot for each group ...
if keyword_set(single) then begin
; write date and region above the title
xyouts, 0.5, 0.95, 'MATCH' $
+' '+'Cut-'+makes(self.cut,self.cut,1,di=2),color=fsc_color('black'),/normal $
,alignment=0.5,charsize=0.9
; close file for each group
self->endDevice
if ~keyword_set(ps) then self->makeJPG
endif
endif ; match
if not keyword_set(single) then begin
t11 = text( 0.02,0.95,self->get_date(/nice))
; plot color bar for multi plot
;dumColorBar = lonarr(90,10)
;for tt = 0 ,2 do dumColorBar[(tt*30):((tt+1)*30)-1,0:9] = tt+1
legend_dum = fltarr(300,30)
legend_dum[0:99,*] = 1
legend_dum[100:199,*] = 2
legend_dum[200:299,*] = 3
aw_view2d,legend_dum,/ctp_class, w= w
for i=0,2 do begin
case i of
2:d='Low'
1:d='Mid'
0:d='High'
endcase
t22 = text(0.36+i*0.06,0.24, d, 'white')
endfor
rr = w.CopyWindow(BORDER=0)
w1.setCurrent
pp = image(rr,layout = [ceil((n_groups+2)/3.),3,gg+1], /current )
w.close
endif
; if not keyword_set(single) then begin
; ; plot color bar for multiplot
; dumColorBar = lonarr(90,10)
; for tt = 0 ,2 do dumColorBar[(tt*30):((tt+1)*30)-1,0:9] = tt+1
;
; ; view2d, dumColorBar,pos = [0.1,0.3,1.0,0.5],/cool,/no_ax,col_table = 14
; ;
; ; xyouts,100.*0.16,5,'High',align=0.5,/data,col=fsc_color('white'),charsize=0.8
; ; xyouts,100.*0.47,5,'Middle',align=0.5,/data,col=fsc_color('white'),charsize=0.8
; ; xyouts,100.*0.78,5,'Low',align=0.5,/data,col=fsc_color('white'),charsize=0.8
;
; loadct,39
; img3 = fix(0> transpose([ [[r_dum]] , [[g_dum]] , [[b_dum]]],[2,0,1]) <255)
; tv,img3,0.35,0.02,/normal,true=1,xsize=0.3,ysize=0.04
;
; for i=0,2 do begin
; case i of
; 0:d='Low'
; 1:d='Mid'
; 2:d='High'
; endcase
; xyouts,0.4+i*0.1,0.06,d $
; ,/normal,color=fsc_color('white'),alignment=0.5
; endfor
; endif
;
; xyouts,0.55,0.97,self.coef['prd',product,'longname'] $
; +' '+'Cut-'+string(self.cut,form='(i2.2)'),color=fsc_color('white'),/normal $
; ,alignment=0.5,charsize=4,charthick = 2.
; ; RGB picture is switched off
; if n_elements(group_list ) lt (!p.multi[1]*!p.multi[2]) then begin
; rgb = self->rgb()
;
; view2d,rgb,/cool,/no_axes $
; ,/aspect $
; ,space_idx=where(self->lon() lt -200) $
; ,space_col=!p.background
;
;
;
; orbt_nr = time_2_orbit( $
; julday(self.month,self.day,self.year,self.hour,self.minute))
;
; oCwsAtrain = obj_new('cws2',overpass=orbt_nr)
;
;
; lon = oCwsAtrain->get_data(prod='LON',/data)
; lat = oCwsAtrain->get_data(prod='LAT',/data)
; ydt = oCwsAtrain->get_data(pr='YDT',/data)
;
; pxl = geo_2_msg(lon,lat)
;
; ind = where (between((ydt mod (3600D*24D))/3600D $
; ,float(self.hour)+float(self.minute)/60. $
; ,float(self.hour)+(float(self.minute))/60.+0.3) $
; and between(pxl.(0),self.x_0,self.x_1) $
; and between(pxl.(1),self.y_0,self.y_1) ,cW)
;
; lon = self->lon()
; !p.multi=0
;
; if cw gt 0 then begin
; scale = self.scale eq 0 ? 1 : self.scale
; plots,((pxl.(0)-self.x_0)*scale)[ind],((pxl.(1)-self.y_0)*scale)[ind] $
; ,color=fsc_color('red'),/data
; endif
;
; endif
w1.save, self.build_result_filename(_extra=_extra,single=single,n_disks=n_disks)+addname+'.png'
print,'created pic: ', self.build_result_filename(_extra=_extra,single=single,n_disks=n_disks)+addname+'.png'
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment