- Timestamp:
- Dec 9, 2010, 11:31:04 PM (14 years ago)
- Location:
- trunk/src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/civ.m
r150 r153 68 68 testall=0; 69 69 %default input parameters: 70 num 1=1; % set of field i numbers71 num 2=1; % set of field i numbers72 num_ a=1; % set of field j numbers (fields a)73 num_ b=1; % second set of field j numbers (fields b)70 num_i1=1; % set of field i numbers 71 num_i2=1; % set of field i numbers 72 num_j1=1; % set of field j numbers (fields a) 73 num_j2=1; % second set of field j numbers (fields b) 74 74 subdir='A'; % subdir for the netcdf result files 75 75 ind_opening=1; % proposed operation number (1=civ1,2=fix1,3=patch1,4=civ2,5=fix2,6=patch2) … … 78 78 filebase=param.RootName; 79 79 nom_type_read=param.NomType; 80 num1=param.num1; 81 num2=param.num2; 82 num_a=param.num_a; 83 num_b=param.num_b; 80 num_i1=param.num1; 81 if isnan(num_i1),num_i1=1;end 82 num_i2=param.num2; 83 if isnan(num_i2),num_i2=num_i1;end 84 num_j1=param.num_a; 85 if isnan(num_j1),num_j1=1;end 86 num_j2=param.num_b; 87 if isnan(num_j2),num_j2=num_j1;end 84 88 subdir=param.SubDir; 85 89 ind_opening=param.IndOpening; 86 90 ext=param.ImaExt; 87 91 end 88 browse.num_i1=num 1;89 browse.num_i2=num 2;90 browse.num_j1=num_ a;91 browse.num_j2=num_ b;92 browse.num_i1=num_i1; 93 browse.num_i2=num_i2; 94 browse.num_j1=num_j1; 95 browse.num_j2=num_j2; 92 96 if ~isempty(ext) && (~isempty(imformats(ext(2:end)))||strcmpi(ext,'.avi'));%if an image file has been opened by uvmat 93 97 set(handles.ImaExt,'String',ext) … … 195 199 196 200 % set the range of fields (1:1 by default) and selected pair 197 if is nan(num2)||isequal(num2,num1)198 num_ref_i=num 1;199 else 200 num_ref_i=floor((num 1+num2)/2);201 browse.incr_pair(1)=num 2-num1;201 if isequal(num_i2,num_i1) 202 num_ref_i=num_i1; 203 else 204 num_ref_i=floor((num_i1+num_i2)/2); 205 browse.incr_pair(1)=num_i2-num_i1; 202 206 browse.incr_pair(2)=0; 203 207 end 204 if is nan(num_b)||isequal(num_a,num_b)205 if isnan(num_ a)208 if isequal(num_j1,num_j2) 209 if isnan(num_j1) 206 210 num_ref_j=1; 207 211 else 208 num_ref_j=num_ a;209 end 210 else 211 num_ref_j=floor((num_ a+num_b)/2);212 browse.incr_pair(2)=num_ b-num_a;212 num_ref_j=num_j1; 213 end 214 else 215 num_ref_j=floor((num_j1+num_j2)/2); 216 browse.incr_pair(2)=num_j2-num_j1; 213 217 end 214 218 set(handles.first_i,'String',num2str(num_ref_i)); … … 658 662 % nbdetect=0;%test of detected images 659 663 field_i=browse.num_i2; 664 imagename=name_generator(filebase,field_i,1,ext_search,nom_type_search); 665 imagename_plus=''; 660 666 idetect=1; 661 while idetect ==1%look for the maximum file number in the series662 imagename =name_generator(filebase,field_i+1,1,ext_search,nom_type_search);663 idetect=(exist(imagename ,'file')==2);667 while idetect %look for the maximum file number in the series 668 imagename_plus=name_generator(filebase,field_i+1,1,ext_search,nom_type_search); 669 idetect=(exist(imagename_plus,'file')==2)&& ~strcmp(imagename,imagename_plus); 664 670 if idetect 665 671 field_i=field_i+1; … … 670 676 nbfield=field_i;% last detected field number 671 677 field_i=browse.num_i1;%look for the minimum file number in the series 678 imagename_min=''; 672 679 idetect=1; 673 680 while idetect==1 674 imagename =name_generator(filebase,field_i-1,1,ext_search,nom_type_search);675 idetect=(exist(imagename ,'file')==2);681 imagename_min=name_generator(filebase,field_i-1,1,ext_search,nom_type_search); 682 idetect=(exist(imagename_min,'file')==2)&& ~strcmp(imagename,imagename_min); 676 683 if idetect 677 684 field_i=field_i-1; … … 682 689 field_i=browse.num_i1; 683 690 field_j=browse.num_j2; 691 imagename_plus=''; 684 692 jdetect=1; 685 693 while jdetect==1 %look for the maximum file number in the series 686 imagename =name_generator(filebase,field_i,field_j,ext_search,nom_type_search);687 jdetect=(exist(imagename ,'file')==2);694 imagename_plus=name_generator(filebase,field_i,field_j+1,ext_search,nom_type_search); 695 jdetect=(exist(imagename_plus,'file')==2)&& ~strcmp(imagename,imagename_plus); 688 696 if jdetect 689 697 field_j=field_j+1; … … 2479 2487 vers=0; 2480 2488 subdir_civ1_new=subdir_civ1; 2481 ind_test=0; 2482 while detect==1 && ind_test<10%create a new subdir if the netcdf files already exist 2489 while detect==1 %create a new subdir if the netcdf files already exist 2483 2490 for ifile=1:nbfield 2484 2491 for j=1:nbslice -
trunk/src/editxml.m
r89 r153 33 33 'gui_LayoutFcn', [] , ... 34 34 'gui_Callback', []); 35 if nargin & isstr(varargin{1})35 if nargin && ischar(varargin{1}) && ~isempty(regexp(varargin{1},'_Callback','once')) 36 36 gui_State.gui_Callback = str2func(varargin{1}); 37 37 end -
trunk/src/mouse_motion.m
r152 r153 148 148 % nxy(1)=numel(y); 149 149 % nxy(2)=numel(x); 150 MaxAY=max(y(1),y(end)); 151 MinAY=min(y(1),y(end)); 152 if (xy(1,1)>x(1))&(xy(1,1)<x(end))&(xy(1,2)<MaxAY)&(xy(1,2)>MinAY) 153 indx0=1+round((nxy(2)-1)*(xy(1,1)-x(1))/(x(end)-x(1)));% index x of pixel154 indy0=1+round((nxy(1)-1)*(xy(1,2)-y(1))/(y(end)-y(1)));% index y of pixel150 MaxAY=max(y(1),y(end)); %#ok<COLND> 151 MinAY=min(y(1),y(end)); %#ok<COLND> 152 if (xy(1,1)>x(1))&(xy(1,1)<x(end))&(xy(1,2)<MaxAY)&(xy(1,2)>MinAY) %#ok<COLND> 153 indx0=1+round((nxy(2)-1)*(xy(1,1)-x(1))/(x(end)-x(1)));%#ok<COLND> % index x of pixel 154 indy0=1+round((nxy(1)-1)*(xy(1,2)-y(1))/(y(end)-y(1)));%#ok<COLND> % index y of pixel 155 155 if indx0>=1 & indx0<=nxy(2) & indy0>=1 & indy0<=nxy(1) 156 156 text_displ_2=['i=' num2str(indx0) ',j=' num2str(indy0) ',']; -
trunk/src/plot_field.m
r150 r153 310 310 311 311 hfig=get(haxes,'parent'); 312 AxeData= data;312 AxeData=[];%data; 313 313 314 314 ColorOrder=[1 0 0;0 0.5 0;0 0 1;0 0.75 0.75;0.75 0 0.75;0.75 0.75 0;0.25 0.25 0.25]; … … 516 516 end 517 517 AxeData.NbDim=2; 518 if isfield(Data,'ObjectCoord')519 AxeData.ObjectCoord=Data.ObjectCoord;520 end518 % if isfield(Data,'ObjectCoord') 519 % AxeData.ObjectCoord=Data.ObjectCoord; 520 % end 521 521 errormsg=[];%default 522 522 test_ima=0; %default: test for image or map plot … … 858 858 AxeData=[]; 859 859 end 860 AxeData.A=A;861 AxeData.AX=[AX(1) AX(end)];862 AxeData.AY=[AY(1) AY(end)];860 % AxeData.A=A; 861 % AxeData.AX=[AX(1) AX(end)]; 862 % AxeData.AY=[AY(1) AY(end)]; 863 863 test_ima=1; 864 864 … … 912 912 delete(hcol) 913 913 end 914 AxeData.A=[];915 AxeData.AX=[];916 AxeData.AY=[];914 % AxeData.A=[]; 915 % AxeData.AX=[]; 916 % AxeData.AY=[]; 917 917 PlotParamOut=rmfield(PlotParamOut,'Scalar'); 918 918 end … … 960 960 vec_C=ones(1,numel(vec_X)); 961 961 end 962 AxeData.X=vec_X';963 AxeData.Y=vec_Y';964 AxeData.U=vec_U';965 AxeData.V=vec_V';966 AxeData.C=vec_C';967 if isempty(ivar_F)968 AxeData.F=[];969 else970 AxeData.F=vec_F';971 end972 if isempty(ivar_FF)973 AxeData.FF=[];974 else975 AxeData.FF=vec_FF';976 end962 % AxeData.X=vec_X'; 963 % AxeData.Y=vec_Y'; 964 % AxeData.U=vec_U'; 965 % AxeData.V=vec_V'; 966 % AxeData.C=vec_C'; 967 % if isempty(ivar_F) 968 % AxeData.F=[]; 969 % else 970 % AxeData.F=vec_F'; 971 % end 972 % if isempty(ivar_FF) 973 % AxeData.FF=[]; 974 % else 975 % AxeData.FF=vec_FF'; 976 % end 977 977 978 978 %decimate by a factor 2 in vector mesh(4 in nbre of vectors) … … 1034 1034 delete(hvec); 1035 1035 end 1036 AxeData.X=[];1037 AxeData.Y=[];1038 AxeData.U=[];1039 AxeData.V=[];1040 AxeData.C=[];1041 AxeData.W=[];1042 AxeData.F=[];1043 AxeData.FF=[];1036 % AxeData.X=[]; 1037 % AxeData.Y=[]; 1038 % AxeData.U=[]; 1039 % AxeData.V=[]; 1040 % AxeData.C=[]; 1041 % AxeData.W=[]; 1042 % AxeData.F=[]; 1043 % AxeData.FF=[]; 1044 1044 % AxeData.Mesh=[]; 1045 1045 PlotParamOut=rmfield(PlotParamOut,'Vectors'); 1046 1046 end 1047 if isfield(Data,'Z')1048 AxeData.Z=Data.Z;% A REVOIR1049 end1047 % if isfield(Data,'Z') 1048 % AxeData.Z=Data.Z;% A REVOIR 1049 % end 1050 1050 listfields={'AY','AX','A','X','Y','U','V','C','W','F','FF'}; 1051 1051 listdim={'AY','AX',{'AY','AX'},'nb_vectors','nb_vectors','nb_vectors','nb_vectors','nb_vectors','nb_vectors','nb_vectors','nb_vectors'}; … … 1053 1053 %ind_select=[]; 1054 1054 nbvar=0; 1055 AxeData.ListVarName={};1056 AxeData.VarDimName={};1057 AxeData.VarAttribute={};1058 for ilist=1:numel(listfields)1059 eval(['testvar=isfield(AxeData,listfields{ilist}) && ~isempty(AxeData.' listfields{ilist} ');'])1060 if testvar1061 nbvar=nbvar+1;1062 AxeData.ListVarName{nbvar}=listfields{ilist};1063 AxeData.VarDimName{nbvar}=listdim{ilist};1064 AxeData.VarAttribute{nbvar}.Role=Role{ilist};1065 end1066 end1055 % AxeData.ListVarName={}; 1056 % AxeData.VarDimName={}; 1057 % AxeData.VarAttribute={}; 1058 % for ilist=1:numel(listfields) 1059 % eval(['testvar=isfield(AxeData,listfields{ilist}) && ~isempty(AxeData.' listfields{ilist} ');']) 1060 % if testvar 1061 % nbvar=nbvar+1; 1062 % AxeData.ListVarName{nbvar}=listfields{ilist}; 1063 % AxeData.VarDimName{nbvar}=listdim{ilist}; 1064 % AxeData.VarAttribute{nbvar}.Role=Role{ilist}; 1065 % end 1066 % end 1067 1067 %store the coordinate extrema occupied by the field 1068 1068 test_lim=0; -
trunk/src/set_object.m
r150 r153 56 56 end 57 57 % End initialization code - DO NOT PLOT 58 59 %------------------------------------------------------------------- 58 %------------------------------------------------------------------------ 59 %------------------------------------------------------------------------ 60 60 % --- Executes just before set_object is made visible. 61 61 %INPUT: … … 275 275 varargout{2}=handles; 276 276 277 %----------------------------------------------- 277 %------------------------------------------------------------------------ 278 278 % --- Executes on selection change in ObjectStyle. 279 279 function ObjectStyle_Callback(hObject, eventdata, handles) … … 350 350 set(handles.ObjectStyle,'UserData',style) 351 351 352 %---------------------------------------------- 352 %------------------------------------------------------------------------ 353 353 function xObject_Callback(hObject, eventdata, handles) 354 354 355 355 %------------------------------------------------------------------------ 356 356 function yObject_Callback(hObject, eventdata, handles) 357 357 358 358 %------------------------------------------------------------------------ 359 359 % --- Executes on selection change in zObject. 360 360 function zObject_Callback(hObject, eventdata, handles) 361 362 363 361 %------------------------------------------------------------------------ 362 363 %------------------------------------------------------------------------ 364 364 % --- Executes on selection change in ProjMode. 365 365 function ProjMode_Callback(hObject, eventdata, handles) … … 464 464 end 465 465 end 466 % 467 % %--------------------------------------------- 468 % % --- Executes on selection change in TITLE. 469 % function TITLE_Callback(style, handles) 470 % %--------------------------------------------- 471 % switch style 472 % case {'points','line','polyline','plane'} 473 % menu_proj={'projection';'interp';'filter';'none'}; 474 % case {'polygon','rectangle','ellipse'} 475 % menu_proj={'inside';'outside';'mask_inside';'mask_outside'}; 476 % case 'volume' 477 % menu_proj={'none'}; 478 % end 479 % 480 % 481 % old_menu=get(handles.ObjectStyle,'String'); 482 % value=get(handles.ObjectStyle,'Value'); 483 % old_style=old_menu{value}; 484 % teststyle=0; 485 % for iline=1:length(menu_style) 486 % if isequal(menu_style{iline},old_style) 487 % styleval=iline; 488 % teststyle=1; 489 % break 490 % end 491 % end 492 % if ~teststyle 493 % new_style=[];%default 494 % switch old_style 495 % case 'polyline' 496 % new_style='polygon'; 497 % case 'polygon' 498 % new_style='polyline'; 499 % end 500 % if ~isempty(new_style) 501 % for iline=1:length(menu_style) 502 % if isequal(menu_style{iline},new_style) 503 % styleval=iline; 504 % teststyle=1; 505 % break 506 % end 507 % end 508 % end 509 % end 510 % if ~teststyle 511 % styleval=1; 512 % end 513 % set(handles.ObjectStyle,'String',menu_style) 514 % set(handles.ObjectStyle,'Value',styleval) 515 % set(handles.ProjMode,'String',menu_proj) 516 % set(handles.ProjMode,'Value',1) 517 % ObjectStyle_Callback(hObject, eventdata, handles) 518 519 %--------------------------------------------- 466 %------------------------------------------------------------------------ 467 468 %------------------------------------------------------------------------ 520 469 function Phi_Callback(hObject, eventdata, handles) 521 470 update_slider(hObject, eventdata,handles) 522 %--------------------------------------------- 523 471 %------------------------------------------------------------------------ 472 %------------------------------------------------------------------------ 524 473 function Theta_Callback(hObject, eventdata, handles) 525 474 update_slider(hObject, eventdata,handles) 526 475 %------------------------------------------------------------------------ 527 476 function update_slider(hObject, eventdata,handles) 528 477 %rotation angles … … 542 491 ZMax_Callback(hObject, eventdata, handles) 543 492 end 544 493 %------------------------------------------------------------------------ 545 494 function DX_Callback(hObject, eventdata, handles) 546 547 495 %------------------------------------------------------------------------ 496 %------------------------------------------------------------------------ 548 497 function DY_Callback(hObject, eventdata, handles) 549 550 498 %------------------------------------------------------------------------ 499 %------------------------------------------------------------------------ 551 500 function DZ_Callback(hObject, eventdata, handles) 552 553 554 501 %------------------------------------------------------------------------ 502 503 %------------------------------------------------------------------------ 555 504 %----------------------------------------------------- 556 505 % --- Executes on button press in OPEN: DESACTIVATED use uvmat browser … … 740 689 set(handles.YObject,'String',YObject) 741 690 %METTRA A JOUR ASPECT DE L'INTERFACE (COMME set_object_Opening 742 691 %------------------------------------------------------------------------ 743 692 %---------------------------------------------------- 744 693 % executed when closing: set the parent interface button to value 0 … … 768 717 end 769 718 770 %----------------------------------------------------------------------- 719 %------------------------------------------------------------------------ 771 720 % --- Executes on button press in PLOT: PLOT the defined object and its projected field 772 721 function PLOT_Callback(hObject, eventdata, handles) … … 775 724 UvData=get(huvmat,'UserData');%Data associated to the GUI uvmat 776 725 hhuvmat=guidata(huvmat);%handles in the uvmat GUI 777 ObjectName=get(handles.TITLE,'String');%name o me)f the current object (set_object na726 ObjectName=get(handles.TITLE,'String');%name of the current object 778 727 ListObject=get(hhuvmat.list_object_1,'String');%position in the objet list 779 728 IndexObj_1=get(hhuvmat.list_object_1,'Value'); 780 729 IndexObj_2=get(hhuvmat.list_object_2,'Value'); 781 782 % set(plotfig,'Name',['Projection on' num2str(IndexObj) '-' ObjectData.Style]);783 730 ObjectData=read_set_object(handles);%read the input parameters defining the object in the GUI set_object 784 PlotHandles=[];%default785 731 testnew=0; 786 732 PlotHandles=get_plot_handles(hhuvmat); … … 791 737 projview='uvmat'; 792 738 elseif IndexObj_2<=numel(ListObject)&& strcmp(ListObject{IndexObj_2},ObjectName)% we are editing the object whose projection is viewed in view_field 793 hview_field=findobj( 'tag','view_field');739 hview_field=findobj(allchild(0),'tag','view_field'); 794 740 if ~isempty(hview_field) 795 741 PlotHandles=guidata(hview_field); … … 799 745 projview='view_field'; 800 746 else %new object 801 testnew=1; 802 747 testnew=1; 803 748 IndexObj=numel(ListObject)+1; 804 %ObjectName=[num2str(IndexObj) '-' ObjectData.Style]; 805 % ListObject=[ListObject;ObjectName]; 806 % set(hhuvmat.list_object_2,'String',[ListObject;ObjectName;{'...'}]) 807 % set(hhuvmat.list_object_2,'Value',IndexObj) 808 end 809 % ObjectName=get(handles.TITLE,'String'); 810 if length(ObjectName)<1 811 ObjectName=[num2str(IndexObj) '-' ObjectData.Style]; 812 else 813 for ilist=1:numel(ListObject) 814 if strcmp(ListObject{ilist},ObjectName) 815 ObjectName=[num2str(IndexObj) '-' ObjectName]; 816 break 817 end 818 end 749 end 750 if length(ObjectName)<1% name of object not defined in set_object 751 ObjectName=[num2str(IndexObj) '-' ObjectData.Style];%default name 752 elseif ~get(hhuvmat.edit,'Value')%not in edit mode (new object created) 753 detectname=1; 754 ObjectNameNew=ObjectName; 755 vers=0; 756 while detectname==1 %create a new subdir if the netcdf files already exist 757 detectname=find(strcmp(ObjectNameNew,ListObject),1)%test the existence of the proposed name in the list 758 if detectname% if athe object name already exists 759 indstr=regexp(ObjectNameNew,'\D') 760 if indstr(end)<length(ObjectNameNew) %object name ends by a number 761 vers=str2double(ObjectNameNew(indstr(end)+1:end))+1; 762 ObjectNameNew=[ObjectNameNew(1:indstr(end)) num2str(vers)]; 763 else 764 vers=vers+1 765 ObjectNameNew=[ObjectNameNew(1:indstr(end)) '_' num2str(vers)] 766 end 767 end 768 end 769 ObjectName=ObjectNameNew; 819 770 end 820 771 ListObject{IndexObj,1}=ObjectName; … … 842 793 UvData.MouseAction='edit_object'; % set the edit button to 'on' 843 794 set(huvmat,'UserData',UvData) 844 795 %------------------------------------------------------------------------ 845 796 % --- Executes on button press in MenuCoord. 846 797 function MenuCoord_Callback(hObject, eventdata, handles) 847 798 %------------------------------------------------------------------------ 848 799 %---------------------------------------------------- 849 800 function YMin_Callback(hObject, eventdata, handles) 850 801 %------------------------------------------------------------------------ 851 802 852 803 function ZMin_Callback(hObject, eventdata, handles) 853 804 %------------------------------------------------------------------------ 854 805 855 806 function ZMax_Callback(hObject, eventdata, handles) … … 862 813 set(handles.z_slider,'SliderStep',rel_step) 863 814 end 864 815 %------------------------------------------------------------------------ 865 816 function YMax_Callback(hObject, eventdata, handles) 866 817 %------------------------------------------------------------------------ 867 818 868 819 function XMin_Callback(hObject, eventdata, handles) 869 820 %------------------------------------------------------------------------ 870 821 871 822 function XMax_Callback(hObject, eventdata, handles) 872 873 874 % ------------------------------------------------------ 823 %------------------------------------------------------------------------ 824 %------------------------------------------------------------------------ 875 825 function SAVE_Callback(hObject, eventdata, handles) 876 826 % ------------------------------------------------------ … … 914 864 end 915 865 msgbox_uvmat('CONFIRMATION',[answer{1} ' saved']) 916 917 %--------------------------------------------------------- 866 %------------------------------------------------------------------------ 867 %------------------------------------------------------------------------ 918 868 % --- Executes on slider movement. 919 869 function z_slider_Callback(hObject, eventdata, handles) … … 936 886 set(handles.ZObject,'String',num2str(NormVec_Z*Z_value,4)) 937 887 PLOT_Callback(hObject, eventdata, handles) 938 939 888 %------------------------------------------------------------------------ 889 %------------------------------------------------------------------------ 940 890 % --- Executes on button press in HELP. 941 891 function HELP_Callback(hObject, eventdata, handles) … … 948 898 web([helpfile '#set_object']) 949 899 end 950 951 952 900 %------------------------------------------------------------------------ 901 902 -
trunk/src/uvmat.m
r150 r153 4428 4428 list_str=get(handles.list_object_2,'String'); 4429 4429 IndexObj=get(handles.list_object_2,'Value'); 4430 if isequal(list_str{IndexObj},'...')4430 if strcmp(list_str{IndexObj},'...') 4431 4431 hview_field=findobj(allchild(0),'Tag','view_field'); 4432 4432 if ~isempty(hview_field) … … 4441 4441 %------------------------------------------------------------------------ 4442 4442 UvData=get(handles.uvmat,'UserData');%read UvData properties stored on the uvmat interface 4443 if ~(length(UvData.Object)>=IndexObj);4443 if numel(UvData.Object)<IndexObj; 4444 4444 return 4445 4445 end … … 4463 4463 4464 4464 % %project the current field on the object and plot it 4465 % ProjData= proj_field(UvData.Field,ObjectData,IndexObj);%project the current interface field on ObjectData 4466 % if option==1%length(UvData.Object)>= IndexObj && isfield(UvData.Object{IndexObj},'plotaxes')&& ishandle(UvData.Object{IndexObj}.plotaxes) 4467 % plot_field(ProjData,handles.axes3,PlotHandles); 4468 % UvData.Object{IndexObj}.plotaxes=handles.axes3; 4469 % else 4470 % UvData.Object{IndexObj}.plotaxes=view_field(ProjData); 4471 % end 4472 % set(handles.uvmat,'UserData',UvData) 4465 ProjData= proj_field(UvData.Field,ObjectData,IndexObj);%project the current interface field on ObjectData 4466 if option==1%length(UvData.Object)>= IndexObj && isfield(UvData.Object{IndexObj},'plotaxes')&& ishandle(UvData.Object{IndexObj}.plotaxes) 4467 plot_field(ProjData,handles.axes3,PlotHandles); 4468 UvData.Object{IndexObj}.plotaxes=handles.axes3; 4469 else 4470 hviewfield=view_field(ProjData); 4471 hhviewfield=guidata(hviewfield); 4472 UvData.Object{IndexObj}.plotaxes=hhviewfield.axes3; 4473 end 4474 set(handles.uvmat,'UserData',UvData) 4473 4475 hother=findobj('Tag','proj_object');%find all the proj objects 4474 4476 for iobj=1:length(hother)
Note: See TracChangeset
for help on using the changeset viewer.