matlab结果导入ug,matlab与UG数据交换.docx
matlab與UG數據交換
Matlab與UG/Pro E 之間的數據交換方法為了充分利用各種軟件的優點,經常需要在不同軟件之間進行數據傳遞。由于NURBS曲線已成為CAD領域的標準,而MATLAB具有強大的數值計算功能。如果數據能在MATLAB與常見的CAD軟件傳遞,可以很大程度提高設計、計算效率。在經過嘗試后,實現了MATLAB與UG\Proe之間數據的雙向傳遞,在此分享出來,供有需要的參考。一 三維模型導入到MATLAB不同的三維模型軟件之間為了交換數據,美國某協會規定了目前三維軟件之間一種通用的數據存儲格式STL ,對各種三維軟件,生成STL文件是很簡單的,現以UG和ProE分別說明。對UG這里輸出類型選擇文本,因為后面MATLAB讀取數據的程序是按照文本形式讀取的。其余選項可以自己設置。注意!! UG的文件保存路徑不能含有中文!!!!!對ProE Step1 : 點文件——保存副本Step2 :在類型中,選擇 stlStep 3 在 導出STL對話框中 選擇 ASCII導出格式,其他諸如弦高 好像是越大越好2 MATLAB讀取STL數據STL格式規定模型由三個頂點組成的小三角形面片,多個面片構成了各種形狀的曲面。因此數據格式如下:首先給出的是一個三角形面片的法向量(x,y,z):facet normal。然后給出三個頂點vertex。一個面片就確定了。讀取程序就是要讀取facet normal和vertex的內容。具體見附件中的ReadSTL.m文件。facet normal +0.0000000E+00 +0.0000000E+00 +1.0000000E+00 outer loop vertex -1.7387080E+02 -1.7447189E+02 +2.5000000E+01 vertex -2.2559979E+00 -1.2384968E+02 +2.5000000E+01 vertex +6.1819200E+00 -1.1596921E+02 +2.5000000E+01 endloop endfacet二 MATLAB輸出數據到UGUG可以根據外部點來畫出圖像。對數據點的要求是這樣的: X1 y1 z1 X2 y2 z2……Xn yn zn 即:先輸入一組坐標,回車,再輸入下一組,如此操作。具體操作如下:0 首先在MATLAB中生成數據點,這里生成的是一個螺旋線。代碼在此貼出:%% test file writeclcclear %% éú3éò????YDy format short gt=0:0.1:100;x=(15+10*cos(t));y=(15+10*sin(t));z=(20*t);data=[x;y;z]; data1=data';[m,n]=size(data1);fid=fopen('A9.txt','w');for i=1:m for j=1:n fprintf(fid,'%f\t',data1(i,j)); end fprintf(fid,'\n');endfclose(fid); 附件matlab_to_ug.txt中也有源代碼。1 在UG中使用外部數據點作圖: 插入——曲線——樣條如果在曲線中沒有樣條命令,可以在工具——定制里找到將樣條命令拖到插入——曲線中即可。2 選擇 通過點 ——文件中的點3 找到目標的數據(1 一定是dat格式 2 文件路徑不能含有中文)4 點確定 就實現了導入 1 本文給出的實現方法僅是最簡單的方法,有諸多細節并未深入考慮,如果您看完,覺得有所幫助,請將您認為對本方法改進的地方指出來,讓我們一起來完善。2 軟件版本:MATLAB2009 UG Nx8 Proe 4
總結
以上是生活随笔為你收集整理的matlab结果导入ug,matlab与UG数据交换.docx的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 4月1日起支付宝、微信扫码支付单日限额5
- 下一篇: 手机录屏存为Gif