999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

數控銑床圖形編程系統零件圖元排序程序設計

2012-01-29 08:35:50西安工程技術學院李洪聲賀歆昉
電子世界 2012年11期
關鍵詞:結構

西安工程技術學院 李洪聲 賀歆昉

數控銑床圖形編程系統零件圖元排序程序設計

西安工程技術學院 李洪聲 賀歆昉

基于autoCAD數控銑床圖形自動編程系統設計中,本文利用Visual C++6.0語言設計一個比較完整的零件輪廓圖元排序程序。首先介紹了定義了存儲各圖元信息數據結構,定義了雙向鏈表結點復合結構體類型。利用list列表容器存儲非均勻B樣條曲線信息。設計比較函數以及鏈表操作函數,簡化了排序程序設計。

數控銑床自動編程;排序程序;非均勻B樣條曲線;雙向鏈表

1.引言

在WindowsXP操作平臺上,以Auto-CAD2004繪圖軟件為開發平臺、采用可視化程序設計語言Visual C++6.0設計開發適于PC機數控系統上使用的數控銑床圖形編程系統。系統框架結構如圖1所示。

(1)讀入模塊:讀取存儲零件各圖元幾何信息。設計人員采用AutoCAD對加工的零件實體建摸后,將圖形信息以DXF文件格式存儲。讀入模塊通過分析DXF文件格式,讀取CAD圖形實體數據,存儲零件的幾何和參數信息。(2)讀入雙向連表模塊:將存儲各圖元信息結構體讀入鏈表后由排序模塊進行排序組環。(3)工藝設置模塊:對話框交互式輸入工藝參數。(4)生成代碼模塊:對(2)中的存儲零件輪廓環的雙向鏈表中各結點結構體中的圖元類型、環方向進行判斷并根據輸入的工藝參數進行相應處理生成數控加工程序代碼。

本文主要介紹了使用Visual C++6.0語言對存儲數控銑床加工零件輪廓各圖元雙向鏈表排序程序設計過程。首先介紹了定義了存儲各圖元信息數據結構,利用list列表容器存儲非均勻B樣條曲線信息。設計圖元信息讀入鏈表模塊以及雙向鏈表操作函數和圖元排序程序。

2.在讀入模塊中定義各類型圖元結構體[1]

2.1 定義存儲各基本類型圖元結構體

3)非均勻B樣條曲線圖元結構體

STL是最新的C++標準函數庫中的一個子集[2]。它采用泛型程序設計思想。容器是容納、包含一組元素或元素集合的對象。容器類中包含一組元素或一個元素集合,作為通用元素收集器,其list列表容器主要用于存放鏈表,其中的鏈表是雙向鏈表,可以從任意一端開始遍歷。利用雙向迭代器可以在兩個方向上對列表進行遍歷。利用迭代和訪問方法、可變序列算法和不可變序列算法對列表容器中的元素進行正反迭代返回元素個數、查找排序等操作[2]。

利用listControlist列表容器存儲非均勻B樣條曲線控制頂點序列,list Jnlist列表容器存儲其節點序列。定義存儲非均勻B樣條圖元結構體如下:

2.2 定義存儲各類型圖元雙向鏈表結點復合結構體DNodel

讀入雙向鏈表模塊將存儲各類型圖元信息結構體讀入雙向鏈表后由排序程序進行排序組環。數控銑床加工的零件二維平面輪廓環主要是由一系列基本圖元(直線、圓弧、樣條曲線)組成首尾相接的封閉環。

本課題基本圖元類型分別為非均勻B樣條曲線、直線和園弧。雙向鏈表結點結構體用于存儲零件圖中組成平面輪廓環的各基本圖元,鏈接成雙向鏈表。這就要求雙向鏈表的結點數據域結構體類型存儲各類基本圖元。由于直線、圓弧、樣條曲線等圖元的基本信息不同,故存儲這些圖元信息的結構體類型也不同。為了將這些不同類型的結構體讀入同一雙向鏈表進行后續處理,其結構體數據域形式必須滿足存儲各類基本類型圖元。定義復合結構體DNodel,其中數據域結構體unite包含各基本圖元結構體類型成員。定義雙向鏈表復合結構體結點類型體如下:

2.3 集合類CPtrArray對象存儲圖元信息

在讀入模塊中將存儲所有圖元信息結構體對象加入集合類CPtrArray對象供后續處理使用。CptrArray類對象的容量可動態增加。類CPtrArray對象m_PtrArray1、m_PtrArray2、m_PtrArray3分別存儲直線圖元結構體、存儲圓弧圖元結構體、存儲非均勻B樣條曲線圖元結構體。

3.雙向鏈表結構存儲各圖元

3.1 各圖元結構體讀入雙向鏈表

本課題涉及的是在AutoCAD中繪制的二維加工平面零件。由于DXF文件中圖元的排列順序不一定是按照繪制零件輪廓的拓撲順序排列的,所以讀入模塊讀入各圖元信息數據后,在生成數控刀軌時、需要將這些圖元讀入雙向鏈表后進行排序。讀入鏈表部分Visual C++程序如下:

3.2 比較函數以及雙向鏈表操作函數

3.2.1 比較函數

在零件輪廓圖元排序時、需要用比較函數查找首尾相接的點從而組成一個首尾相接的環。直線、圓弧圖元比較函數int CDDDDoc::compare(drawing*c1,drawing*c2),直線、圓弧與非均勻B樣條曲線比較函數int CDDDDoc::copare(drawing*c1,FeiType *c2)…。

考慮到首尾相接的點由于繪圖的原因、不一定是同一點,所以使用了容差,即相連接的某一圖元的終點坐標與另一圖元的起點坐標、兩點的坐標值誤差在一定范圍內就認為兩點重合。直線、圓弧圖元之間比較判斷函數部分代碼如下:

3.2.2 雙向鏈表操作函數

編制并利用雙向鏈表的各種函數實現雙向鏈表的各種基本操作運算:初始化、插入元素、刪除元素、釋放雙向鏈表等。部分函數名及函數參數如下:

3.2.3 設計雙向鏈表排序程序

在數控刀軌生成時,需要將這些首尾相接的圖元(直線、圓弧、樣條等)組成一個整體有序的環。組環的方法分為無分支和有分支兩種情況。本課題討論無分支情況。

鏈表的最大特點是元素的插入或刪除僅需修改指針而不需要移動元素。本課題使用比較函數、鏈表操作函數等設計已讀入雙向鏈表零件圖元組環排序程序。排序程序算法流程如圖2所示。取鏈表L中第i個結點、與i結點后所有的結點j進行比較、如果值相等則j結點插入i結點后。本文用Visual C++6.0編制的部分組環排序程序如下:

4.結束語

本文定義了存儲各類圖元數據結構體,對存儲非均勻B樣條曲線信息結構體使用C++標準函數庫子集STL中list列表容器作為成員變量存儲節點和控制頂點等信息,從而可簡化讀取模塊設計。利用迭代和訪問方法、可變序列算法和不可變序列算法對列表容器中的元素進行正反迭代指向返回元素個數、查找、排序等操作,從而可大大簡化圖形編程系統非均勻B樣條后處理模塊設計。

用Visual C++6.0設計雙向鏈表讀入程序,設計比較函數以及雙向鏈表操作函數簡化了雙向鏈表圖元排序程序設計。經運行排序程序、存儲零件各圖元鏈表排序結果正確。

圖2 雙向鏈表排序流程

[1]譚浩強.C++程序設計[M].北京:清華大學出版社.

[2]鄭莉,董淵,張瑞豐.C++語言程序設計(第3版)[M].北京:清華大學出版社,2004.

[3]孫鑫,余安萍.VC++深入祥解[M].北京:工業出版社,2006.

李洪聲(1962—),男,貴州貴陽人,工程碩士,西安工程技術學院講師,研究方向:數控機床編程加工。

賀歆昉(1963—),渭南技師學院講師。

猜你喜歡
結構
DNA結構的發現
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
新型平衡塊結構的應用
模具制造(2019年3期)2019-06-06 02:10:54
循環結構謹防“死循環”
論《日出》的結構
縱向結構
縱向結構
我國社會結構的重建
人間(2015年21期)2015-03-11 15:23:21
創新治理結構促進中小企業持續成長
現代企業(2015年9期)2015-02-28 18:56:50
主站蜘蛛池模板: 久久久精品无码一区二区三区| 中文字幕色在线| 亚洲天堂区| 国产精品手机在线观看你懂的| 九九九久久国产精品| 欧美精品v日韩精品v国产精品| 亚洲性影院| 亚洲欧美综合另类图片小说区| 日韩福利在线视频| 国产嫖妓91东北老熟女久久一| 热re99久久精品国99热| 中文字幕日韩久久综合影院| 四虎国产永久在线观看| 国内丰满少妇猛烈精品播| 亚洲精品国产成人7777| 国产精品亚洲精品爽爽| 欧美精品色视频| 三级视频中文字幕| 在线精品自拍| 在线永久免费观看的毛片| 国产精品视频a| 老色鬼久久亚洲AV综合| 自慰高潮喷白浆在线观看| 全部免费毛片免费播放| 毛片久久网站小视频| 99这里只有精品在线| 国产一区二区影院| 天天综合色天天综合网| 国产精品亚洲а∨天堂免下载| 又爽又大又黄a级毛片在线视频| 黄色网页在线观看| 香蕉精品在线| 国产丝袜无码精品| 亚洲一区二区约美女探花| 日本午夜影院| 亚洲国产无码有码| 精品人妻一区二区三区蜜桃AⅤ| 日韩欧美中文字幕在线韩免费| 亚洲成a人片77777在线播放| 国产精品亚洲欧美日韩久久| 亚洲精品麻豆| 亚洲黄色激情网站| 久久黄色小视频| 视频二区国产精品职场同事| 无遮挡国产高潮视频免费观看| 国产理论一区| 国产99视频在线| 亚洲欧美日韩天堂| 乱人伦中文视频在线观看免费| 一级香蕉视频在线观看| 国产欧美日韩va另类在线播放| 久久综合色天堂av| 亚洲第一黄色网| 亚洲美女一级毛片| 高清免费毛片| 欧美精品综合视频一区二区| 永久免费av网站可以直接看的| 国产粉嫩粉嫩的18在线播放91| 国产精女同一区二区三区久| 小说 亚洲 无码 精品| 国产精品男人的天堂| 亚洲国产理论片在线播放| 日本一本正道综合久久dvd| 一区二区欧美日韩高清免费 | 国产欧美日韩另类精彩视频| 伊人欧美在线| 亚洲欧美激情小说另类| 四虎国产永久在线观看| 国产精品99在线观看| 免费观看国产小粉嫩喷水| 国产亚洲精品资源在线26u| 最新加勒比隔壁人妻| 国产9191精品免费观看| 久草视频中文| 亚洲性日韩精品一区二区| www.亚洲色图.com| 亚洲女同一区二区| 91成人免费观看| 国产精品区视频中文字幕| 国产黑丝视频在线观看| 国产女人水多毛片18| 国产黄网永久免费|