www.gusucode.com > EasyKrig_V3.0工具箱matlab源码程序 > EasyKrig_V3.0/general/radio_action.m
function radio_action(window_index,option_index) % action corresponding to the radio selection % window_index = index of process task % 1 - Data Preparation % 2 - Variogram % 3 - Krig % 2 - Visualization % option_index = index for specific options %% %% Kriging Software Package version 3.0, May 1, 2004 %% Copyright (c) 1999, 2001, 2004, property of Dezhang Chu and Woods Hole Oceanographic %% Institution. All Rights Reserved. global hdl para data switch window_index case 1 % data preparation window switch(option_index) case 1 % external data processing program if get(hdl.dataprep.ext_prog,'value'); set(hdl.dataprep.dat_conv,'enable','on') set(hdl.dataprep.dat_conv_fname,'visible','on'); para.dataprep.ext_prog=1; set(hdl.dataprep.x_axis,'enable','off'); set(hdl.dataprep.y_axis,'enable','off'); set(hdl.dataprep.z_axis,'enable','off'); else set(hdl.dataprep.dat_conv,'enable','off') set(hdl.dataprep.dat_conv_fname,'visible','off'); para.dataprep.ext_prog=0; set(hdl.dataprep.x_axis,'enable','on'); set(hdl.dataprep.y_axis,'enable','on'); set(hdl.dataprep.z_axis,'enable','on'); end case 2 % x-axis direction if get(hdl.dataprep.xdir,'value'); set(hdl.dataprep.axes1,'xdir','reverse'); else set(hdl.dataprep.axes1,'xdir','normal'); end case 3 % y-axis direction if get(hdl.dataprep.ydir,'value'); set(hdl.dataprep.axes1,'ydir','reverse'); else set(hdl.dataprep.axes1,'ydir','normal'); end case 4 % z-axis direction if get(hdl.dataprep.zdir,'value'); set(hdl.dataprep.axes1,'zdir','reverse'); else set(hdl.dataprep.axes1,'zdir','normal'); end case 5 % save data format to a file if get(hdl.dataprep.data_format,'value') set(hdl.dataprep.data_format_browser,'enable','on'); else set(hdl.dataprep.data_format_browser,'enable','off'); end case 6 if get(hdl.dataprep.data_type1,'value') == 1 set(hdl.dataprep.data_type2,'value',0); para.dataprep.data_disptype=1; % current setting dataprep3d(2); end case 7 if get(hdl.dataprep.data_type2,'value') == 1 set(hdl.dataprep.data_type1,'value',0); para.dataprep.data_disptype=2; % current setting dataprep3d(2); end end case 2 % semi-variogram/correlogram window switch option_index case 1 % select variogram if get(hdl.vario.variogram,'value') set(hdl.vario.correlogram,'value',0); else set(hdl.vario.correlogram,'value',1); end if para.status.dataprep == 1 plotvariogram1d(1); elseif para.status.varigram == 1 plotvariogram2d3d(1); variogram_theo(1); end case 2 % select correlogram if get(hdl.vario.correlogram,'value') set(hdl.vario.variogram,'value',0); else set(hdl.vario.variogram,'value',1); end if para.status.dataprep == 1 plotvariogram1d(1); elseif para.status.variogram == 1 corr_y_min=1-max(get(hdl.vario.axes1,'ylim')); plotvariogram1d(1); variogram_theo(1); corr_y_max=max(get(hdl.vario.axes1,'ylim')); set(hdl.vario.axes1,'ylim',[corr_y_min corr_y_max] ); end case 3 % load parameter file if get(hdl.vario.load_para_file,'value'); para.vario.load_para=1; set(hdl.vario.load_file_browser,'enable','on'); set(hdl.vario.save_para_file,'value',0); set(hdl.vario.save_file_browser,'enable','off'); else set(hdl.vario.load_file_browser,'enable','off'); para.vario.load_para=0; end case 4 % save parameters to a file if get(hdl.vario.save_para_file,'value'); para.vario.save_para=1; set(hdl.vario.save_file_browser,'enable','on'); set(hdl.vario.load_para_file,'value',0); set(hdl.vario.load_file_browser,'enable','off'); else set(hdl.vario.save_file_browser,'enable','off'); para.vario.save_para=0; end case 5 % Enable 1-D variogram - isotropy para.vario.anisotropy=0; set(hdl.vario.enable2d3d,'value',0); set(hdl.vario.ang_beg_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_end_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_res_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_wd_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_rot_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_beg_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_end_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_res_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_wd_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_rot_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ytox_ratio,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ztox_ratio,'enable','off','BackgroundColor',[0.65 0.65 0.65]); set(hdl.vario.ang_azm_2d3d,'enable','off'); set(hdl.vario.ang_dip_2d3d,'enable','off'); case 6 % Enable 2-D variogram - anisotropy para.vario.anisotropy=1; set(hdl.vario.enabled,'value',0); set(hdl.vario.ang_dip_2d3d,'enable','on'); set(hdl.vario.ang_azm_2d3d,'enable','on'); if get(hdl.vario.ang_azm_2d3d,'value') set(hdl.vario.ang_beg_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ytox_ratio,'enable','on','BackgroundColor',[1 1 1]); if data.in.dim == 3 set(hdl.vario.ang_dip_2d3d,'enable','on'); set(hdl.vario.ang_beg_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ztox_ratio,'enable','on','BackgroundColor',[1 1 1]); else set(hdl.vario.ang_dip_2d3d,'enable','off'); end else if 0 % not effective at this time set(hdl.vario.ang_beg_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ztox_ratio,'enable','on','BackgroundColor',[1 1 1]); if data.in.dim == 3 set(hdl.vario.ang_beg_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ytox_ratio,'enable','on','BackgroundColor',[1 1 1]); end end end % set3dvariopara(3); case 7 % anisotropic case - select azimuth plane as the primary plane set(hdl.vario.ang_dip_2d3d,'value',0); set(hdl.vario.ang_beg_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ytox_ratio,'enable','on','BackgroundColor',[1 1 1]); % set(hdl.vario.ang_beg_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_end_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_res_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_wd_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_rot_dip,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ztox_ratio,'enable','off','BackgroundColor',[0.65 0.65 0.65]); if data.in.dim == 3 set(hdl.vario.ang_beg_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ztox_ratio,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_dip,'enable','on','BackgroundColor',[1 1 1]); end case 8 set(hdl.vario.ang_azm_2d3d,'value',0); set(hdl.vario.ang_beg_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_dip,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ztox_ratio,'enable','on','BackgroundColor',[1 1 1]); % set(hdl.vario.ang_beg_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_end_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_res_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_wd_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ang_rot_azm,'enable','off','BackgroundColor',[0.65 0.65 0.65]); % set(hdl.vario.ytox_ratio,'enable','off','BackgroundColor',[0.65 0.65 0.65]); if data.in.dim == 3 set(hdl.vario.ang_beg_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_end_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_res_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_wd_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ang_rot_azm,'enable','on','BackgroundColor',[1 1 1]); set(hdl.vario.ytox_ratio,'enable','on','BackgroundColor',[1 1 1]); end end case 3 % kriging window switch option_index case 1 % load parameter file set(hdl.krig.save_para,'value',0); if get(hdl.krig.load_para,'value') para.krig.load_para=1; para.krig.save_para=0; set(hdl.krig.save_para,'value',0); set(hdl.krig.para_file_browser,'enable','on'); set(hdl.krig.vario_para,'value',para.krig.vario_para,'enable','on'); set(hdl.krig.krig_para,'value',para.krig.krig_para,'enable','on'); set(hdl.krig.both_para,'value',para.krig.both_para,'enable','on'); else para.krig.load_para=0; set(hdl.krig.para_file_browser,'enable','off'); set(hdl.krig.vario_para,'value',para.krig.vario_para,'enable','off'); set(hdl.krig.krig_para,'value',para.krig.krig_para,'enable','off'); set(hdl.krig.both_para,'value',para.krig.both_para,'enable','off'); end case 2 % save parameter file set(hdl.krig.load_para,'value',0); if get(hdl.krig.save_para,'value') para.krig.save_para=1; para.krig.load_para=0; set(hdl.krig.load_para,'value',0); set(hdl.krig.para_file_browser,'enable','on'); set(hdl.krig.vario_para,'value',para.krig.vario_para,'enable','off'); set(hdl.krig.krig_para,'value',para.krig.krig_para,'enable','off'); set(hdl.krig.both_para,'value',para.krig.both_para,'enable','off'); else set(hdl.krig.para_file_browser,'enable','off'); para.krig.save_para=0; end case 3 % variogram parameter file only if get(hdl.krig.vario_para,'value') para.krig.vario_para=1; para.krig.krig_para=0; para.krig.both_para=0; set(hdl.krig.krig_para,'value',0); set(hdl.krig.both_para,'value',0); end case 4 % kriging parameter file only if get(hdl.krig.krig_para,'value') para.krig.vario_para=0; para.krig.krig_para=1; para.krig.both_para=0; set(hdl.krig.vario_para,'value',0); set(hdl.krig.both_para,'value',0); end case 5 % both variogram and kriging parameter files if get(hdl.krig.both_para,'value') para.krig.vario_para=0; para.krig.krig_para=0; para.krig.both_para=1; set(hdl.krig.vario_para,'value',0); set(hdl.krig.krig_para,'value',0); end case 6 % load data file if hdl.status.dataprepfig ~= 1 & isempty(para.krig.data_format_file) message(1,'Need a Data Format File first or Load a data file in Data Preparation Window !!'); set(hdl.krig.load_data_file,'value',0) return end if get(hdl.krig.load_data_file,'value') set(hdl.krig.data_file_browser,'enable','on'); set(hdl.krig.data_file,'visible','on'); else para.krig.load_data_file=0; set(hdl.krig.data_file_browser,'enable','off'); set(hdl.krig.data_file,'visible','off'); end case 7 % batch file processing if get(hdl.krig.batch_file_proc,'value') para.krig.batch_file_proc=0; set(hdl.krig.krig_button,'enable','off'); set(hdl.krig.batch_data_file_browser,'enable','on'); set(hdl.krig.batch_data_file,'enable','on'); set(hdl.krig.batch_log_file_browser,'enable','on'); set(hdl.krig.batch_log_file,'enable','on'); set(hdl.krig.batch_krig,'enable','on'); else para.krig.batch_file_proc=0; set(hdl.krig.krig_button,'enable','on'); set(hdl.krig.batch_data_file_browser,'enable','off'); set(hdl.krig.batch_data_file,'enable','off'); set(hdl.krig.batch_log_file_browser,'enable','off'); set(hdl.krig.batch_log_file,'enable','off'); set(hdl.krig.batch_krig,'enable','off'); end case 8 % custormized grid points if get(hdl.krig.customized_gridfile,'value') set(hdl.krig.gridfile_browser,'enable','on'); else para.krig.load_griddata_file=0; para.krig.bat_proc_cnt=0; para.krig.grid_file=''; set(hdl.krig.gridfile_browser,'enable','off'); end case 9 % load data format file if get(hdl.krig.load_data_format_file,'value') set(hdl.krig.data_format_file_browser,'enable','on'); set(hdl.krig.data_file,'visible','on'); else para.krig.load_data_format_file=0; set(hdl.krig.data_format_file_browser,'enable','off'); set(hdl.krig.data_file,'visible','off'); end end case 4 %visualization window if option_index == 1 % data forward/inverse transformation para.dispkrig.Qcheck=0; para.dispkrig.JKcheck=0; dispkrig(1) end end