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

eryar

PipeCAD - Plant Piping Design Software.
PlantAssistant - Translate AVEVA RVM/SP3D VUE to glTF, STEP, etc.
posts - 606, comments - 590, trackbacks - 0, articles - 0

PCurve - Curve on Surface

Posted on 2014-03-15 12:07 eryar 閱讀(4554) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

PCurve - Curve on Surface

eryar@163.com

Abstract. 本文通過給出曲面上曲線PCurve的定義來對OpenCascade中的Curve On Surface進行理解,并介紹了OpenCascade對應的類BRep_CurveOnSurface實現。通過Tcl腳本輸出的球的拓樸信息,分析PCurve的實際應用。

Key words. OpenCascade, ACIS, PCurve, Curve on Surface, Parametric Surface

1. Introduction

不管是ACIS還是OpenCascade中都有PCurve這個概念,字面上來理解就是參數曲線(Parametric Curve)。在《基于ACIS的幾何造型技術與系統開發》中也看到這個概念,如下圖所示:

wps_clip_image-32468

Figure 1.1 PCurve Entity of ACIS

“參數空間曲線是在參數曲面的雙參數空間中的二維樣條曲線。類pcurve是附加在參數曲面之間公共邊上的數據結構。”看完之后,對pcurve的概念還是不太清楚。本文給出PCurve的定義,并介紹PCurve在OpenCascade中的實現。根據定義可以對PCurve有個基本認識。

2. Definition of PCurve

PCurve為曲面上的曲線(Curve on Surface),其定義為:設曲面方程為

wps_clip_image-10644令參數u,v又是另一參數t的函數,即

wps_clip_image-19216

將其代入曲面方程,得到:

wps_clip_image-16341

當t變化時,就得到曲面上的一條單參數曲線,稱為曲面上的曲線或簡稱曲面上曲線(Curve on Surface)。若以s表示曲面上曲線的弧長,則由復合函數的求導公式可得弧長微分公式:

wps_clip_image-23179

令:

wps_clip_image-20813

則有:

wps_clip_image-17031

在古典微分幾何中,上式稱為曲面的第一基本公式,E,F,G稱為第一基本量。在曲面上,每一點的第一基本量與參數化無關,在整張曲面上,第一基本量是參數u和v的連續函數。讀者注意,弧元ds是曲線的幾何不變量,與曲面的參數化無關。關于曲線曲面更多的信息,請參考《微分幾何》、《計算幾何》之類的書籍。本文主要為了理解曲面上曲線PCurve的概念及其在OpenCascade中的實現。

目前對PCurve的應用還不太清楚,但是微分幾何中引入這個概念肯定是有他的意義,就像在程序設計中引入Pimpl(pointer to implementation)這個idiom。盡管引入Pimpl idiom會增加內存的額外開銷,甚至因為增加了間接層使程序代碼變得不易讀和不好調試,但是人們仍然樂于使用。站在API設計者的角度,它能隱藏信息、降低耦合、減少文件間的依賴,加快編譯速度、且可使生成的庫的兼容性更好等等,很多優點。所以在《Effective C++》和《API Design for C++》中,作者反復提到并使用Pimpl idiom。類比微分幾何引入的PCurve,先在此做上標記,如果有了新的理解再做分析。

3. PCurve in OpenCascade

在OpenCascade中對應于曲面上曲線PCurve的類是BRep_CurveOnSurface,其文檔中的說明為:Representation of a curve by a curve in the parametric space of a surface.

結合定義上面這句話就好理解了。現摘抄部分代碼來分析PCurve的定義和使用:

//=======================================================================
//function : BRep_CurveOnSurface
//=======================================================================
BRep_CurveOnSurface::BRep_CurveOnSurface(const Handle(Geom2d_Curve)& PC, 
                     
const Handle(Geom_Surface)& S, 
                     
const TopLoc_Location& L) :
       BRep_GCurve(L,PC
->FirstParameter(),PC->LastParameter()),
       myPCurve(PC),
       mySurface(S)
{
}
//=======================================================================
//function : D0
//=======================================================================
void BRep_CurveOnSurface::D0(const Standard_Real U, gp_Pnt& P) const
{
  
// shoud be D0 NYI
  gp_Pnt2d P2d = myPCurve->Value(U);
  P 
= mySurface->Value(P2d.X(),P2d.Y());
  P.Transform(myLocation.Transformation());
}

從其構造函數來看,要生成一個PCurve必須有曲線PC和曲面S及位置L。

從求PCurve的零次微分的函數D0可以看出,只需要一個參數U就可以計算出曲面上的點P。結合前面介紹的PCurve的定義,不難理解這段代碼的意義。下面通過分析球面的拓樸結構,看看PCurve的應用。

wps_clip_image-12231

Figure 3.1 Sphere in Draw Test Harness

4. Code Demo

下面的程序生成一個球,再把其拓樸結構顯示出來,可以看到其中就有PCurve的信息。使用Tcl腳本程序示例如下:

pload ALL
psphere s 
1.0
dump s

以上Tcl腳本在OpenCascade的Draw Test Harness中運行結果如下所示:

wps_clip_image-8437

Figure 4.1 PCurve in Sphere

由上圖可知,球的Edge5由一個PCurve來表示。曲面上曲線PCurve在拓樸結構輸出的信息位于Curve2ds中,曲面的幾何數據位于surfaces中,分別如下圖所示:

wps_clip_image-28559

Figure 4.2 PCurves of Sphere

PCurve編號為4的是條直線,起點(0,-1.570796),方向為(1,0)即X方向。

wps_clip_image-30340

Figure 4.3 Surfaces of Sphere

曲面編號為1的是一個球面,圓心(0,0,0),半徑為1,坐標系與世界坐標系相同。

結合PCurve 4和曲面1及PCurve的參數范圍,可以計算出曲面上的一條曲線上的坐標值。不過上面球面的例子中的Edge是degenerated邊,退化成一個點了。

由上面球的拓樸信息可知,在理解了參數曲線曲面(有向性)、奇點(Singular Point),參數曲面的奇異性(Singularity)、曲面上曲線(PCurve)等概念后,OpenCascade的拓樸結構就可以基本理解了。

5. Conclusions

本文通過給出曲面上曲線PCurve的定義來對OpenCascade中的Curve On Surface進行理解,并介紹了OpenCascade對應的類BRep_CurveOnSurface實現。

通過Tcl腳本輸出的球的拓樸信息,看看PCurve的實際應用,從中可以看出使用Tcl的簡單與便捷。

6. References

1. 朱心雄,自由曲線曲面造型技術,科學出版社,2000

2. 王仁宏 李崇君 朱春鋼,計算幾何教程,科學出版社,2008

3. 陳維桓,微分幾何,北京大學出版社,2006

4. 詹海生 李廣鑫 馬志欣,基于ACIS的幾何造型技術與系統開發,清華大學出版社,2002

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美视频手机在线| 亚洲图中文字幕| 日韩一区二区电影网| 亚洲国产三级在线| 亚洲国产婷婷香蕉久久久久久99 | 欧美专区在线观看| 久久国产欧美日韩精品| 久久精品免费电影| 久久久久久有精品国产| 美日韩免费视频| 欧美激情一二三区| 亚洲作爱视频| 欧美专区亚洲专区| 另类春色校园亚洲| 欧美日韩综合一区| 国产啪精品视频| 韩国三级电影久久久久久| 亚洲片区在线| 午夜在线播放视频欧美| 久久综合中文字幕| 亚洲欧洲一区二区在线观看| 91久久夜色精品国产网站| 日韩视频在线一区| 欧美一区亚洲二区| 欧美激情免费观看| 国产伦精品一区二区三区在线观看| 国产综合色产在线精品| 亚洲精品美女在线观看播放| 亚洲在线日韩| 欧美韩日高清| 亚洲欧美在线网| 亚洲一区二区三区久久| 一区二区欧美精品| 欧美一区二区三区免费看| 男人的天堂亚洲| 中文一区在线| 欧美激情成人在线| 一区二区三区在线高清| 亚洲欧美国产日韩天堂区| 欧美69wwwcom| 欧美有码视频| 国产精品久久久久秋霞鲁丝| 亚洲精品国久久99热| 久久精品欧美日韩精品| 日韩一级精品| 欧美刺激性大交免费视频| 国内精品久久久久久久果冻传媒| 这里只有精品丝袜| 亚洲第一二三四五区| 欧美一区二区三区另类 | 亚洲精品五月天| 久久亚洲欧洲| 极品少妇一区二区三区精品视频| 欧美一级视频精品观看| 亚洲欧洲精品天堂一级| 久久午夜精品一区二区| 国产亚洲精品资源在线26u| 亚洲欧美国产高清| 一片黄亚洲嫩模| 欧美日韩一区在线观看视频| 日韩一二在线观看| 亚洲日本成人网| 欧美激情精品久久久久久蜜臀| 一区二区三区我不卡| 久久亚洲高清| 久久精品91久久香蕉加勒比| 国产在线播放一区二区三区| 久久九九国产精品怡红院| 销魂美女一区二区三区视频在线| 国产精品一区在线观看你懂的| 亚洲欧美日韩一区二区在线| 亚洲天堂av在线免费| 国产精品视频精品| 久久精品视频99| 久久蜜桃资源一区二区老牛 | 亚洲自拍偷拍色片视频| 国产精品久久久久久久7电影| 亚洲一区二区3| 亚洲网站在线观看| 国产一二三精品| 男人插女人欧美| 久久国产精品久久国产精品| 欧美三级欧美一级| 亚洲欧美日韩精品久久| 午夜一级久久| 在线欧美日韩| 午夜影视日本亚洲欧洲精品| 久久视频这里只有精品| 久久久亚洲成人| 夜夜嗨av一区二区三区| 99国产精品| 国产麻豆成人精品| 欧美xxxx在线观看| 欧美日韩一区二区视频在线| 欧美在线免费观看| 久久夜色精品国产亚洲aⅴ| 亚洲美女在线国产| 亚洲一级网站| 亚洲激情电影中文字幕| 亚洲视频电影图片偷拍一区| 狠狠色丁香久久综合频道 | 亚洲午夜女主播在线直播| 亚洲免费一在线| 91久久国产自产拍夜夜嗨| 99riav久久精品riav| 国产一区二区日韩精品欧美精品| 亚洲大片免费看| 国产女主播一区二区三区| 欧美国产成人精品| 国产精品欧美日韩| 亚洲国产欧美一区| 国产亚洲欧美日韩精品| 日韩视频精品在线| 在线观看视频一区| 亚洲欧美日韩国产成人| 亚洲精品一区二区三区蜜桃久| 亚洲欧美国产一区二区三区| 日韩亚洲视频| 看片网站欧美日韩| 久久精品99无色码中文字幕| 欧美日韩国产在线看| 欧美99在线视频观看| 国产精品婷婷午夜在线观看| 亚洲国产毛片完整版| 黄色欧美成人| 午夜精品久久久久久久蜜桃app| 夜夜嗨av色一区二区不卡| 久久免费视频在线观看| 久久久久久久91| 国产欧美日韩麻豆91| 亚洲视频免费看| 亚洲一区二区免费看| 欧美伦理影院| 亚洲精品日韩在线观看| 亚洲精品一区二区网址| 免费视频最近日韩| 久久在线播放| 尤物yw午夜国产精品视频明星| 欧美在线一二三四区| 久久久久久久久岛国免费| 国产乱码精品一区二区三区不卡| 一本色道久久综合亚洲精品不| 在线视频亚洲欧美| 欧美日韩成人网| 日韩亚洲视频| 先锋影音久久久| 国产欧美日韩综合| 欧美一区二区三区男人的天堂| 久久av一区二区三区漫画| 国产欧美一区二区三区在线老狼| 久久精品欧洲| 小黄鸭精品aⅴ导航网站入口| 亚洲欧美视频在线观看视频| 国产精品麻豆va在线播放| 国产精品99久久99久久久二8| 亚洲午夜精品国产| 国产精品日韩在线一区| 亚洲综合视频一区| 久久露脸国产精品| 亚洲国产高清视频| 欧美日韩精品免费观看视一区二区| 最新国产精品拍自在线播放| 一区二区三区精品在线| 欧美三日本三级三级在线播放| 亚洲专区在线| 欧美成人xxx| 亚洲性图久久| 国产精品一区二区你懂的| 久久久精品久久久久| 亚洲欧洲日韩综合二区| 亚洲一区二区三区777| 国产婷婷色一区二区三区| 老司机午夜精品视频在线观看| 亚洲精品在线观看视频| 欧美在线亚洲一区| 亚洲激情网站| 国产精品主播| 欧美韩日一区| 欧美一区二区三区视频免费播放| 免费亚洲一区| 午夜精品久久99蜜桃的功能介绍| 1000部国产精品成人观看| 欧美日韩一区二区视频在线观看| 欧美一进一出视频| 日韩午夜一区| 欧美激情视频一区二区三区在线播放 | 欧美精品激情| 久久精品91| 亚洲一区二区三区精品在线| 欧美77777| 久久国产精品久久w女人spa| 日韩亚洲欧美精品| 在线成人免费视频| 国产精品一区二区三区久久| 欧美国产一区二区在线观看| 久久久久免费| 先锋影音一区二区三区| av成人天堂| 亚洲黄色免费| 免费观看亚洲视频大全|