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

正文內(nèi)容

弧面凸輪數(shù)控轉(zhuǎn)臺的設(shè)計3d建模與裝配(doc畢業(yè)設(shè)計論文)(編輯修改稿)

2025-07-17 12:50 本頁面
 

【文章內(nèi)容簡介】 較簡單方便,本課題采用第二種方法。打開UG安裝目錄UGⅡ_BASE_DIR\ UGⅡ\,在文件最后添加開發(fā)的文件夾的絕對路徑E: \tulun_open。在E: \tulun_open文件夾下建立startup和application兩個子目錄。 本課題只涉及到弧面凸輪的參數(shù)化設(shè)計,因此應(yīng)在一個主菜單下建立一個子菜單。在E:\tulun_open\,代碼如下:VERSION 120 //版本號EDIT UG_GATEWAY_MAIN_MENUBAR //編輯UG系統(tǒng)剛啟動時菜單BEFORE UG_HELP //定義菜單位于【幫助】菜單前CASCADE_BUTTON DESIGN //定義一級菜單ID,為下拉菜單LABEL 二次開發(fā) //主菜單標(biāo)題END_OF_BEFORE //結(jié)束BEFORE定義MENU DESIGN BUTTON DESIGN_OK //定義二級菜單ID LABEL 弧面凸輪 //第一個子菜單標(biāo)題ACTIONS //調(diào)用對話框END_OF_MENU //結(jié)束菜單的定義菜單運行效果圖運行結(jié)果如圖所示: 第四章 程序設(shè)計 總體方案設(shè)計 建立好實體模型后,接下來就是利用API程序?qū)⒛P椭械谋磉_式的值與對話框聯(lián)系起來。程序的功能是針對部件的設(shè)計參數(shù),對設(shè)計參數(shù)進行查詢、修改,根據(jù)新的參數(shù)值更新模型從而實現(xiàn)設(shè)計變更。因此,程序?qū)θN齒輪的功能是一樣的,在對各個模型編寫程序時只需要根據(jù)各個模型的參數(shù)對程序中所調(diào)用模型參數(shù)做一些修改,其他在程序的編寫思路、程序所用的函數(shù)和結(jié)構(gòu)等都可以相同。 要實現(xiàn)程序針對某個模型的設(shè)計參數(shù)進行查詢、修改,主要的程序設(shè)計思路是先讀取對話框中的參數(shù),然后把對話框中的參數(shù)傳遞給模型中的表達式,改變表達式中相應(yīng)參數(shù)的值,更新模型。程序運行后,就能實現(xiàn)把設(shè)計者輸入對話框的參數(shù)轉(zhuǎn)化成模型尺寸的變化,實現(xiàn)設(shè)計目的。但是由于此種參數(shù)化設(shè)計的方法是建立在模型的基礎(chǔ)上進行的,對話框的設(shè)計也是針對某個實體模型,編寫程序時使用的參數(shù)也是針對具體某一個模型的。因此,在程序運行時應(yīng)首先檢測當(dāng)前打開的模型是否就是該程序和對話框所對應(yīng)的模型,只有打開了相對應(yīng)的模型時程序才繼續(xù)運行,否則退出。另外,為了方便設(shè)計者使用,讓使用者在打開對話框時就能直接看到當(dāng)前模型的各個參數(shù),在調(diào)用對話框時應(yīng)首先將當(dāng)前模型中表達式中的對應(yīng)參數(shù)讀出,并傳遞給對話框,顯示在對話框上。因此,程序設(shè)計時,首先檢測當(dāng)前顯示的部件是否為程序?qū)?yīng)的部件文件,接著使用構(gòu)造函數(shù)將模型中的表達式中的參數(shù)值讀出并傳遞到對話框上,然后是用戶輸入?yún)?shù)值后讀取參數(shù)并傳遞給模型,更新模型。程序流程如下圖所示:檢測是否為與程序相對應(yīng)部件讀取模型表達式中參數(shù)值,調(diào)用對話框讀取對話框中的數(shù)值將讀取的參數(shù)值傳遞到模型中的表達式中,更新模型開始退出是否圖41 程序設(shè)計流程圖 對話框設(shè)計程序要將對話框和部件模型聯(lián)系起來,在程序中必然要調(diào)用對話框,并有相應(yīng)的程序相應(yīng)對話框中的控件。UG中建立好對話框后,保存對話框時系統(tǒng)還自動生成另外兩個文件,在編寫程序時要使用這兩個文件。因此,在編寫程序前必須先建立對話框,建立好對話框后再利用對話框生成的文件進行編程。現(xiàn)以直齒圓柱齒輪為例,介紹對話框的建立和程序編寫的過程。(1)在UG中,單擊下拉菜單“應(yīng)用”——“用戶界面編輯器”,即可進入UI Style模塊,操作界面如圖42所示。圖42 UIStyle 操作界面 由圖中我們可以看出,在操作界面中,除下拉菜單和“標(biāo)準(zhǔn)”工具欄外,該界面主要有:項目工具欄:包括UI Style模塊所提供的對話框控件;編輯的對話框:可視化顯示正在編輯的對話框;對象瀏覽器:在對象瀏覽器中可以選擇對話框本身或其中包含的控件,之后在編輯器中對其資源屬性進行編輯;資源編輯器:對在對象瀏覽器中被選擇的控件的資源屬性進行編輯。 在建立對話框時,我們可以充分利用以上工具。首先,編輯對話框的屬性。選擇對象瀏覽器中最頂層的對話框,就可以在資源編輯器中對對話框的屬性進行編輯。如圖43所示:圖43 編輯對話框?qū)傩越缑?資源編輯器中包括“屬性”、“選擇”、和“回叫”三個選項卡?!皩傩浴边x項卡中可編輯對話框標(biāo)題、提示語、對話框名、對話框類型等。根據(jù)需要設(shè)置后如圖43所示。“選擇”選項包括:啟用:選擇是否希望當(dāng)顯示對話框的同時可以對UG圖形窗口中的對象進行選擇;類型:設(shè)置在UG圖形窗口中選擇對象的方式是否變化;范圍:用于確定被選對象所在范圍是否變化。該選項中不需設(shè)置,界面如圖44 所示:圖44 選擇選項 在回調(diào)選項卡中,所有對話框都可以包含一些基本的回調(diào)函數(shù),主要包括:應(yīng)用、后退、取消、確定、構(gòu)造、毀壞等。根據(jù)程序需要編輯后如圖45所示:圖45 回叫選項卡 編輯好對話框?qū)傩院螅瑧?yīng)在對話框中添加相應(yīng)的控件,本課題中只需要輸入齒輪的一些參數(shù),只需添加一定數(shù)量的“實數(shù)”控件就可以了。添加好控件后應(yīng)該對控件的屬性進行編輯,其界面如圖46 所示:圖46 “實數(shù)”控件資源編輯器 由圖可看出,其中包含:屬性、微調(diào)按鈕、回叫、布局設(shè)置四個選項卡。屬性選項卡中可以編輯標(biāo)簽、控件名等。在這里只需對屬性進行編輯其余的可保持默認(rèn)狀態(tài)。圖46顯示的就是編輯后的結(jié)果。要注意的是,在資源編輯器中編輯任何一個選項卡后,都要單擊編輯器底部的“應(yīng)用”按鈕,這樣所編輯的內(nèi)容才會被保存。最后,直齒圓柱齒輪的對話框如圖47所示:圖47 對話框設(shè)計結(jié)果 編輯好對話框后,將對話框保存在開發(fā)路徑下的application文件夾中。 程序設(shè)計 UG/Open API 應(yīng)用程序是利用UG/Open API,采用C語言進行程序設(shè)計,使用C編譯器和連接器創(chuàng)建的能夠在外部(External)環(huán)境或內(nèi)部(Internal)環(huán)境運行的可執(zhí)行程序(文件名后綴為EXE)或動態(tài)連接庫(文件名后綴為DLL)形式的程序。對于不同的操作系統(tǒng)平臺,在編譯和連接生成UG/Open API 應(yīng)用程序時,編譯選項和所需的系統(tǒng)庫文件是不同的。要使用UG/Open API 應(yīng)用程序正常運行,必須正確設(shè)置編譯和連接選項。本次設(shè)計采用Windows操作系統(tǒng),Visual C++,具體步驟如下: 步驟一:檢查目錄Microsoft Visual Studio\Common\MSDev98\,若有,進入步驟二;否則從UG安裝目錄下的UG_BASE_DIR/ugopen下拷貝這兩個文件到以上目錄中。 步驟二:啟動VC++,選擇下拉菜單“文件”—“新建”,系統(tǒng)彈出新建對話框如圖48所示。在對話框中選擇“工程”選項卡,在項目類別中選擇“Unipraphics NX App Wizsrd V1”。在右側(cè)“位置”中指定位置,在“工程名稱”中輸入工程名稱,如下圖48,最后單擊“確認(rèn)”。圖48 新建對話框 步驟三:在系統(tǒng)彈出的“步驟 1 共 2 步”對話框中,可以選擇“internal application”內(nèi)部模式,生成DLL文件,也可以選擇“external application”外部模式,生成EXE文件。另外,在產(chǎn)生的原代碼中可以選擇使用“C++”語言,也可以使用“C”語言。如果選擇外部模式,完成工程的創(chuàng)建。這里選擇內(nèi)部模式,C++語言,如圖49所示。單擊“下一步”。圖49 步驟1對話框 步驟四:在系統(tǒng)彈出的“步驟 2 共 2 步”對話框中,選擇如何激活和卸載應(yīng)用程序。各復(fù)選框和當(dāng)選框的含義如表41和表42所示,這里選擇如圖410 所示各項,單擊“完成”按鈕完成應(yīng)用程序的創(chuàng)建。表41 應(yīng)用程序的加載選項含義Automatically(ufsta)使用ufsta函數(shù)作為入口函數(shù),可以在UG啟動后自動加載應(yīng)用程序Explicitly(ufusr)使用ufusr函數(shù)作為入口函數(shù),可以在UG環(huán)境下選擇菜單“文件”—“執(zhí)行”—“NX打開”,打開“執(zhí)行用戶函數(shù)”對話框,選擇應(yīng)用程序進行手動加載From a User Exit使用用戶出口函數(shù)作為入口函數(shù),例如使用ufget函數(shù),將在UG打開一個文件時,激活應(yīng)用程序;使用ufcre函數(shù),將在UG創(chuàng)建一個部件文件時,激活應(yīng)用程序表42 應(yīng)用程序的卸載選項含義Automatically, when the Unigraphics session terminatesUG進程結(jié)束時自動卸載Automatically, when the application pletes應(yīng)用程序結(jié)束時自動卸載Explicitly, via an unload dialog 應(yīng)用程序手動卸載圖410 步驟二對話框 單擊“完成”后,系統(tǒng)彈出一個“確認(rèn)信息”對話框,如圖411所示,列出工程的所有信息,確認(rèn)無誤后單擊“確認(rèn)”,進入編程界面,同時系統(tǒng)將在指定目錄下創(chuàng)建一個UG 。圖411 確認(rèn)對話框 步驟五:按快捷鍵F7,編譯工程,出現(xiàn)編譯成功信息,如圖412所示。圖412 編譯工程 打開“File View”選項卡,分別單擊“”、“Source Files”和“Header Files” 前面的“+”,雙擊“spur_ ”,就能看見文件中的內(nèi)容。 步驟六:將UG/Open UI Styler 模塊生成的對話框文件spur_cams ,復(fù)制到工程所在的文件夾內(nèi)。在VC++中選擇菜單“工程”—“增加到工程”—“文件”,將上述兩個文件加入工程中,結(jié)果如圖413所示。include修改為include “”。圖413 將對話框文件加入工程效果圖 步驟七:在工程中編寫程序。從前面的程序設(shè)計思路可知,該程序中主要包括:入口函數(shù)程序、主程序、檢測部件程序、獲取表達式程序、傳遞對話框中數(shù)值程序。入口函數(shù)程序是將菜單中定義的按鈕和程序連接起來,當(dāng)點擊對應(yīng)的按鈕時調(diào)用可執(zhí)行程序,調(diào)用程序后執(zhí)行主程序。在主程序中先檢測部件是否是對應(yīng)的部件,否時彈出提示信息,退出;是的話調(diào)用對話框,執(zhí)行對話框中的程序,程序運行結(jié)束后退出?,F(xiàn)就幾個主要程序做簡單介紹。 主程序,程序代碼如下:{ int resp; //設(shè)置變量 int errorCode = UF_initialize(); //程序初始化 if ( 0 == errorCode ) { if(PRO_DESIGN_check_part()) //調(diào)用部件檢查程序 { uc1601(當(dāng)前顯示模型不是弧面凸輪部件,不能進行參數(shù)化設(shè)計,1); return UF_MB_CB_CONTINUE; //不是對應(yīng)部件時彈出對話框提示,并退出 } LaunchProDesignDialog( amp。resp); //調(diào)用對話框 errorCode = UF_terminate(); } return UF_MB_CB_CONTINUE;} 在主程序中有檢測部件程序和調(diào)用對話框程序,調(diào)用對話框程序是系統(tǒng)自動生成的,只需要在上面加上函數(shù)名就可以了,而檢測部件程序是需要自己編寫的,主要程序代碼如下: 變量聲明part_tag=UF_PART_ask_display_part(); if(part_tag==NULL_TAG) return 1; //檢測是否有部件顯示,沒有部件顯示時返回1 UF_PART_ask_part_name(part_tag,part_fspec); //查詢部件文件名 for(i=0;i50;i++) { part_name[i]=39。\039。; temp_name[i]=39。\039。; } pdest=strrchr(part_fspec,ch); len=strlen(pdest); strncpy(temp_name,pdest+1,len1); len=strlen(temp_name); //查詢部件文件名長度 strncpy(part_name,temp_name,len4); //去掉文件名中文件格式部分 strupr(part_name); if(strcmp(part_name,SPUR_GEAR)==0) //比較讀取的文件名與指定文件名 return 0; else return 1; //返回值 調(diào)用對話框后,單擊對話框中的控件時要有相應(yīng)的程序來響應(yīng)它,對話框中包括有確定、應(yīng)用、取消三個控件。加上調(diào)用對話框時應(yīng)讀取表達式中的參數(shù),要加一個構(gòu)造函數(shù)。因此對話框程序主要包含有這四個程序,其中取消按鈕的程序系統(tǒng)已自動生成,確定和應(yīng)用這兩個按鈕程序所執(zhí)行的功能大體是一樣的,只是在執(zhí)行程序后確定是退出對話框,而應(yīng)用是返回到對話框。因此主要有兩段程序,現(xiàn)簡要介紹如下; 構(gòu)造函數(shù)主要程序:=UF_STYLER_VALUE; //指定獲取控件的值=SPUR_CAMS_REAL_Z; //控件標(biāo)識,可從對話框頭文件中獲得UF_MODL_eval_exp(z,amp。)//根據(jù)表達式名稱計算表達式的數(shù)值UF_STYLER_set_value(dialog_id,amp。data);//給對話框中的相應(yīng)控件賦值 應(yīng)用和確定主要程序:=UF_STYLER_VALUE; //指定獲取控件的值
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1