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

eryar

PipeCAD - Plant Piping Design Software.
RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
posts - 603, comments - 590, trackbacks - 0, articles - 0
Intersection between a 2d line and a conic in OpenCASCADE

eryar@163.com

Abstract. OpenCASCADE provides the algorithm to implementation of the analytical intersection between a 2d line and another conic curve. The conic is defined by its implicit quadaratic equation, so the intersection problem is become a polynomial roots finding problem. The paper focus on the 2d line intersection another conic algorithm implementation.

Key Words. 2d line intersection, conic

1.Introduction

高中的時候?qū)W習(xí)了直線Line、圓Circle、圓錐曲線Conic(橢圓Ellipse、雙曲線Hyperbola和拋物線parabola)等二維曲線的方程及特性,也可以對他們之間的相交情況進行計算。如何編程實現(xiàn)直線與任意圓錐曲線相交呢?本文通過對OpenCASCADE中二維直線與圓錐曲線相交代碼的分析來理解其實現(xiàn)原理。

wps8878.tmp

Figure 1. 直線與圓錐曲線相交

對于二維曲線知識的學(xué)習(xí)又把思緒拉回到高中年代,翻開泛黃的課本,遙想那個青澀時候,對于《數(shù)學(xué)》的學(xué)習(xí)也是停留在解題上,沒有理解,更別說應(yīng)用了。有人說數(shù)學(xué)、英語和代碼是當今的世界語言,都可以進行思想的交流。數(shù)學(xué)本來就是描述現(xiàn)實世界規(guī)律的精妙語言,但我終究是個俗人,更崇拜能應(yīng)用數(shù)學(xué)創(chuàng)建價值的人,如OpenCASCADE的開發(fā)者們。

2.Conic Implicit Equation

圓錐曲線一般的代數(shù)表示方法為:

wps8879.tmp

OpenCASCADE中使用類IntAna2d_Conic來表示圓錐曲線的代數(shù)方程。并提供了將二維曲線(直線、圓、橢圓、拋物線、雙曲線)轉(zhuǎn)換成代數(shù)方程的方法,相關(guān)代碼如下所示:

IntAna2d_Conic::IntAna2d_Conic (const gp_Lin2d& L) {
  a = 0.0;
  b = 0.0;
  c = 0.0;
  L.Coefficients(d,e,f);
  f = 2*f;
}
IntAna2d_Conic::IntAna2d_Conic (const gp_Circ2d& C) {
  C.Coefficients(a,b,c,d,e,f);
}
IntAna2d_Conic::IntAna2d_Conic (const gp_Elips2d& E) {
  E.Coefficients(a,b,c,d,e,f);
}
IntAna2d_Conic::IntAna2d_Conic (const gp_Parab2d& P) {
  P.Coefficients(a,b,c,d,e,f);
}
IntAna2d_Conic::IntAna2d_Conic (const gp_Hypr2d& H) {
  H.Coefficients(a,b,c,d,e,f);
}


3.Intersection Implementation

當對直線和圓錐曲線進行求交時,先得到了直線的一般式方程和圓錐曲線的一般式方程,將它們聯(lián)立成方程組如下所示:

wps887A.tmp

是一個二元二次方程組。通過直線的參數(shù)表示法,將上述二元二次方程組轉(zhuǎn)換成一元二次方程,再對這個方程進行求解。設(shè)直線l經(jīng)過點P0(x0,y0),v=(a, b)是它的一個方向向量。P(x,y)是直線上任意一點,則向量P0P與v共線。根據(jù)向量共線的充要條件,存在唯一實數(shù)t,使:

wps887B.tmp

將直線的一般式化為參數(shù)式為:

wps887C.tmp

將直線的參數(shù)式代入圓錐曲線的一般式得到:

wps887D.tmp

整理上述方程得:

wps887E.tmp

得到各次系數(shù)后,就可以用Newton法來解這個一元二次方程了。OpenCASCADE中的實現(xiàn)代碼如下所示:

 

void IntAna2d_AnaIntersection::Perform (const gp_Lin2d& L,
                   const IntAna2d_Conic& Conic)
{
  Standard_Real A,B,C,D,E,F;
  Standard_Real px0,px1,px2;
  Standard_Real DR_A,DR_B,DR_C,X0,Y0;
  Standard_Integer i;
  Standard_Real tx,ty,S;
  
  done = Standard_False;
  nbp  = 0;
  para = Standard_False;
  iden = Standard_False;
 
  Conic.Coefficients(A,B,C,D,E,F);
  L.Coefficients(DR_A,DR_B,DR_C);
  X0=L.Location().X();
  Y0=L.Location().Y();
  
  // Parametre: L
  
// X = Xo - L DR_B    et     Y = Yo + L DR_A

  px0=F + X0*(D+D + A*X0 + 2.0*C*Y0) + Y0*(E+E + B*Y0);
  px1=2.0*(E*DR_A - D*DR_B + X0*(C*DR_A - A*DR_B) + Y0*(B*DR_A - C*DR_B));
  px2=DR_A*(B*DR_A - 2.0*C*DR_B) + A*(DR_B*DR_B);
  
  MyDirectPolynomialRoots Sol(px2,px1,px0);
  
  if(!Sol.IsDone()) {
    done=Standard_False;
    return;
  }
  else { 
    if(Sol.InfiniteRoots()) {
      iden=Standard_True;
      done=Standard_True;
      return;
    }
    nbp=Sol.NbSolutions();
    for(i=1;i<=nbp;i++) {
      S=Sol.Value(i);
      tx=X0 - S*DR_B;
      ty=Y0 + S*DR_A;
      lpnt[i-1].SetValue(tx,ty,S);
    }
    Traitement_Points_Confondus(nbp,lpnt);
  }
  done=Standard_True;
}

從上述源碼可知,OpenCASCADE使用了直線的參數(shù)式來將直線與圓錐曲線的求交表示成一元二次方程,再使用Newton法來對方程進行求解。 其中變量px0、px1、px2分別表示一元二次方程的零次、一次和二次項的系數(shù)。

4.Conclusion

通過圓錐曲線的一般式和直線的參數(shù)式將直線與圓錐曲線相交問題變成一個一元二次方程的求根問題,再通過方程求根的Newton法來對一元二次方程進行求解。

5.References

1. 人民教育出版社中學(xué)數(shù)學(xué)室. 數(shù)學(xué)第二冊上. 人民教育出版社. 2000

2. 易大義, 沈云寶, 李有法. 計算方法. 浙江大學(xué)出版社. 2002

3. 李原, 張開富, 余劍峰. 計算機輔助幾何設(shè)計技術(shù)及應(yīng)用. 西北工業(yè)大學(xué)出版社. 2007

4. 丘維聲. 解析幾何. 北京大學(xué)出版社. 1996

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲国产一区二区三区青草影视| 在线视频你懂得一区| 久久精品91| 久久蜜臀精品av| 狠狠色丁香婷婷综合影院| 久久久www成人免费毛片麻豆| 久久久久欧美精品| 亚洲丶国产丶欧美一区二区三区| 久久精品国产亚洲高清剧情介绍| 国产精品网站在线| 久久九九99视频| 亚洲丰满在线| 亚洲欧美一区二区原创| 国产日本欧美一区二区| 久久久噜噜噜久久久| 亚洲国产欧美日韩精品| 亚洲自拍高清| 精品成人在线观看| 欧美视频在线观看免费网址| 欧美一区二区大片| 亚洲欧洲精品一区二区三区不卡| 性感少妇一区| 日韩一二三区视频| 国产片一区二区| 你懂的成人av| 欧美一区永久视频免费观看| 亚洲三级免费电影| 久久一区二区三区四区| 亚洲午夜久久久| 雨宫琴音一区二区在线| 国产精品ⅴa在线观看h| 久久亚洲春色中文字幕| 亚洲免费视频观看| 亚洲欧洲日韩在线| 久久综合中文字幕| 亚洲欧美激情视频| 亚洲精品资源| 在线免费观看成人网| 国产精品中文在线| 欧美日韩播放| 欧美成人午夜77777| 久久成人免费| 欧美亚洲综合久久| 亚洲一区在线观看免费观看电影高清| 亚洲国产精品va在看黑人| 久久综合伊人77777| 久久久午夜精品| 午夜伦欧美伦电影理论片| 欧美一级在线亚洲天堂| 一区二区免费在线播放| 日韩小视频在线观看| 91久久精品国产91久久性色tv| 欧美成人免费大片| 欧美大片专区| 亚洲国产精品欧美一二99| 欧美顶级少妇做爰| 欧美成人亚洲| 亚洲高清资源| 最新高清无码专区| 亚洲三级电影在线观看| 日韩亚洲欧美中文三级| 亚洲伊人观看| 亚洲在线视频免费观看| 亚洲一区在线观看视频 | 国产在线观看91精品一区| 国产精品激情av在线播放| 国产精品大全| 国产日韩欧美日韩大片| 国产日韩欧美在线一区| 国产在线精品成人一区二区三区 | 浪潮色综合久久天堂| 乱中年女人伦av一区二区| 欧美激情小视频| 亚洲大胆在线| 亚洲激情一区| 一区二区三区精品| 欧美一区=区| 毛片基地黄久久久久久天堂| 欧美日本在线播放| 国产精品视频1区| 1000部国产精品成人观看| 亚洲精品在线免费| 欧美影院成年免费版| 欧美亚洲免费电影| 老牛国产精品一区的观看方式| 奶水喷射视频一区| 亚洲人成亚洲人成在线观看图片 | 国产主播精品| 亚洲高清久久| 国产精品99久久99久久久二8 | 亚洲午夜电影在线观看| 久久国产综合精品| 欧美日韩成人一区| 国产在线欧美日韩| 宅男噜噜噜66一区二区66| 久久九九热免费视频| 欧美国产精品v| 亚洲一级特黄| 欧美大片va欧美在线播放| 欧美性猛片xxxx免费看久爱| 黄色成人在线网站| 亚洲小说春色综合另类电影| 蜜桃av一区二区| 午夜精品久久99蜜桃的功能介绍| 欧美福利一区二区| 韩国v欧美v日本v亚洲v| 亚洲区第一页| 久久精品亚洲国产奇米99| 性欧美videos另类喷潮| 欧美一区视频| 欧美午夜电影在线观看| 亚洲精品网址在线观看| 久久久国产精品一区| 亚洲卡通欧美制服中文| 久久午夜av| 国产亚洲一二三区| 亚洲女爱视频在线| 日韩亚洲欧美中文三级| 欧美黑人在线观看| 亚洲国产老妈| 免费人成精品欧美精品| 久久xxxx| 国产日韩欧美高清| 亚洲欧美日韩在线| 一本色道久久综合狠狠躁篇怎么玩| 免费视频最近日韩| 国内一区二区在线视频观看| 欧美在线关看| 亚洲视频在线观看一区| 欧美日韩国产精品自在自线| 一区二区三区成人精品| 亚洲精品久久久久久久久久久久| 男人插女人欧美| 亚洲国产精品热久久| 欧美成人国产| 另类天堂视频在线观看| 亚洲高清视频一区| 欧美r片在线| 欧美大胆成人| 亚洲午夜激情在线| 亚洲一区二区高清视频| 国产精品视频一二三| 久久国产日韩| 久久久夜精品| 亚洲精品久久久久久久久| 亚洲国产成人在线| 欧美精品一区二区三区一线天视频| 亚洲精品综合久久中文字幕| 亚洲精品视频中文字幕| 欧美日韩ab片| 久久国产色av| 久久日韩精品| 一本一道久久综合狠狠老精东影业| 9久草视频在线视频精品| 国产精品久久久久久久久久久久| 亚洲欧美综合精品久久成人| 午夜性色一区二区三区免费视频| 国产一区亚洲一区| 欧美电影打屁股sp| 国产精品jvid在线观看蜜臀| 久久九九免费| 欧美精品一区二区三区在线看午夜 | 欧美午夜www高清视频| 亚洲素人在线| 久久精品毛片| 亚洲美女视频在线免费观看| 亚洲无线视频| 国产午夜精品美女毛片视频| 久久久噜噜噜久久人人看| 久久蜜桃香蕉精品一区二区三区| 亚洲国产精品一区制服丝袜 | 午夜精品久久久久影视| 久久国产天堂福利天堂| 一区二区三区欧美在线观看| 欧美一区在线直播| 亚洲影院免费| 免费亚洲电影在线| 久久精品国产69国产精品亚洲 | 国模私拍视频一区| 日韩亚洲精品视频| 精品二区视频| 亚洲欧美高清| 亚洲一卡久久| 欧美wwwwww| 久久亚洲高清| 国产日产欧美a一级在线| 亚洲三级免费电影| 亚洲国产经典视频| 欧美在线一二三区| 欧美一级视频精品观看| 欧美日在线观看| 亚洲欧洲在线看| 亚洲欧洲美洲综合色网| 久久久精品午夜少妇| 久久精品国产96久久久香蕉| 国产精品一区亚洲| 午夜亚洲性色视频| 午夜久久资源| 国产一二三精品| 亚洲综合精品自拍|