在线看一区,国产日韩第一页

亚洲精品少妇-jizzzxxxx-日韩欧美理论片-99亚洲精品-69久久成人精品-a级黄毛片-伦伦影院午夜理伦片-激情久久av-日本亚洲最大的色成网站www-永久免费看片-国外成人免费视频-日韩成人av在线播放-99精品视频免费-亚洲激情第一页-色丁香婷婷-午夜影院在线看-观看免费av

產(chǎn)品咨詢熱線 400-83-29299     搜索     русский язык  |  English
x

首頁 > 水刀研究院
水刀切割工藝參數(shù)設(shè)置技術(shù)及序列化存儲
來源: 時間:2021-06-25 瀏覽:10268
       對于五軸水刀切割加工而言,它相對于三軸多了角度偏轉(zhuǎn)的問題。水刀切割的工藝參數(shù)主要有左偏轉(zhuǎn)、右偏轉(zhuǎn)、偏轉(zhuǎn)角度、左偏置、右偏置、偏置半徑、進給速度等,其中工藝參數(shù)偏轉(zhuǎn)和偏置描述簡圖如圖 3.19 所示。CAD 模塊中有點、直線、圓弧、圓、橢圓polyline、polygon、spline 等實體種類,這些幾何實體圖形在繪制中保存時只是存儲了點的坐標(biāo)、圖層及塊等概念,然而沒有將具體加工這些圖形時所需的水切割加工工藝參數(shù)設(shè)置并保存。這些實體類型不但具有各自的特征,而且還具有共同的特征,所以先建立一個基類,存儲共有的屬性及行為操作,然后再從基類派生出這些不同種類的子類實體類型,存儲各自特有的屬性和行為操作。水刀切割加工工藝參數(shù)就屬于這些實體共有的特性,因此在它們的基類中定義結(jié)構(gòu)體數(shù)據(jù):
 struct RS_Water Cut Process Data 

     bool b Deflecting Direction;   //偏轉(zhuǎn)方向
     bool b Offset Direction;   //偏置方向
     double f Deflecting Angle;   //偏轉(zhuǎn)角度,量綱:度
     double f Offset Radius;   //偏置半徑,量綱:mm 
     double f Feed Velocity;   //進給速度
     RS_Water Cut Process Data()    //結(jié)構(gòu)體數(shù)據(jù)初始化
     { 
        b Deflecting Direction=0; 
        b Offset Direction=0; 
        f Deflecting Angle=2.5; 
        f Offset Radius=0.2; 
        f Feed Velocity=6000; 
     } 
}; 

      并且通過函數(shù) set Water Cut Process Data(RS_Water Cut Process Data const &data)來設(shè)置水刀切割數(shù)據(jù),通過函數(shù) get Water Cut Process Data()來得到水切割數(shù)據(jù)。水刀切割工藝參數(shù)設(shè)計界面及用到的 Qt 組件如圖 3.20 所示。
 
       QT 中序列化數(shù)據(jù)的類是 QData Stream。對于非多態(tài)類,在自定義類中聲明并實現(xiàn)輸入輸出操作符友元函數(shù),重載輸入輸出操作符即可實現(xiàn)數(shù)據(jù)序列化;對于多態(tài)類,除了聲明輸入輸出操作符友元函數(shù),還要聲明虛函數(shù) save()和 load(),在子類中調(diào)用該函數(shù)來實現(xiàn)實際的輸入輸出,從而實現(xiàn)數(shù)據(jù)序列化。并且最主要的是一般父類必須從 QObject 類繼承,因為要保存類名字符串。可是對于本文開發(fā)的 CAD/CAM 一體化上位機軟件當(dāng)中,父類并未從 QObject 類中繼承,因此無法保存類名字符串。為了解決這一問題。特在父類中定義 rtti()函數(shù)來獲取類名字符串,從而具體的對子類中的數(shù)據(jù)進行保存。具體父類中的重載輸出、輸入操作符實現(xiàn)過程及文件讀寫過程在下面進行具體介紹。
    1)重載<<函數(shù)
 QData Stream& operator <<(QData Stream &data Stream, RS_Flags &draw)

     int n=draw.rtti(); 
     data Stream << n;
     draw.save(data Stream); 
     return data Stream; 

   (2)重載>>函數(shù)
QData Stream& operator >>(QData Stream &data Stream, RS_Flags **draw) 

     int n Entity Type; 
     data Stream >> n Entity Type; 
     //根據(jù)類名字符串生成相應(yīng)類的對象
     switch(n Entity Type) 
     { 
     case RS2::Entity Line:   //如果是實體是直線
           *draw = (RS_Flags *)new RS_Line; 
          (*draw)->load(data Stream); 
            break; 
           ……
           } 
          return data Stream; 

      (3)文件讀寫
        最后通過 QData Stream 類將五軸水刀切割加工工藝參數(shù)序列化到.wcn 文件中,進
行備份保存。序列化文件讀寫具體實現(xiàn)思路:待序列化函數(shù)編寫好后,新建一個.wcn文件,通過 file Export()函數(shù)調(diào)用 save()函數(shù)可以將序列化數(shù)據(jù)以二進制的形式寫到文.wcn 
中;通過 file Import()函數(shù)調(diào)用 load()函數(shù)可以讀.wcn 文件中的數(shù)據(jù)。
 


上一條:圖形實體換向的設(shè)計與實現(xiàn)
下一條:平移變換的齊次變換矩陣
友情鏈接:
版權(quán)所有 Copyright 2019-2025 遼ICP備2021002461號-1
首頁
產(chǎn)品中心
電話咨詢
肃南| 安庆市| 枣阳市| 宁国市| 海淀区| 清水县| 浦城县| 囊谦县| 海盐县| 凤凰县| 永和县| 东平县| 洪雅县| 镇原县| 绥中县| 易门县| 蛟河市| 石城县| 涟源市| 通海县| 松溪县| 会昌县| 新蔡县| 赣榆县| 珠海市| 甘德县| 清原| 鸡东县| 嘉善县| 将乐县| 绍兴市| 高密市| 商城县| 兴宁市| 民县| 团风县| 进贤县| 和林格尔县| 茌平县| 东乡县| 长宁区|