青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eryar

PipeCAD - Plant Piping Design Software.
RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
posts - 603, comments - 590, trackbacks - 0, articles - 0

OpenCASCADE曲面交線分類

Posted on 2023-08-21 00:27 eryar 閱讀(788) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

OpenCASCADE曲面交線分類

eryar@163.com

Abstract. OpenCascade classify the intersection line between two surfaces. A intersection line may be either geometric: line, circle, ellipse, parabola, hyperbola as defined in the class GLine, or analytic as defined in the class ALine, or defined by a set of points(coming from a walking algorithm) as defined in the class WLine. Or described by a restriction line on one of the surfaces as RLine.

Key Words. Surface Intersection, Intersection Line

1 Introduction

OpenCASCADE中對兩個曲面求交得到的交線進(jìn)行了分類,如下類圖所示:

交線總共分為四類:

  • ALine:Analytic解析曲線,主要為兩個二次曲面求交所得,如圓柱面、球面、圓錐面等之間的交線;
  • GLine:Geometric幾何曲線,即交線可以表示成簡單的二次曲線,如直線、圓、拋物線等;
  • WLine:Walking追蹤法得到的交線,保存了追蹤路線上的兩個曲面的交點(diǎn);
  • RLine:Restriction受限交線,這條交線可能只在一個面上;

下面我們使用Tcl腳本在DRAW中驗(yàn)證一下這四類交線的來源,加深對曲面求交算法的理解。分類帶來了麻煩,可以帶著問題:為什么要分這幾種類型?有什么好處?來看這篇文章。要用好開源的東西,其實(shí)要求還是很高的,需要對源碼有相對深入的理解。

2 ALine

Analytic交線是二次曲面求交所得,二次曲面是因?yàn)榭梢越y(tǒng)一使用二次型來表示的解析曲面,也是《解析幾何》中研究的主要內(nèi)容。我們可以在DRAW中構(gòu)造圓柱面與圓錐面求交驗(yàn)證一下。TCL腳本如下:

# Test for IntPatch_ALine.
# Geometry surfaces.
cylinder s1 0 0 0 1 1 1 2
cone s2 0 0 0 0 0 1 1 0 0 30 3
# Topology faces
mkface f1 s1 0 2*pi -8 8
mkface f2 s2 0 2*pi -5 5
# Intersection.
bop f1 f2
bopsection r
# Display result.
vdisplay f1 f2 r

生成結(jié)果如下圖所示,其中紅色為交線:

DEBUG源碼可以看到是使用類IntPatch_ImpImpIntersection 計(jì)算求交,即兩個解析曲面求交算法類。

3 GLine

Geometric幾何曲線形式簡單,如果交線用幾何曲線來表示,對于后續(xù)算法有好處。如平面與圓錐面求交線,圓柱面與圓柱面求交等,都會得到幾何曲線。將上面的圓柱面換成平面與圓錐面求交我們可以在DRAW驗(yàn)證經(jīng)典的圓錐與平面交線:根據(jù)平面位置不同,可以得到圓、橢圓、雙曲線等幾何曲線。TCL腳本如下所示:

# Test for IntPatch_GLine.
cone s1 0 0 0 0 0 1 30 3
plane s2 0 0 0 0 0 1 
mkface f1 s1 0 2*pi -5 5
mkface f2 s2 -8 8 -8 8
bop f1 f2
bopsection r
vdisplay f1 f2 r

計(jì)算交線結(jié)果如下圖所示:

我們改變平面的法向,使其斜著與圓錐面求交,會得到橢圓:

還可以得到雙曲線、拋物線等,同學(xué)們可以自己嘗試一下。

4 WLine

對于NURBS曲面求交,一般會使用Marching方法,國內(nèi)教材翻譯為追蹤法。在看《地球脈動》時(shí),注意到對于大草原上的水牛、大象等動物成群結(jié)隊(duì)的遷徙使用了這個詞,這個詞的字面意思有行進(jìn)、行軍,列隊(duì)行進(jìn)之意,如果結(jié)合opencascade中的walking感覺翻譯為行進(jìn)法更貼切,因?yàn)樵趏pencascade中對于求交專門有個package名為IntWalk,其中類IntWalk_PWalking來使用marching method對兩個參數(shù)曲面進(jìn)行求交。Walk有行走之意,所以對于使用Walk方法得到的交線命名為WLine。對于NURBS曲面求交及二次曲面與NURBS曲面求交,使用了Marching方法,WLine的來源是清晰的。繼續(xù)使用上面的腳本,只需要將上述兩個面轉(zhuǎn)換成NURBS曲面即可觸發(fā)Marching法進(jìn)行求交。TCL腳本如下:

# Test for IntPatch_WLine.
cone s1 0 0 0 0 0 1 30 3
plane s2 0 0 0 1 1 2 
mkface f1 s1 0 2*pi -5 5
mkface f2 s2 -8 8 -8 8
nurbsconvert f1 f1
nurbsconvert f2 f2
bop f1 f2
bopsection r
vdisplay f1 f2 r

通過IntWalk_PWalking行進(jìn)法配合三參數(shù)迭代法,將行進(jìn)過程中的交點(diǎn)都保存在WLine中。

雖然結(jié)果與上面看上去一樣,內(nèi)部交線已經(jīng)不是簡單的幾何曲線了。

5 RLine

Restriction交線是受限交線,這種類型的交線只會位于一個面上。這里我們構(gòu)造一個平面及與平面重疊的一個NURBS曲面來求交進(jìn)行解釋。TCL腳本如下:

# Test for IntPatch_RLine.
plane s1 0 0 0 0 0 1
plane s2 0 0 0 0 0 1
mkface f1 s1 -5 5 -5 5
mkface f2 s2 -8 8 -8 8
nurbsconvert f1 f1
bop f1 f2
bopsection r
vdisplay f1 f2 r

DEBUG會發(fā)現(xiàn)這兩個曲面的交線為RLine,并在生成RLine時(shí)指定交線屬于哪個曲面,是在S1曲面SetArcOnS1還是在S2曲面SetArcOnS2:

生成交線如下圖所示:

當(dāng)然可以使用RLine來判斷兩個曲面是否有重疊,但是在opencascade中兩個曲面重疊叫Tangent Face,可以將上述NURBS面不轉(zhuǎn)換,還是使用兩個重疊平面來驗(yàn)證:

求交最后對交線數(shù)據(jù)歸并時(shí)的代碼有點(diǎn)不敢恭維:

6 Conclusion

綜上所述,對兩個曲面求交得到的交線進(jìn)行分類,避免交線都是NURBS曲線,可以是簡單的二次曲線,提高后續(xù)算法性能。在理解源碼的基礎(chǔ)上,可以根據(jù)實(shí)際應(yīng)用場景選擇高效的算法。如若只是求兩個模型之間的交線,可以直接使用曲面求交算法,一般情況下性能還是不錯的。當(dāng)然理解源碼后,可以結(jié)合實(shí)際應(yīng)用場景可以對求交算法做進(jìn)一步優(yōu)化。

要深入理解opencascade源碼,熟練使用DRAW是一個相對容易的路線。因?yàn)樵贒RAW中可以使用Tcl腳本快速驗(yàn)證各種想法,甚至直接DEBUG源碼,從表向深入到與源碼作者直接對話。

 

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲色在线视频| 亚洲综合色婷婷| 免费在线看成人av| av不卡在线| 欧美日韩免费区域视频在线观看| 亚洲精品一区二区三区av| 亚洲激情视频网| 蜜桃伊人久久| 亚洲特级片在线| 亚洲欧美国产精品va在线观看 | 欧美亚洲午夜视频在线观看| 国产麻豆精品视频| 猫咪成人在线观看| 欧美成人第一页| 亚洲影视综合| 久久久www| 亚洲一级在线观看| 欧美专区亚洲专区| 夜夜嗨av一区二区三区中文字幕| 国产午夜精品全部视频在线播放| 国产精品www色诱视频| 香蕉国产精品偷在线观看不卡| 欧美在线免费观看视频| 亚洲第一福利在线观看| 日韩视频不卡| 一区二区三区在线视频观看 | 亚洲精品中文字| 久久精品国产清自在天天线| 亚洲激情一区| 亚洲欧美怡红院| 亚洲精品乱码久久久久久蜜桃91| 亚洲免费视频中文字幕| 亚洲人成毛片在线播放| 性8sex亚洲区入口| 一级成人国产| 久久亚洲综合网| 亚洲午夜精品在线| 亚洲黄色天堂| 欧美亚洲日本网站| 亚洲一区二区三区四区视频| 久久综合伊人77777尤物| 亚洲欧美日韩中文在线制服| 美日韩精品免费观看视频| 久久成人免费日本黄色| 欧美午夜一区二区福利视频| 亚洲国产综合在线看不卡| 国产亚洲观看| 午夜精品区一区二区三| 亚洲直播在线一区| 欧美日韩国产区一| 亚洲国产日韩在线| 亚洲欧洲在线看| 麻豆乱码国产一区二区三区| 久久天天躁狠狠躁夜夜av| 国产欧美日韩一区| 亚洲影院色无极综合| 亚洲一二区在线| 欧美日韩一区二区三区视频| 欧美激情在线狂野欧美精品| 亚洲黄色免费电影| 久久精品国产综合精品| 亚洲欧美在线aaa| 国产精品久久久久77777| 亚洲精品一区二区三区av| 亚洲精品韩国| 欧美区一区二区三区| 亚洲精品欧美专区| 在线视频你懂得一区| 欧美日韩日本国产亚洲在线| 亚洲精品在线二区| 亚洲深夜福利网站| 国产精品久久久久77777| 亚洲欧美激情视频| 久久久999精品| 精品福利电影| 欧美大片一区二区| 亚洲乱码久久| 久久狠狠久久综合桃花| 激情欧美日韩| 欧美.www| 亚洲视频一区在线观看| 久久岛国电影| 亚洲国产欧美不卡在线观看| 欧美精品久久久久a| aa级大片欧美| 久久亚洲欧美| 亚洲精品一区二区三区樱花 | 亚洲淫性视频| 欧美xx视频| 亚洲美女一区| 欧美一区二区三区的| 合欧美一区二区三区| 欧美黄色aaaa| 亚洲一区自拍| 欧美电影资源| 亚洲欧美日韩人成在线播放| 国内精品视频666| 欧美日韩高清不卡| 欧美一二区视频| 亚洲激情图片小说视频| 久久国产毛片| 夜夜爽夜夜爽精品视频| 国产夜色精品一区二区av| 欧美高清在线视频观看不卡| 午夜在线视频观看日韩17c| 最新国产成人在线观看| 久久国产精品久久久久久| 亚洲免费观看高清在线观看| 国产一区二区av| 欧美片在线观看| 久久伊人亚洲| 性色av香蕉一区二区| 亚洲精品中文字幕在线| 蜜臀av国产精品久久久久| 午夜宅男欧美| 一本大道久久a久久综合婷婷| 欧美色欧美亚洲另类二区| 一区二区免费在线播放| 亚洲视频自拍偷拍| 亚洲精选视频免费看| 国产日韩在线一区| 欧美日韩不卡合集视频| 可以看av的网站久久看| 亚洲欧美日韩国产中文| 99www免费人成精品| 亚洲国产精品一区二区第四页av | 猛男gaygay欧美视频| 香蕉国产精品偷在线观看不卡| 日韩一级网站| 亚洲欧洲另类国产综合| 影音先锋亚洲一区| 国产一区香蕉久久| 国产欧美日韩精品丝袜高跟鞋| 欧美午夜精品一区二区三区| 欧美精品18videos性欧美| 欧美制服第一页| 欧美大香线蕉线伊人久久国产精品| 亚洲国产成人精品女人久久久| 国产欧美一区二区三区久久| 欧美午夜国产| 国产精品欧美久久久久无广告| 欧美视频一区二区三区四区| 欧美日韩国产综合在线| 欧美美女日韩| 欧美日韩在线影院| 国产精品成人久久久久| 国产精品国产三级国产aⅴ浪潮 | 国产精品二区三区四区| 欧美日韩精品一区二区天天拍小说| 欧美激情乱人伦| 欧美日韩精品系列| 国产精品h在线观看| 国产精品美女黄网| 国产亚洲成av人在线观看导航 | 欧美超级免费视 在线| 欧美承认网站| 欧美在线日韩| 久久综合久久美利坚合众国| 老司机凹凸av亚洲导航| 欧美承认网站| 亚洲理伦在线| 亚洲欧美日韩国产精品| 欧美一区国产在线| 欧美成人午夜视频| 久久综合亚州| av成人国产| 亚洲男人的天堂在线| 亚洲一区二区三区在线播放| 亚洲人永久免费| 亚洲视频在线观看一区| 亚洲欧美日韩精品久久亚洲区 | 久久精选视频| 欧美激情一二三区| 99精品视频免费| 久久成人综合视频| 欧美区一区二| 国语精品中文字幕| 在线亚洲激情| 久久嫩草精品久久久精品| 亚洲国产精品一区二区www| 亚洲欧美日韩国产一区二区三区| 久久久伊人欧美| 国产精品第十页| 亚洲激情国产精品| 欧美一级在线视频| 久久综合婷婷| 欧美成人国产va精品日本一级| 国产精品免费网站在线观看| 激情一区二区| 亚洲综合视频网| 亚洲国产日韩在线| 久久精品国产99| 国产精品制服诱惑| 艳女tv在线观看国产一区| 久久天天综合| 亚洲男人第一av网站| 欧美日韩精品三区| 亚洲精品视频在线播放| 久久最新视频| 午夜在线不卡|