• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    腰形草圖封裝技術(shù)的應(yīng)用

    2017-06-10 16:41朱悠悠
    電子技術(shù)與軟件工程 2017年11期
    關(guān)鍵詞:坐標(biāo)轉(zhuǎn)換

    朱悠悠

    摘 要筆者通過對某型號電子樣機的梳理,總結(jié)了其中復(fù)用頻率較高的特征。通過對腰形草圖的封裝進(jìn)行了探討與研究,并對腰形草圖定制過程中遇到的問題,例如腰形草圖空間坐標(biāo)變換、腰形草圖自動生成全約束特征、腰形草圖GUI圖形顯示等關(guān)鍵點提出了行之有效的解決方法,最終實現(xiàn)腰形草圖的一鍵式創(chuàng)建,該方法為今后類似草圖特征的封裝起到了重要的借鑒作用。

    【關(guān)鍵詞】腰形草圖 坐標(biāo)轉(zhuǎn)換 GUI

    在UG的眾多功能中,草圖功能是最基本,使用頻率最高的功能,因此對草圖進(jìn)行二次開發(fā),是提高工作效率的重要方式。筆者通過對某型號電子樣機的梳理,腰形草圖在機匣類零件中復(fù)用頻率較高,因此將腰形草圖進(jìn)行封裝,得型號設(shè)計人員可以根據(jù)輸入?yún)?shù)大小一鍵得到所需的腰形草圖特征,從而將設(shè)計人員從重復(fù)的勞動中解放出來,提高了其型號設(shè)計的效率。本文詳細(xì)介紹將腰形草圖的封裝以及封裝過程遇到的技術(shù)難點。

    1 腰形草圖封裝關(guān)鍵技術(shù)

    1.1 腰形草圖平面定位

    對于UG軟件設(shè)計人員來說,腰形草圖的所有特征在任意空間的一個平面上,即平面XOY上,該平面需要人工進(jìn)行選取獲得,然而,對于任意腰形草圖特征來說,其特征同時存在于空間的坐標(biāo)系XYZ與人工選取的XOY平面上的,因此,需要將腰形草圖特征的坐標(biāo)轉(zhuǎn)換成空間絕對坐標(biāo),才能保證成型的腰形草圖的幾何唯一性。

    1.2 三維空間幾何坐標(biāo)變換原理

    三維空間幾何坐標(biāo)變換包括三維平移變換、比例變換以及旋轉(zhuǎn)變換,三維平移變化、比例變換是二維情況的直接推廣;旋轉(zhuǎn)變換因為可以選擇空間任意方向作為旋轉(zhuǎn)軸,因此三維空間旋轉(zhuǎn)變換處理起來較為復(fù)雜。與二維變換相似,我們也采用齊次坐標(biāo)技術(shù)來描述空間的各點坐標(biāo)及其變換,這時,描述空間三維變換的變換矩陣是4×4的形式,由此產(chǎn)生的一系列變換可以用單個矩陣來表示。

    1.3 三維坐標(biāo)變換構(gòu)造

    本文筆者將腰形草圖從一個參考坐標(biāo)系下的位置變換成絕對坐標(biāo)系下的位置,變換思路具體過程分為以下兩步:

    (1)平移坐標(biāo)系oxyz,使它的坐標(biāo)原點與新坐標(biāo)原點重合;

    (2)進(jìn)行旋轉(zhuǎn)變換,使兩坐標(biāo)系的坐標(biāo)軸重合。

    2 腰形草圖封裝方法

    2.1 腰形草圖封裝環(huán)境

    目前研究所UG使用版本為 NX7.5、腰形草圖封裝環(huán)境需安裝對應(yīng)的開發(fā)平臺Microsoft Visual 2008以上版本,本文筆者安裝的是Microsoft Visual2010,并且配置好UG NX7.5與Microsoft Visual 2010之C#接口信息。

    2.2 腰形草圖封裝步驟

    首先,在Microsoft Visual2010中新建一個NX7.5項目。

    然后,在新建的項目中設(shè)計腰形草圖GUI界面(見圖1)。

    根據(jù)GUI界面中填寫的參數(shù),在主函數(shù)中定義這些參數(shù),并且將其與GUI界面中顯示的參數(shù)關(guān)聯(lián)。

    然后新建一個類文件,并在該文件中定義三維坐標(biāo)變換函數(shù),在該函數(shù)中首先定義當(dāng)前腰形草圖工作坐標(biāo)系單位矩陣。再根據(jù)三維坐標(biāo)變換構(gòu)造方法對空間坐標(biāo)進(jìn)行定義。然后定義一個腰形草圖構(gòu)建函數(shù),由于腰形草圖是由直線與圓弧組成的,因此腰形草圖的構(gòu)建可以分解成直線與圓弧的構(gòu)建(以下是一段圓弧輪廓的創(chuàng)建代碼)。

    Point3d startPoint1 = new Point3d(0.0, 100, 100);Point3d pointOn1 = new Point3d(0.0, -100 100);Point3d endPoint1 = new Point3d(0.0, -300, 200); Arc arc1;arc1 = workPart.Curves.CreateArc(startPoint1, pointOn1, endPoint1, false, out startAndEndGotFlipped1); theSession.ActiveSketch.AddGeometry(arc1,NXOpen.Sketch.InferConstraintsOption.InferNoConstraints);

    在完成腰形草圖輪廓的構(gòu)建之后,對于腰形草圖的每一根輪廓線來說,在腰形草圖中必須全約束才能保證腰形草圖大小的唯一性,因此,需要對腰形草圖輪廓進(jìn)行尺寸約束(以下是一段圓弧的尺寸約束代碼):

    //圓弧C1圓心過原點

    NXOpen.Sketch.ConstraintGeometry CL1;CL1.Geometry=CKX;CL1.PointType=NXOpen.Sketch.ConstraintPointType.StartVertex;CL1.SplineDefiningPointIndex = 0;//標(biāo)注C1尺寸NXOpen.Sketch.DimensionGeometry dimC1;dimC1.Geometry = C1;dimC1.AssocType = NXOpen.Sketch.AssocType.Tangency;dimC1.AssocValue = 42;dimC1.HelpPoint.X = 0.0;dimC1.HelpPoint.Y = 0.0;dimC1.HelpPoint.Z = 0.0;dimC1.View =workPart.ModelingViews.WorkView;

    對于腰形草圖現(xiàn)有輪廓無法進(jìn)行全約束時,可以通過新建的坐標(biāo)軸和參考線來輔助其約束尺寸。

    最后對該項目進(jìn)行封裝生成yaoxingcaotu.dll文件將其載入在NX7.5中使用就可以通過輸入?yún)?shù)來一鍵式生成腰形草圖了。

    作者單位

    中國航發(fā)湖南動力機械研究所 湖南省株洲市 412002

    猜你喜歡
    坐標(biāo)轉(zhuǎn)換
    一種檢測攝像機與被測物間三維軸線求解方法
    浦东新区| 社会| 石景山区| 渭南市| 平湖市| 海伦市| 清徐县| 剑阁县| 宁德市| 大同市| 木里| 隆德县| 新化县| 儋州市| 吴桥县| 芦山县| 苍南县| 独山县| 浙江省| 石渠县| 凤城市| 衡南县| 黄龙县| 保定市| 嘉善县| 宣恩县| 兴义市| 阿图什市| 禹城市| 南平市| 靖西县| 晴隆县| 青铜峡市| 隆林| 西吉县| 奉贤区| 梅州市| 茌平县| 庐江县| 嘉定区| 阜南县|