美文网首页
分析Open CASCADE 中的Geom包

分析Open CASCADE 中的Geom包

作者: yumxuanyi | 来源:发表于2019-04-17 10:11 被阅读0次

    @版权声明:本文为版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出,
    本文链接https://www.jianshu.com/p/af8d52c6d2aa
    如有问题, 可邮件(yumxuanyi@qq.com)咨询。


    关键字:OpenCascade、Geom

    轴、坐标系

    Geom_AxisPlacement

    1. 这是一个抽象的类。定义了三维空间中的位置坐标系的共有行为。
    2. Geom包中提供了它的两个派生类Geom_Axis1Placement和Geom_Axis2Placement。分别表示一个坐标轴和一个坐标系
    3. 其内部数据成员为gp_Ax1

    Geom_Axis1Placement

    1. 表示三维空间中的一个坐标轴。
    2. 一个轴由一个坐标点(轴的起点)和一个单位向量(轴的方向)表示。
    3. 其内部数据成员为gp_Ax1,但是比gp_Ax1具有更多的更复杂的数据结构。比如可以用来定义对称轴或旋转轴。

    Geom_Axis2Placement

    1. 表示三维空间中的右手坐标系。
    2. 一个坐标系由一个坐标点和三个相互垂直的单位向量组成。
    3. 坐标系的方向Z Direction又称Main Direction。因为一旦当该单位向量被修改,坐标系的X Direction 和 Y Direction就会重新计算。但是如果X Direction 或者 Y Direction被修改了,Main Direction会保持不变。
    4. 该坐标系提供的部分功能与gp_Ax2提供的功能一致,但是还可以用来定义几何变换Geometric transformations

    Geom_Point

    1. 一个抽象类,描述了三维空间中几何点的共同行为。
    2. Geom_CartesianPoint为其派生类

    Geom_CartesianPoint

    1. 表示三维空间中的一个点。
    2. 一个Geom_CartesianPoint由一个gp_Pnt point定义或则笛卡尔坐标系中的三个坐标值X、 Y、Z给定。

    线

    直线

    Geom_Line

    1. 表示一条无界线。由一个位置和一个轴表示。
    2. 它的参数方程为:
      P(U) = O + U *Dir
      P 为参数为U时线上的点
      O 是位置坐坐标的坐标点
      Dir是位置坐标的单位向量

    曲线

    Geom_Curve

    1. 一个抽象类,描述了三维空间中曲线的共有行为。

    Geom_Conic

    1. 一个抽象类 表示3D空间中的圆锥曲线(二次曲线)的共同行为。
    2. 它的四个派生类为:Geom_Circle、Geom_Ellipse、Geom_Hyperbola和Geom_Parabola
    3. 其成员gp_Ax2 pos。表示该圆锥曲线在3D空间中的的(右手)局部i坐标系。坐标系的X方向和Y方向共同决定了改圆锥曲线所在的平面。

    Geom_Circle

    1. 表示三维空间中的一个圆。一个圆由一个半径以及一个中心坐标来表示。
    2. 它的位置由一个右手局部坐标系(gp_Ax2对象)指定。其中坐标系的原点为圆的中心点。坐标系的X 方向和Y方向定义了圆所在的平面。坐标系的Z方向为元所在平面的法向量
    3. 曲线的参数方程形式为:
      P(U) = O + R *Cos(U) * XDir + R *Sin(U) * YDir ;
      其中P 是在参数U时的坐标点
      O 、XDir、YDir分别表示该局部坐标系的原点、X方向、Y方向
      R 是圆的半径
    4. 该局部坐标系的X轴方向定义了改圆的起始参数。其它参数为中心点到曲线上点的方向
      与 X 轴的夹角,参数范围为[0,2*PI]
    5. 一个圆是封闭的和周期的。它的周期是2*PI

    Geom_Ellipse

    1. 表示三维空间中的椭圆

    Geom_Parabola

    1. 表示三维空间中的抛物线
    2. 一条抛物选由 焦距(focal length) 和 其在空间中的位置(gp_Ax2)表示
    3. 焦距(focal length) :顶点(apex)到焦点的距离
    4. gp_Ax2表示了 1. 抛物线的位置点 ;2. 抛物线的对称轴X Axis,抛物线位于对称轴的正方向 ;
      origin 、XDirection 和 YDirection共同确定了抛物线所在的平面
    5. 上面提到的坐标系为局部坐标系。坐标系的Main Direction为抛物线所在平面的法向量
    6. 参数方程为: P(U) = O + U * U/(4 * F) *XDir + U * YDir
      其中 O 、 XDir 、YDir分别为局部坐标系的原点 、X方向和Y方向
      F为抛物线的焦距

    Geom_Hyperbola

    1. 表示三维控件中的双曲线

    Geom_BezierCurve

    1. 表示一条有理贝塞尔曲线或无理贝塞尔曲线.
    2. 一条无理贝塞尔曲线(non-rational Bezier curve )由一组极点(也称控制点)来表示。
    3. 一条有理贝塞尔曲线(rational Bezier curve)由一组极点以及每个极点对应权重来表示(a table of poles with varying weights)。极点表(poles table)是一组点的一维数组(an array of gp_Pnt points),权重表(weight table)是一个一维实数数组(an array of reals)。这些一维数组的起点索引都是从1开始的。

    Geom_BoundedCurve

    1. 这是一个抽象的类。定义了三维空间中有界曲线(bounded curves)的共有行为。
    2. 一个有界曲线 由其first parameter 和last parameter限定了其边界。
    3. first parameter给出了该有界曲线的的起点。last parameter给出了该有界曲线的终点。该有界曲线的长度也是有限的。
    4. Geom包中提供了三个它的派生类。Geom_BezierCurve 、Geom_BSplineCurve 和Geom_TrimmedCurve 。

    Geom_BSplineCurve

    Geom_OffsetCurve

    Geom_TrimmedCurve

    Geom_Plane

    1. 表示三维空间中的一个平面
    2. 平面的参数方程如下:
      P(u,v) = O + u *XDIR + * YDIR
    

    Geom_Surface

    Geom_BezierSurface

    1. 表示一条有理贝塞尔曲线或无理贝塞尔曲面.
    2. 一个无理贝塞尔曲面(non-rational Bezier surface )由一组极点(也称控制点)来表示。
    3. 一个有理贝塞尔曲面(rational Bezier surface)由一组极点以及每个极点对应权重来表示(a table of poles with varying weights)。极点表(poles table)是一组点的二维数组(an 2D array of gp_Pnt points),权重表(weight table)是一个二维维实数数组(an 2D array of reals)。这些数组行和列起点的索引都是从1开始的。

    Geom_BoundedSurface

    1. 作为三维空间中所有有界曲面(bounded surface)的基类。
    2. 一个有界曲面是由二维参数空间中范围来表示的。例如由参数u和v的范围来限定。
    3. 一个有界曲线由4条曲线限定,这四条曲线构成了有界曲面的边界:
      在u方向上的u0 和 u1 位置的参数曲线
      在v方向上的v0和 v1位置的参数曲线。
    4. 有界曲线是有限的。他们的共有行为在Geom_Surface中定义。Geom包中提供了它的三个派生类Geom_BezierSurface、Geom_BSplineSurface和Geom_RectangularTrimmedSurface.

    Geom_BSplineSurface

    Geom_ConicalSurface

    Geom_CylindricalSurface

    Geom_OffsetSurface

    Geom_ElementarySurface

    Geom_OsculatingSurface

    Geom_RectangularTrimmedSurface

    Geom_SphericalSurface

    Geom_SweptSurface

    Geom_ToroidalSurface

    Geom_SequenceOfBSplineSurface

    Geom_SurfaceOfRevolution

    Geom_SurfaceOfLinearExtrusion

    方向 矢量 矩阵

    Geom_Direction

    1. 表示一个非null的单位向量

    Geom_Vector

    Geom_VectorWithMagnitude

    Geom_Transformation

    Geom_Geometry

    Geom_UndefinedValue

    Geom_UndefinedDerivative

    相关文章

      网友评论

          本文标题:分析Open CASCADE 中的Geom包

          本文链接:https://www.haomeiwen.com/subject/xxqgwqtx.html