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

基于NURBS曲面數據的船體體積計算方法的研究

2012-06-29 07:26:26周燕芳
城市勘測 2012年4期

周燕芳

(廣州市城市規劃勘測設計研究院,廣東廣州 510060)

1 引言

船體是復雜的不規則體,傳統的計算實體船體體積方法是先建立數學模型,再測出特征點、關鍵點后進行擬合。擬合后將船體沿三個互相垂直的方向切片,這樣三維復雜幾何體的幾何特性計算就轉化為一系列平面的幾何特性計算[1]。此方法與現代化的性能分析計算自動化、智能化、高精度的趨勢不相適應。

本文提出并設計了基于 NURBS[2](Non-Uniform Rational B-Spline,非均勻有理B樣條)的船體體積計算程序,能直接在三維空間下計算船體的體積。對已建造好的船體,利用三維激光掃描技術得到船體表面大量激光點云數據。經過點云數據的預處理和分析,重構NURBS曲面來擬合表達船體表面,最終得到用來描述三維船體的互相銜接的 NURBS曲面數據。NURBS曲面數據可進行規則化格網輸出,根據曲面的特性輸出不同間隔的規則化格網。

基于NURBS曲面數據的船體體積計算程序關鍵算法有:

①船體NURBS曲面數據的三角剖分算法;

②船體曲面交線三角形的計算;

③船體曲面與任意高度的求交算法;

④封閉三維曲面體的體積計算。

2 ObjectARX簡介

AutoCAD具有強大的圖形交互功能,并且支持多種方式的二次開發。ObjectARX以C++為編程語言,采用先進的面向對象的編程原理,提供可與Auto-CAD直接交互的開發環境。同時包括一組動態鏈接庫(DLL),庫中包含一組通用工具,使得二次開發者可以充分利用AutoCAD的開放結構,直接訪問Auto-CAD數據庫結構、圖形系統以及CAD幾何造型核心,以便能在運行期間實時擴展AutoCAD的功能[3]?;贠bjectARX進行程序開發,可以讓用戶有更加直觀的了解。

3 基于NURBS曲面數據的船體體積計算程序實現

3.1 程序開發環境

以Visual Studio.net 2005為編程環境,ObjectARX 2008為開發工具,程序采用非模態對話框方式,方便用戶進行圖形交互。對話框界面盡量做到界面簡潔、直觀,如圖1所示。

圖1 程序界面

3.2 基于NURBS曲面數據的三角剖分算法

曲面三角網格生成算法有很多,總的來說可以分為映射法和自動網格生成法兩類[4]。映射法[5]是在參數域上利用平面網格生成技術進行剖分,然后將參數域上的網格結點映射到實空間,并保持參數域上網格結點的連接關系,從而得到曲面的三角剖分。由于船體曲面是基于NURBS的參數曲面描述,所以采用映射法比較合適。

圖2 曲面數據的三角剖分

船體三維激光點云數據經過預處理后是按規則化格網輸出的N×M的面片數據,對每個規則化格網單元采用三角剖分分為兩個三角形。如圖2所示的點(C0,R0),點(C1,R0),點(C0,R1)和點(C1,R1)構成的格 網 分 成 三 角 形 D(C0,R0)D(C1,R1)D(C1,R0)和 三 角 形D(C0,R0)D(C0,R1)D(C1,R1)。定義三角形結構體,記錄三角形的3個頂點索引值,并計算三角形的法向量、重心坐標,用于判斷三棱錐體積疊加時的正負。

3.3 船體曲面交線三角形的計算

給定計算水線高度hgt,在計算高度附近的三角形會被分割。找出三角形的最大Z值maxz,最小Z值minz,以及Z值等于hgt的頂點的個數ZEqNum。任意高度水線hgt與三角形之間的關系有如下幾種情況(如圖3):

①hgt≤minz,不參與體積計算;

②hgt==maxz且ZEqNum==2,不參與體積計算,將此三角形作為交線三角形;

③hgt>maxz或者hgt==maxz且 ZEqNum==1,參與體積計算;

④minz<hgt<maxz,且三角形中只有一個點的Z值小于hgt,此三角形不參與體積計算,求出交線點坐標存儲于交線三角形中;

⑤minz<hgt<maxz,且三角形中有兩個點的坐標小于hgt,此三角形不參與體積計算,求出交線點坐標并將相交部分分割為兩個三角形作為交線三角形;

⑥ZEqNum==3,不參與體積計算。

圖3 任意高度水線與三角形的位置關系

3.4 船體曲面與任意高度的求交算法

在3.3節所求的交線三角形中,將兩個點的Z值均等于hgt的線段提取出來。根據線段的空間位置關系(兩線段首尾點的距離理論上為0,對個別曲面有交錯的情況可放寬連接條件)將所有線段連接成首尾相接的閉合曲線。然后利用CAD中多義線的getArea函數即可獲得閉合曲線所圍成的面積。對于如圖4所示的一閉合曲線包含于另一閉合曲線的特殊情況,被包含閉合曲線的面積應為負,包含閉合曲線的面積為正,任意兩個多邊形的關系可采用文獻[6]所述方法進行判斷。

圖4 多邊形位置關系

3.5 封閉三維曲面體的體積計算

當確保所有三角形的法向量均朝外后,選擇任意的起算點(坐標原點或封閉區域的重心點等)與三角形構成三棱錐,船體的體積可以分為三部分計算:①位于交線下面的完整的三角形與起算點所構成的三棱錐的體積;②交線三角形與起算點所構成的三棱錐的體積;③交線所圍成的不規則閉合曲面與起算點所構成的不規則體的體積。計算時均需考慮三角形法向量與所選計算起點和三角形重心所構成的向量之間的方向余弦(圖5):若方向余弦為正,則三棱錐體積為正;若方向余弦為負,則三棱錐體積為負。

圖5 三角形方向余弦

4 應用實例

用三維激光掃描的方法對某一封閉艙室進行掃描并得到其NURBS曲面數據,對其進行三角剖分如圖6所示。三角形所有法向量均朝外,不需要進行修改。程序所算體積與傳統方法所算的體積如表1所示。由于掃描時艙室存在晃動,用NURBS曲線擬合出來的船體下部存在凹凸不平,因此底部計算的體積的相對誤差較其他高度大。但總的看來,兩者的差別不大,在允許誤差范圍之內。

圖6 艙室三角剖分網圖

計算體積比較 表1

5 結語

本文設計并實現了基于NURBS曲面數據的船體體積的計算程序,實現了船體體積計算的自動化與智能化。與傳統的先建立數學模型,再測出特征點、關鍵點后進行擬合計算的單點測量方法相比,在效率和技術上得到了更好的改進,提高了計量的準確性和可靠性,實現了幾何測量法體積計算的從低精度向高精度的發展。

[1]秦敬松.基于激光掃描點云數據的船體體積計算方法研究[D].武漢:武漢大學,2008.

[2]施法中.計算機輔助幾何設計與非均勻有理 B樣條[M].北京:高等教育出版社,2001:46~49.

[3]俞曉,苗放.基于ObjectARX的AutoCAD二維圖形可控精度外包多邊形的算法實現[J].成都理工大學學報,2008(10):559~562.

[4]徐松,王劍英.曲面的自適應三角網格剖分[J].計算機輔助設計與圖形學學報,2000,12(4):267~271.

[5]王小娜.基于映射法的散亂點三角網格劃分與拼接算法研究[D].秦皇島:燕山大學大學,2009.

[6]張全伙,曾曉帆,范慧琳等.任意兩個多邊形的求交算法[J].華僑大學學報,1995(1):111~115.

主站蜘蛛池模板: 亚洲人成影院在线观看| 青青草原国产av福利网站| 国产大片黄在线观看| 熟妇丰满人妻| 亚洲国产第一区二区香蕉| 国产精品污视频| 国产在线精品人成导航| 色婷婷成人网| 午夜啪啪网| 日韩大乳视频中文字幕| 国产丝袜91| 国产一国产一有一级毛片视频| 国产va免费精品观看| 91精品专区国产盗摄| 无码日韩人妻精品久久蜜桃| 久久国产精品电影| 亚洲色图欧美一区| 国产一区二区三区在线观看视频 | 小说区 亚洲 自拍 另类| 试看120秒男女啪啪免费| 国产超碰一区二区三区| 91福利一区二区三区| 国产精品三级专区| 国产一区自拍视频| 午夜视频在线观看区二区| 国内精品免费| 国产第一色| 国产成人精品高清不卡在线| 免费国产高清精品一区在线| 欧美日韩一区二区三| 免费99精品国产自在现线| 日本欧美成人免费| 日韩精品欧美国产在线| 全部免费毛片免费播放| 亚洲黄网在线| 一区二区三区毛片无码| h视频在线播放| 欧美中文字幕在线视频| 国产喷水视频| 亚洲精品无码久久毛片波多野吉| 成年人免费国产视频| www.91中文字幕| 婷婷99视频精品全部在线观看 | 国产日韩精品欧美一区喷| 亚洲男女天堂| 国产日韩精品欧美一区喷| 在线国产三级| 欧美精品成人| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 成人在线综合| 成年免费在线观看| 亚洲人妖在线| 国产精品福利在线观看无码卡| 97视频免费看| 久久久久亚洲AV成人网站软件| 精品色综合| 欧美日韩第二页| 国内丰满少妇猛烈精品播 | 亚洲国产精品一区二区第一页免| 蝌蚪国产精品视频第一页| 手机成人午夜在线视频| 国产欧美日韩精品综合在线| 伊人丁香五月天久久综合| 国产亚洲欧美在线中文bt天堂| 日韩高清欧美| 国产资源免费观看| 成人在线不卡视频| 国产亚洲精品97在线观看| 一本一道波多野结衣av黑人在线| 久久婷婷综合色一区二区| 无码人中文字幕| 国产精品久久久久无码网站| 激情六月丁香婷婷| 亚洲码在线中文在线观看| 无码国产偷倩在线播放老年人| 国产人成午夜免费看| 亚洲免费福利视频| 97国产精品视频人人做人人爱| 亚洲狠狠婷婷综合久久久久| 不卡色老大久久综合网| 免费一级毛片| 午夜福利无码一区二区|