function varargout = jkx(vara gin)%這個接口的主函數,通過它調用matlab的gui主函數。
GUI _ Singleton = 1;
gui_State = struct('gui_Name ',mfilename,...
gui_Singleton ',gui_Singleton,...
' gui_OpeningFcn ',@jkx_OpeningFcn,...
gui_OutputFcn ',@jkx_OutputFcn,...
gui_LayoutFcn ',[],...
gui_Callback ',[]);
如果納爾金& ampisstr(瓦拉金{1})
GUI _ state . GUI _ Callback = str 2 func(vara rgin { 1 });
結束
如果nargout
[varargout { 1:nargout }]= GUI _ mainfcn(GUI _ State,vara rgin {:});
其他
gui_mainfcn(gui_State,vara rgin {:});
結束
函數jkx _ opening fcn (HObject,eventdata,handles,vara gin)%界面窗口的設置。
handles.output = hObject
guidata(hObject,handles);
Set(gcf,'名稱','標準直齒輪漸開線參數輸入窗口');%設置界面窗口的名稱。
函數varargout = jkx _ output fcn(h object,eventdata,handles)%打開界面窗口時的壹些初始設置,比如添加javaFrame = get(gcf,' Java frame ');set(javaFrame,'最大化',1);最大化界面的運行時間。
varargout { 1 } = handles . output;
函數edit1_CreateFcn(hObject,eventdata,handles)
如果ispc
set(hObject,' BackgroundColor ',' white ');
其他
set(ho object,' BackgroundColor ',get(0,' defaultUicontrolBackgroundColor '));
結束
函數edit1 _ callback (HObject,event data,handles)%添加壹個可編輯的文本框,可以通過set(handles.edit1,'屬性名','屬性值'設置它的屬性,包括顯示什麽...).
函數edit2 _ create fcn (HObject,eventdata,handles)%同上。
set(hObject,' BackgroundColor ',' white ');%設置edit2的背景色。
其他
set(ho object,' BackgroundColor ',get(0,' defaultUicontrolBackgroundColor '));%獲取當前控件的默認控件的背景色。
結束
函數edit2_Callback(hObject,eventdata,handles)
函數edit3_CreateFcn(hObject,eventdata,handles)
如果ispc
set(hObject,' BackgroundColor ',' white ');
其他
set(ho object,' BackgroundColor ',get(0,' defaultUicontrolBackgroundColor '));
結束
函數edit3_Callback(hObject,eventdata,handles)
函數edit4_CreateFcn(hObject,eventdata,handles)
如果ispc
set(hObject,' BackgroundColor ',' white ');
其他
set(ho object,' BackgroundColor ',get(0,' defaultUicontrolBackgroundColor '));
結束
函數edit4_Callback(hObject,eventdata,handles)
函數button1 _ callback (HObject,eventdata,handles)% Add按鈕,下面可以給出他的響應函數。
圖;%單擊按鈕創建新圖形。
Set(gcf,'名稱','漸開線齒廓');%設置當前接口的名稱。
m = str 2 num(get(handles . edit 1,' string '));%將用戶在edit1中輸入的字符轉換成數字,並將它們賦給變量m,
z=str2num(get(handles.edit2,' string '));%將用戶在edit1中輸入的字符轉換成數字,並將它們賦給變量z,
a=str2num(get(handles.edit3,' string '));%將用戶在edit1中輸入的字符轉換成數字,並將它們賦給變量A,
ha=str2num(get(handles.edit6,' string '));%將用戶在edit1中輸入的字符轉換成數字,並將它們賦給變量ha。
ra = m *(0.5 * z+ha);%計算的ra
%齒頂圓半徑
rb=0.5*m*z*cos(a*pi/180)
;%基圓半徑
rk = Rb:0.01:ra;
%徑向範圍
aa=atan(sqrt((ra。^2/rb.^2)-1));
%齒頂圓上的壓力角
wk = tan(aa)-aa;
%齒頂圓上的展開角
w = 0:pi/180:pi/3;
x = Rb *(cos(w)+w . * sin(w));
y = Rb *(sin(w)-w . * cos(w));
Plot (x,y,Rb * cos (0: 0.01: 2 * pi),Rb * sin (0: 0.01: 2 * pi),Ra * cos (0: 0.01: 2 * pi),Ra。
Xlabel('x軸單位:mm ',' fontsize ',9);%將軸屬性、名稱和字符大小設置為9。
Ylabel('y軸單位:mm ',' fontsize ',9);%將軸屬性、名稱和字符大小設置為9。
軸相等;%調整圖形的縱橫比,使屏幕上X和Y的比例與軸('方形')功能相同。
標題('標準直齒輪的漸開線齒廓(基圓與齒頂圓之間的部分為該齒輪的漸開線)',' fontsize ',11);%圖形標簽,圖形名稱,字體大小為11。
Text (ra * cos (pi/4),ra * sin (pi/4),' \ leftarrow齒頂圓',' fontsize ',10);%添加壹個靜態文本框顯示計算結果+'\ leftarrow齒頂圓',文本框字體大小為10。