• <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>

            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 2012-09-24 23:07 eryar 閱讀(5035) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            Math Primitives and Algorithms

            數學圖元及其算法

            eryar@163.com

            一、概述 Overview

            Open CASCADE中的數學圖元及其算法包括以下內容:

            l 向量和矩陣(Vectors and matrices);

            l 幾何圖元(Geometric primitives);

            l 數學算法(Math algorithms);

            二、向量和矩陣 Vectors and Matrices

            向量和矩陣部分提供了基本類型的矩陣和向量的C++實現,也可用來定義更復雜的數據結構。實數類型的矩陣和向量支持標準操作,如:加法、乘法、轉置、求逆操作等。

            向量和矩陣的維數是任意的,所以必須在定義的時候聲明,以便分配存儲空間。在聲明后就不能對其維數進行修改。

            向量和矩陣對象的本體和實體是相同的,即它們不能被共享且通過賦值操作來復制。

            向量和矩陣的值可以通過索引來初始化和賦值,且其索引必須在維數即范圍之內。

            有些向量和矩陣的操作是非法的,在這種情況下將會產生異常。兩個標準的異常將會被使:

            l Standard_DimensionError:當兩個矩陣或向量的操作涉及到的維數不匹配時產生;

            l Standard_RangeError:當要訪問在矩陣或向量范圍之外的數據時產生;

            三、幾何圖元類型 Primitive Geometric Types

            1.概述 Overview

            當要創建幾何對象之前,你必須決定將要創建的對象是用于二維還是用于三維空間。包gp提供了通過值而不是引用控制的二維和三維類。當這類對象復制時,對象本體和實體是一致的。改變對象的一個實例不會影響其它的。

            2.包gp

            gp定義了基本的非持久性幾何實體,可用來進行代數計算和在二維和三維空間中基本的幾何分析。也提供了基本的變換操作,如單位化、旋轉、平移、鏡像、縮放變換,及這些變換的組合。這些幾何實體都是由值控制的。可用的幾何實體如下所示;

            l 二維和三維笛卡爾坐標(2D & 3D Cartesian cooridinates

            l 矩陣(Matrices

            l 笛卡爾點(Cartesian Points

            l 向量(Vector

            l 方向(Direction

            l 軸(Axis

            l 直線(Line

            l 圓(Circle

            l 橢圓(Ellipse

            l 雙曲線(Hyperbola

            l 拋物線(Parabola

            l 平面(Plane

            l 無限的柱面(Infinite Cylindrical Surface

            l 球面(Spherical Surface

            l 超環面(Toroidal Surface

            l 錐面(Conical Surface

            四、幾何圖元類型集合 Collections of Primitive Geometric Types

            若你不想使這些幾何元素的單個實例而是他們的集合,包TColgp就是用來處理這類對象集合的。

            l TColgp:包TColgp提供了包gp中的類的TCollection的實例化,如:XYXYZPntPnt2dVecVec2dLinLin2dCircCirc2d等。它們都是非持久性類。

            五、基本幾何庫 Basic Geometric Libraries

            有幾個庫可用來對曲線和曲面作基本的計算。若待處理的對象是由包gp中創建的,則初等曲線和曲面庫—包ElCLib和包ElSLib—中很多算法是有用的。

            Precision描述了兩個數比較時的精度標準。

            l ElCLib:(Elementary Curves Libraries)提供用于解析曲線的方法,可對gp包中曲線進行簡單計算的庫。根據給定的參數計算點或根據點計算參數。

            l ElSLib:(Elementary Surfaces Libraries)提供用于解析曲面的方法,可對gp包中的曲面進行簡單計算。通過給定的兩個參數計算點或計算一個點的參數。還提供了計算曲線和曲面法向的庫。

            l Bnd:(Bounding Boxes)二維或三維空間中的包圍盒。

            六、通用數學算法 Common Math Algorithms

            通用數學算法庫提供了C++實現的最常用的數學算法,包括以下內容:

            l 求解線性方程組的算法

            l 求函數極值的算法

            l 求非線性方程(組)的根的算法

            l 求方陣特征值和特征向量的算法

            算法的實現 Implementation of Algorithms

            所有數學算法的實現原則是相同的,他們包含:

            l 構造函數:執行幾乎所有的計算,或給出合適參數。所有相關信息保存在結果對象中,所以使后期計算更高效。

            l 函數IsDone:這個函數返回計算的成功與否。

            l 一些特定函數:對每個算法特定的函數,用來確保得到各種結果。這些函數只有在IsDone返回true時才可能調用,否則將會產生StdFail_NotDone異常。

            下面的例子演示的是使用高斯方法求解線性方程組的代碼。代碼截取自類math_Gauss的頭文件。

            使用高斯方法求解方程組的主程序如下:

             

            eryar@163.com

            Pudongxin Shanghai China

            20120924

             

            日韩中文久久| 久久久久人妻一区二区三区vr| 精品熟女少妇a∨免费久久| 无码人妻精品一区二区三区久久久 | 怡红院日本一道日本久久| 久久综合狠狠综合久久激情 | 久久国产香蕉一区精品| 日韩va亚洲va欧美va久久| 久久久精品2019免费观看| 国产成人香蕉久久久久| 久久精品免费一区二区| www.久久热.com| 欧美大战日韩91综合一区婷婷久久青草| 日本加勒比久久精品| 国产精品99精品久久免费| 人人狠狠综合88综合久久| 91精品国产综合久久久久久| 久久精品国产清自在天天线| 亚洲精品乱码久久久久久按摩| 青青青国产精品国产精品久久久久| 中文字幕久久亚洲一区| 国产精品免费久久久久影院| 人妻精品久久久久中文字幕69| 久久se精品一区二区影院| 久久偷看各类wc女厕嘘嘘| 伊人色综合九久久天天蜜桃| 国产激情久久久久影院小草 | 日本免费一区二区久久人人澡| 中文精品99久久国产| 久久久久国产日韩精品网站| 久久成人国产精品二三区| 99久久精品影院老鸭窝| 亚洲va久久久噜噜噜久久| 久久人人爽人人爽人人爽| 亚洲七七久久精品中文国产| 亚洲国产天堂久久综合| 欧美久久一级内射wwwwww.| 久久综合五月丁香久久激情| 99久久国产综合精品网成人影院| 国产精品99久久久久久人| 久久免费小视频|