📄 pablo.m
字号:
'HorizontalAlignment','left',... 'FontWeight','bold', ... 'SelectionHighlight','off', ... 'String',' Lin. Vortex', ... 'callback','pablo(''vselected'')', ... 'Interruptible','off'); %==================================== % The Hold on button yPos=yPos - 2*btnHt/3; btnPos=[xPos yPos 1.32*btnWid btnHt/3]; holdonHndl = uicontrol( ... 'Style','checkbox', ... 'Units','normalized', ... 'Position',btnPos, ... 'BackgroundColor',back, ... 'ForegroundColor','k', ... 'FontUnits','normalized', ... 'Fontsize',[.4], ... 'HorizontalAlignment','left',... 'SelectionHighlight','off', ... 'String',' Hold on (Cp)', ... 'Interruptible','off'); %==================================== % The plot bl parameters button yPos=yPos - btnHt/3; btnPos=[xPos yPos 1.32*btnWid btnHt/3]; plotblHndl = uicontrol( ... 'Style','checkbox', ... 'Units','normalized', ... 'Position',btnPos, ... 'BackgroundColor',back, ... 'ForegroundColor','k', ... 'FontUnits','normalized', ... 'Fontsize',[.4], ... 'HorizontalAlignment','left',... 'SelectionHighlight','off', ... 'String',' Plot BL parameters', ... 'Interruptible','off'); %==================================== % The SHAPE button btnWid=0.19; spacing=0.05; btnHt2 = 0.6*btnHt; shapebtn=uicontrol( ... 'Style','push', ... 'Units','normalized', ... 'Position',[left bottom btnWid btnHt2], ... 'FontUnits','normalized', ... 'Fontsize',[.33], ... 'String','Shape', ... 'Interruptible','on', ... 'Callback','pablo(''shape'')'); %==================================== % The Cp source button cpbtn=uicontrol( ... 'Style','push', ... 'Units','normalized', ... 'Position',[left+btnWid+spacing bottom btnWid btnHt2], ... 'FontUnits','normalized', ... 'Fontsize',[.33], ... 'String','Flow solution', ... 'Interruptible','on', ... 'Callback','pablo(''cp'')'); %==================================== % The INFO button infoHndl = uicontrol( ... 'Style','push', ... 'Units','normalized', ... 'Position',[left+2*btnWid+2*spacing bottom btnWid btnHt2], ... 'FontUnits','normalized', ... 'Fontsize',[.33], ... 'String','Info', ... 'Callback','pablo(''info'')'); %==================================== % The CLOSE button closeHndl = uicontrol( ... 'Style','push', ... 'Units','normalized', ... 'Position',[0.77 bottom 0.198 btnHt2], ... 'FontUnits','normalized', ... 'Fontsize',[.33], ... 'String','Exit', ... 'Callback','close all'); % Now uncover the figure set(figNumber,'Visible','on'); hndlList=[nbpanelsHndl alfaHndl nacaHndl libHndl ... naca1Hndl naca2Hndl naca34Hndl libpush ... sHndl dHndl vHndl shapebtn cpbtn infoHndl ... closeHndl currentA ellipseHndl ellipseratio holdonHndl ... viscousHndl reynoldsHndl plotblHndl];% Just to remember : %% nbpanelsHndl = hndlList(1);% alfaHndl = hndlList(2);% nacaHndl = hndlList(3);% libHndl = hndlList(4);% naca1Hndl = hndlList(5);% naca2Hndl = hndlList(6);% naca34Hndl = hndlList(7);% libpush = hndlList(8);% sHndl = hndlList(9);% dHndl = hndlList(10);% vHdnl = hndlList(11);% shapebtn = hndlList(12);% cpbtn = hndlList(13);% infoHndl = hndlList(14);% closeHndl = hndlList(15);% currentA = hndlList(16);% ellipseHndl = hndlList(17);% ellipseratio = hndlList(18);% holdonHndl = hndlList(19);% viscousHndl = hndlList(20);% reynoldsHndl = hndlList(21);% plotblHndl = hndlList(22); set(figNumber,'Visible','on', 'UserData',hndlList); elseif strcmp(action,'nbpanels'), v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); if vv>999, vv=v; end; if vv<0, vv = v; end; if rem(vv,2) ~= 0, vv = vv-1; end; vv = round(vv); set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'alfa'), global firstcp; firstcp = 0; v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'reynolds'), mes = 0; v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); if vv>40e6, vv=v; mes = 1; end; if vv<1e5, vv = v; mes = 1; end; if mes== 1, cla; title('Transition model only valid for Reynolds Number between 1e5 and 40e6 !', ... 'Fontsize',[14],'Color','k'); end; set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'nacaselected'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); nacaHndl = hndlList(3); libHndl = hndlList(4); ellipseHndl = hndlList(17); if get(nacaHndl,'value')==0 set(nacaHndl,'value',1); else set(ellipseHndl,'value',0); set(libHndl,'value',0); end; elseif strcmp(action,'libselected'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); nacaHndl = hndlList(3); libHndl = hndlList(4); ellipseHndl = hndlList(17); if get(libHndl,'value')==0 set(libHndl,'value',1); else set(nacaHndl,'value',0); set(ellipseHndl,'value',0); end; elseif strcmp(action,'ellipseselected'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); nacaHndl = hndlList(3); libHndl = hndlList(4); ellipseHndl = hndlList(17); if get(ellipseHndl,'value')==0 set(ellipseHndl,'value',1); else set(nacaHndl,'value',0); set(libHndl,'value',0); end; elseif strcmp(action,'sselected'), hndlList=get(gcf,'UserData'); sHndl = hndlList(9); dHndl = hndlList(10); vHndl = hndlList(11); if get(sHndl,'value')==0 set(sHndl,'value',1); else set(dHndl,'value',0); set(vHndl,'value',0); endelseif strcmp(action,'dselected'), hndlList=get(gcf,'UserData'); sHndl = hndlList(9); dHndl = hndlList(10); vHndl = hndlList(11); if get(dHndl,'value')==0 set(dHndl,'value',1); else set(sHndl,'value',0); set(vHndl,'value',0); endelseif strcmp(action,'vselected'), hndlList=get(gcf,'UserData'); sHndl = hndlList(9); dHndl = hndlList(10); vHndl = hndlList(11); if get(vHndl,'value')==0 set(vHndl,'value',1); else set(dHndl,'value',0); set(sHndl,'value',0); endelseif strcmp(action,'selectinlib'); global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); libHndl = hndlList(4); if get(libHndl,'value')==1 filename = uigetfile('*.DAT','Airfoil Library'); if filename~=0 select = filename(1,1:size(filename,2)-4); currentA = hndlList(16); set(currentA,'String',['Current : ',select]); end; end;elseif strcmp(action,'NACA1'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); holdonHndl = hndlList(19); set(holdonHndl,'value',0); v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); if vv<0, vv = v; end; if vv>9, vv = v; end; vv = round(vv); set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'NACA2'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); if vv<0, vv = v; end; if vv>9, vv = v; end; vv = round(vv); set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'NACA34'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); holdonHndl = hndlList(19); set(holdonHndl,'value',0); v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); if vv<1, vv = v; end; if vv>99, vv = 12; end; vv = round(vv); set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'ratio'), global firstcp; firstcp = 0; hndlList=get(gcf,'UserData'); v = get(gco,'UserData'); s = get(gco,'String'); vv = eval(s,num2str(v)); if vv<0, vv = v; end; if vv>999, vv = v; end; set(gco,'Userdata',vv,'String',num2str(vv));elseif strcmp(action,'shape'), back = [0.34 0.67 0.6]; fore = [0.3 0.3 0.3]; figNumber=watchon; hndlList=get(gcf,'UserData'); global firstcp; firstcp = 0; btnPos=[.04 0.11 .95 .11]; coeffHndl=uicontrol( ... 'Style','text', ... 'BackgroundColor',back, ... 'ForegroundColor',[0. 0. 0.], ... 'FontUnits','normalized', ... 'Fontsize',[.5], ... 'Units','normalized', ... 'Position',btnPos, ... 'String',''); btnPos=[.8 0.21 .198 .06]; coeffHndl=uicontrol( ... 'Style','text', ... 'BackgroundColor',back, ... 'ForegroundColor',[0. 0. 0.], ... 'FontUnits','normalized', ... 'Fontsize',[.5], ... 'Units','normalized', ... 'Position',btnPos, ... 'String',''); nbpanelsHndl = hndlList(1); nacaHndl = hndlList(3); libHndl = hndlList(4); naca1Hndl = hndlList(5); naca2Hndl = hndlList(6); naca34Hndl = hndlList(7); currentA = hndlList(16); ellipseratio = hndlList(18); holdonHndl = hndlList(19); nbp=get(nbpanelsHndl,'UserData'); if get(nacaHndl,'value') == 1 eps = get(naca1Hndl,'UserData'); p = get(naca2Hndl,'UserData'); to = get(naca34Hndl,'UserData'); z = naca4([eps;p;to],[nbp/2,1]); plot (z(:,1),z(:,2),'k'); grid; axis equal; hold off; if to>9 title(['NACA ',num2str(eps),num2str(p),num2str(to)], ... 'Fontsize',[14],'Color','k'); else title(['NACA ',num2str(eps),num2str(p),'0',num2str(to)], ... 'Fontsize',[14],'Color','k');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -