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

工藝尺寸鏈求解的AutoCAD C#二次開發

2021-10-20 12:18:16陳光霞
湖北農機化 2021年18期
關鍵詞:二次開發工藝

陳光霞

(江漢大學智能制造學院,湖北 武漢 430056)

0 前言

在設計、制造、裝配機械零部件的過程中,工藝尺寸鏈的計算是不可或缺的,在新產品的研發過程中,其作用更為重要[1]。零件圖中所標注的尺寸公差是零件加工最終所需要達到的要求,即設計要求,而工藝過程中的許多中間工序的尺寸公差,是在機械加工工藝規程設計中通過計算工藝尺寸鏈才能確定的[2]。傳統工藝尺寸鏈的計算是由設計人員確定工藝尺寸鏈以及尺寸鏈中的各組成環的類別,再利用相差計算公式計算各組成環的基本尺寸及公差,此方法效率比較低且容易產生差錯,導致設計錯誤。

AutoCAD軟件是二維設計圖繪制的常用軟件,其功能強大,使用方便,是目前機械設計中常用的計算機輔助軟件,它提供了強大的二次開發功能,如AutoLisp、ObjectARX、VBA以及C#都可對AutoCAD進行二次開發,其中C#是利用.NET環境進行二次開發的方式之一,其開發周期短、開發便捷[3],是目前較為常用的開發方式之一。

本文利用C#語言及.NET Framework組件開發了一個可以在AutoCAD環境下繪制被加工零件簡圖,并在其上標注工藝尺寸,形成工藝尺寸鏈,用戶只需要選擇其中的一個尺寸作為封閉環,即可自動對圖中尺寸進行遍歷,自動搜索尺寸,查找工藝尺寸鏈,最后計算出未知尺寸的基本尺寸及其公差。

1 程序實現的方法

程序實現功能的基本思路如下:

利用AutoCAD軟件繪制加工零件簡圖,并標注相應的工藝尺寸,待求尺寸鏈中的環為A,如圖1所示。其實現思路流程如圖2所示。

圖1 零件簡圖

圖2 功能實現流程圖

2 程序功能實現的關鍵技術

2.1 尺寸數據的獲取

在AutoCAD中尺寸數據是存儲在其圖形數據庫(Database)中,要完成尺寸鏈的計算必須首先獲取圖中所標注尺寸的數據。讀取尺寸數據的步驟如下:

(1)獲取當前圖形文檔。

Document doc=Application.DocumentManager.MdiActiveDocument

(2)獲取當前工作圖形數據庫。

Database acCurDb=HostApplicationServices.WorkingDatabase

(3)建立當前圖形數據庫事務。

Transaction acTrans=acCurDb.TransactionManager.StartTransaction()

以只讀方式打開當前圖形數據塊表記錄

遍歷塊表記錄,當實體為尺寸實體時,讀取其數據存入尺寸數據數組中。

為了存儲尺寸數據建立如下所示的尺寸數據結構:

public struct Dimdata

{

public string DimType;//尺寸類型

public string LoopType { get;set;}//環類型

public Point3d StartPt;//第一尺寸界線起點坐標

public Point3d EndPt;//第二尺寸界線起點坐標

public double DimVal { get;set;}//基本尺寸

public double DimTpval { get;set;}//尺寸上偏差

public double DimTmval { get;set;}//尺寸下偏差

public Point3d CenterPt;//徑向尺寸圓心坐標

public ObjectId DimObjid;//尺寸實體的ID

public bool Flag;//使用標志

}。

并建立結構數組來保存尺寸相關數據。

2.2 尺寸鏈形成及增減環的自動判斷

本文以水平尺寸鏈為例,如圖3所示:首先判斷封閉環2個尺寸界線起點的X坐標的大小,將X坐標小的作為第二尺寸界線起點(如A0為封閉環,左邊為第二尺寸界線起點);然后搜索尺寸鏈的其它尺寸,若某個尺寸的尺寸界線起點的X坐標等于封閉環第二尺寸界線起點的X坐標(如圖3所示A2的左邊起點),則此尺寸為尺寸鏈的下一環,并將此尺寸界線起點作為A2的第一尺寸界線起點,另一個尺寸界線的起點作為第二尺寸界線的起點;第三步再判斷A2的2個尺寸界線起點的X坐標大小,當第二尺寸界線起點的X坐標大于第一尺寸界線起點的X坐標,則此尺寸為增環,反之為減環(A2為增環);再以A2的第二尺寸界線起點的X坐標去搜索,當下一個尺寸的2個尺寸界線起點中有一個點的X坐標與A2的第二尺寸界線起點相等,則為尺寸鏈的下一環,如圖3的A1,同樣的方法,再判斷A1兩個尺寸界線起點X坐標的大小關系,從而判斷其增減性。

圖3 尺寸鏈增減環判斷

如果尺寸鏈為垂直尺寸鏈,則以尺寸的尺寸界線起點坐標的Y坐標作為判斷依據。如果是平面尺寸鏈,則以尺寸界線起點的X、Y坐標作為判斷依據。

2.3 直徑尺寸的處理

在工藝尺寸鏈的計算過程中,對直徑尺寸的處理方法是基本尺寸取一半,公差也取一半作為尺寸鏈中的一個環。如圖4中的19.8及20兩個尺寸。本文以水平尺寸鏈為例說明其處理方法。

圖4 直徑尺寸的處理

當尺寸實體的類型為“AcDbDiametricDimension”或為“AcDbRotatedDimension”但其替代文本中含有“%%C”字符串時,都是直徑尺寸,如果是“AcDbDiametricDimension”類型,則將尺寸線變換為水平后,求出2個尺寸界線的起點坐標,存入數組中。當一個直徑的2個尺寸界線起點中有一個與現有尺寸中的尺寸界線起點坐標相同,如尺寸Φ40的左尺寸界線起點與43.6的左尺寸界線起點相同,則它的另一個尺寸界線起點用圓心坐標替代,基本尺寸及上下偏差均取半。

3 結論

圖1所示的工藝尺寸鏈計算結果如圖5所示。

圖5 工藝尺寸鏈計算結果圖

利用C#進行工藝尺寸鏈的自動計算,開發方法簡單,可以有效地減輕計算工作量和避免計算錯誤,有利用于提高工藝規程設計的工作效率。

猜你喜歡
二次開發工藝
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
轉爐高效復合吹煉工藝的開發與應用
山東冶金(2019年6期)2020-01-06 07:45:54
西門子Operate高級編程的旋轉坐標系二次開發
5-氯-1-茚酮合成工藝改進
世界農藥(2019年2期)2019-07-13 05:55:12
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
一段鋅氧壓浸出與焙燒浸出工藝的比較
銅業工程(2015年4期)2015-12-29 02:48:39
FINEX工藝與高爐工藝的比較
新疆鋼鐵(2015年3期)2015-11-08 01:59:52
Micaps3.2 版本二次開發入門淺析
西藏科技(2015年12期)2015-09-26 12:13:51
ANSYS Workbench二次開發在汽車穩定桿CAE分析中的應用
汽車零部件(2014年5期)2014-11-11 12:24:32
絡合鐵脫硫工藝在CK1井的應用
主站蜘蛛池模板: 国产剧情国内精品原创| 久久久久国色AV免费观看性色| 亚洲国产清纯| 农村乱人伦一区二区| 日韩二区三区无| 久久精品国产91久久综合麻豆自制| 污网站在线观看视频| 欧美三级自拍| 亚洲三级片在线看| 青青青亚洲精品国产| 小13箩利洗澡无码视频免费网站| 国产97视频在线观看| 2021精品国产自在现线看| 午夜视频日本| 全色黄大色大片免费久久老太| 日韩美一区二区| 999在线免费视频| 国产精品久久久久久久伊一| 99视频精品全国免费品| 国产精品区网红主播在线观看| 欧美午夜理伦三级在线观看| 欧美a在线视频| 亚洲人成网站色7799在线播放| 五月六月伊人狠狠丁香网| 免费国产高清视频| 亚洲高清在线天堂精品| 久久大香伊蕉在人线观看热2| 日韩不卡高清视频| 日韩人妻少妇一区二区| 黄色在线不卡| 国产精品亚洲αv天堂无码| 少妇精品久久久一区二区三区| 国产成人久视频免费| 国产精品久久久久久久久久98| 日本欧美一二三区色视频| 国产高清又黄又嫩的免费视频网站| 亚洲—日韩aV在线| AV不卡无码免费一区二区三区| 成人91在线| 亚洲无码视频一区二区三区| 婷婷中文在线| 久久青草免费91线频观看不卡| 久久伊伊香蕉综合精品| 亚洲国产天堂在线观看| 久久精品亚洲专区| 最新国产成人剧情在线播放| 国产主播在线一区| 亚洲色大成网站www国产| 欧美乱妇高清无乱码免费| 国产成人综合久久| 国产在线观看精品| 久久亚洲国产视频| 波多野结衣一区二区三区88| 91久久国产综合精品女同我| 欧美在线中文字幕| 五月激情婷婷综合| 国产中文一区a级毛片视频 | 波多野吉衣一区二区三区av| 免费无遮挡AV| 亚洲视频欧美不卡| 国产精品吹潮在线观看中文| 免费在线a视频| 国产精品亚洲一区二区三区在线观看| 色综合成人| 久操中文在线| 免费看久久精品99| 久久香蕉欧美精品| www成人国产在线观看网站| 亚洲精品va| 91亚洲免费视频| 国产一级毛片高清完整视频版| 久久伊人操| 国产成人艳妇AA视频在线| 亚洲国产欧美自拍| 亚洲v日韩v欧美在线观看| 久久青草视频| 国产精品自在自线免费观看| 欧美成人午夜影院| 四虎亚洲国产成人久久精品| 日韩成人在线视频| 性做久久久久久久免费看| 日韩无码视频播放|