freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ug的二次開(kāi)發(fā)技術(shù)實(shí)現(xiàn)齒輪參數(shù)化設(shè)計(jì)(文件)

 

【正文】 _BUTTON PARAMETER_DESIGN:定義 CASCADE 按鈕,點(diǎn)擊這種按鈕將彈出下拉菜單,該按鈕的名稱為“ PARAMETER_DESIGN” ,該名稱必須出現(xiàn)在相應(yīng)的 MENU 聲明中 LABEL 參數(shù)化設(shè)計(jì) : CASCADE 按鈕的標(biāo)題為“參數(shù)化設(shè)計(jì)” END_OF_BEFORE:結(jié)束 BEFORE 定義,與 BEFORE UG_HELP 相對(duì)應(yīng) MENU PARAMETER_DESIGN:聲明要定義 PARAMETER_DESIGN 菜單,其名稱與之前的 CASCADE 按鈕的名稱相對(duì)應(yīng) BUTTON SHIXINSHIZHICHILUN:定義 BUTTON,在 MenuScript 中 BUTTON 即為一般的按鈕,點(diǎn)擊該按鈕會(huì)激發(fā)相應(yīng)行為,其 名稱為“ SHIXINSHIZHICHILUN” LABEL 實(shí)心式直齒輪 :定義 BUTTON 的標(biāo)題為“ 實(shí)心式直齒輪 ” ACTIONS PARAMETER_DESIGN_SHIXINSHIZHICHILUN:定義 BUTTON 的行為是打開(kāi)與 PARAMETER_DESIGN_SHIXINSHIZHICHILUN 相對(duì)應(yīng)的對(duì)話框 下面和幾個(gè)子菜單按鈕和上面的子菜單按鈕相 似 ,在這里省略。 圖 41 菜單登記后的 UIStyle 對(duì)話框的設(shè)計(jì) UG/Open UIStyle 模塊為用戶提供了強(qiáng)大的可視化制作 UG 風(fēng)格對(duì)話框的功能。 在【對(duì)話框】菜單下可以插入相應(yīng)的控件,如圖 44 所示 ,其中,因?yàn)槟?shù)是有標(biāo)準(zhǔn)的,所以將標(biāo)準(zhǔn)模數(shù)值做了 一 個(gè)列表控件 。 70 23 圖 42 “屬性”選項(xiàng)卡的編輯 圖 43 “回調(diào)”選項(xiàng)卡的編輯 圖 44 控件的添加 70 24 圖 45 實(shí)數(shù)控件“屬性選項(xiàng)卡”的編輯 圖 46 對(duì)話框的生成 其它幾種 對(duì)話框 的 添加 其它幾種對(duì)話框的添加與 的 方法完全一樣,只是控件或增加或減少,在這里不作過(guò)多介紹。 應(yīng)用程序的編寫(xiě) 創(chuàng)建應(yīng)用程序框架 使用 VC++ 創(chuàng)建應(yīng)用程序的工程,工程名為 pro_design。 //定義菜單按鈕的 回調(diào)函數(shù)為 pro_design_shixinshizhichilun() static UF_MB_action_t actionTable[]= { {PARAMETER_DESIGN_SHIXINSHIZHICHILUN,pro_design_shixinshizhichilun,NULL}, {NULL,NULL,NULL} }。 } /* 顯示輸出函數(shù)的錯(cuò)誤信息 */ PrintErrorMessage( errorCode )。 return UF_MB_CB_CONTINUE。 } return UF_MB_CB_CONTINUE。主要原理是使用 UF_PART_ask_part_name()函數(shù)獲取顯示部件的名稱,如“實(shí)心式直齒輪”部件 “ E:\english\”,去除其中的路徑信息和后綴名 ,并轉(zhuǎn)換為大寫(xiě),最終結(jié)果為“ SHIXINSHIZHICHILUN”。 char ch=39。 if(part_tag==NULL_TAG) return 1。i++) 70 27 { part_name[i]=39。 } pdest=strrchr(part_fspec,ch)。 strncpy(part_name,temp_name,len4)。 } 編寫(xiě)對(duì)話框相關(guān)代碼 LaunchProDesignDialog()函數(shù)用于調(diào)用對(duì)話框,在 文件中修改對(duì)話框的回調(diào)函數(shù) extern intenter the name of your function(int *response)為: extern int LaunchProDesignDialog( int *response ) { int error_code = 0。 70 28 UF_UI_set_status (fail_message)。 } 對(duì)話框的“確定”按鈕的回調(diào)函數(shù)用于獲取用戶在對(duì)話框中的輸入,修改表達(dá)式,更新模型。 //通過(guò) UF_initialize()初始化,使 NX/Open 函數(shù)可用 /* 在此添加回調(diào)函數(shù)的代碼 */ =UF_STYLER_VALUE。 //訪問(wèn) 控件 REAL_M 的值 PRO_DESIGN_edit_exp(M,)。data)。amp。amp。amp。amp。 //指定獲取控件的值 =PRO_DESIG_REAL_B。 //將 b 的值賦給控件 REAL_B,并修改表達(dá)式 =UF_STYLER_VALUE。 //訪問(wèn)控件 REAL_H1 的值 PRO_DESIGN_edit_exp(H1,h1)。結(jié)束回調(diào)函數(shù) */ return (UF_UI_CB_EXIT_DIALOG)。 int err。 strcat(exp,temp)。 UF_MODL_update()函數(shù)用來(lái)根據(jù)獲取的參數(shù)值修改模型。 int index。 //指定獲取控件的值 =PRO_DESIG_OPTION_M。 //將控件的值賦給 index =UF_STYLER_SUBITEM_VALUES。 //將列表中的一個(gè)值賦給 m UF_STYLER_free_value(amp。 //控件的標(biāo)識(shí)為 REAL_M =m。 /* 通過(guò) UF_terminate()終止對(duì) NX/Open API 函數(shù)的調(diào)用,但并不終止對(duì)話框 */ return (UF_UI_CB_CONTINUE_DIALOG)。 1)打開(kāi) 部件模型,如果點(diǎn)擊 菜單 【參數(shù)化設(shè)計(jì)】→【孔板式直齒輪】 , 如圖 52 所示, 彈出圖 53 所示 提示 。點(diǎn)擊確定,重新輸入?yún)?shù), 如圖 59 所示, 點(diǎn)擊“應(yīng)用”,如果沒(méi)有提示,則點(diǎn)擊確定,會(huì)生成新的模型,如圖 510 所示。 圖 511 腹板式直齒輪對(duì) 話 框 圖 512 腹板式直齒輪更新后的模型 圖 513 實(shí)心 式 斜齒輪對(duì)話框 圖 514 實(shí)心式斜齒輪更新后的模型 圖 515 腹板式斜齒輪對(duì)話框 圖 516 腹板式斜齒輪更新后的模型 70 37 6 總結(jié)與展望
。 70 35 圖 56 標(biāo)準(zhǔn)模數(shù)值自動(dòng)傳遞 圖 57 輸入不適合當(dāng)前模型的參數(shù)值 圖 58 參數(shù)值不適合結(jié)構(gòu)形式的提示框 圖 59 輸入與模型結(jié)構(gòu)相符的參數(shù)值 圖 510 更新后的模型 4) 至此,實(shí)心式直齒輪的參數(shù)化建模 、對(duì)話框的設(shè)計(jì)、菜單的添加以及程序代碼的添加已經(jīng)全部完成,而最后我們也能實(shí)現(xiàn)課題所要求的改變模數(shù)、齒數(shù)等基本參數(shù)生成不同的圓柱直齒輪。 圖 54 點(diǎn)擊正確的對(duì)話框菜單 圖 55 彈出的 UG 風(fēng)格的對(duì) 戶框 3)在對(duì)話框中輸入相應(yīng)的參數(shù),其中在“齒輪標(biāo)準(zhǔn)模數(shù)值”的下拉列表中選擇一個(gè)數(shù)值 ,則在“齒輪模數(shù)”參數(shù)框中會(huì)自動(dòng)顯示所選擇的模數(shù)值,如圖 56 所示。 然后將生成的對(duì)話框 *dlg 文件復(fù)制到 application 文件夾下,將在 VC++ 中編譯生成的 .dll 文件復(fù)制到存放菜單文件的 startup 文件夾下。data)。 //釋放列表中選擇的值 =UF_STYLER_VALUE。data)。data)。 if ( UF_initialize() != 0) return ( UF_UI_CB_CONTINUE_DIALOG )。對(duì)話框的“取消”按鈕用于關(guān)閉對(duì)話框,默認(rèn)的代碼即可,不需要修改。 return err。 strcat(exp,=)。data)用來(lái)獲取相關(guān)控件的值,程序還調(diào)用了函數(shù) PRO_DESIGN_edit_exp(),該函數(shù)用于根據(jù)用戶輸入的表達(dá)式的值來(lái)修改表達(dá)式。 70 30 //重新生成模型 UF_terminate ()。 //控件的標(biāo)識(shí)為 REAL_ H1,即鍵槽高度 UF_STYLER_ask_value(dialog_id,amp。data)。h1=。h1=。h1=。h1=1。 //將控件的值賦給 x PRO_DESIGN_edit_exp(J,)。 //指定獲取控件的值 =PRO_DESIG_REAL_J。 //控件的標(biāo)識(shí)為 REAL_M,即齒輪的模數(shù) UF_STYLER_ask_value(dialog_id,amp。 UF_STYLER_item_value_type_t data。 } UF_terminate()。 if ( ( error_code = UF_STYLER_create_dialog ( , PRO_DESIG_cbs, /* 對(duì)話框回調(diào)函數(shù) */ PRO_DESIG_CB_COUNT, /* 回調(diào)函數(shù)的數(shù)量 */ NULL, /* 自定義數(shù)據(jù) */ response ) ) != 0 ) { char fail_message[133]。 if(strcmp(part_name,SHIXINSHIZHICHILUN)==0) return 0。 strncpy(temp_name,pdest+1,len1)。 temp_name[i]=39。 for(i=0。 int i,len。 char part_fspec[256],*pdest。resp)。resp)。 70 26 int errorCode = UF_initialize()。 if ( 0 == errorCode ) { /* 在此處添加代碼 */ UF_MB_add_actions(actionTable)。 將 UG/Open UIStyler 模塊生成的對(duì)話框文件 和 別重新命名為 和 ,復(fù)制到工程所在文件夾內(nèi),并將其加入到工程中,并且在 文 件 中 修 改 頭 文 件 的 包 含include為 include。對(duì)話框文件一般需要保存在相應(yīng)目錄下的 appliction 文件夾中,以便應(yīng)用程序調(diào)試時(shí)可以搜索的到。然后在控件的“屬性”選項(xiàng)卡中添加控件的標(biāo)題和控件的標(biāo)識(shí),以實(shí)數(shù)控件為例,如圖 45 所示。 實(shí)心式直齒輪 對(duì)話框 的 添加 在 UG 中,打開(kāi)“ ”部件,單擊下拉菜單【起始】→【所有應(yīng)用模塊】→【用戶界面編輯器】,即可進(jìn)入 UIStyle 模塊,在“屬性”選項(xiàng)卡中編輯對(duì)話框的基本屬性,如圖 42 所示。然后打開(kāi) ,打開(kāi) UGII/menus/,注意要用記事本打開(kāi),將 startup的路徑放在最下面,然后保存。 自定義菜單的添加 菜單是用戶在 UG下使用 UG/Open API應(yīng)用程序的 “ 接口 ” , 而且 提高了調(diào)用對(duì)話框的效率,并且體現(xiàn)出了二次開(kāi)發(fā)的水平和質(zhì)量,所以菜單的添加時(shí)不可或缺的 。 圖 36 左旋斜齒輪 圖 37 右旋斜齒輪 70 20 4 系統(tǒng)設(shè)計(jì) UG/Open MenuScript不僅可以使用戶利用 ASCⅡ文件來(lái)編輯 UG的菜單,也可以以一種無(wú)縫集成的方式為用戶開(kāi)發(fā)的應(yīng)用程序創(chuàng)建菜單。最后繪制中心孔和鍵槽,完成整個(gè)漸開(kāi)線圓柱直齒輪的參數(shù)化設(shè)計(jì)。至此,完成齒數(shù)大于 41的齒輪齒廓的繪制。然后連接這兩條線段在齒根圓上的終點(diǎn) ,繪制出直線段 L。當(dāng)齒數(shù) z41時(shí),齒根圓直徑大于基圓直徑,即 dfdb, 這樣齒根部分輪廓全部由漸開(kāi)線構(gòu)成 。 1) 建立如下所需表達(dá)式 rb=db/2 ak1=arccos(db/(d+2*ha*m)) ak2=deg(ak1) bk1=tan(ak2)ak1 bk2=deg(bk1) u=ak2+bk2 u1=rad(u) t=1 xt=rb*sin(u*t)rb*u1*t*cos(u*t) yt=rb*cos(u*t)+rb*u1*t*sin(u*t) x1t=xt a=180/z 70 18 bk=deg(tan(ak)ran(ak)) a1=a+2*bk 2) 選擇 插入 曲線 規(guī)律曲線 ,定義 X為 xt ,Y為 yt,并定義 Z為 恒定的 ,取其值為 0
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1