eryar

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

OpenCascade Primitives BRep-Torus

Posted on 2014-03-23 17:07 eryar 阅读(1723) 评论(0)  编辑 收藏 引用 所属分类: 2.OpenCASCADE

OpenCascade Primitives BRep-Torus

eryar@163.com

Abstract. BRep is short for Boundary Representation. Boundary Representation gives a complete description of an object by associating topological and geometric information for solid modeling. In this case, objects are described by their boundaries. There are two types of information in BRep: Topological information and Geometric information. This paper is concerned with the Torus BRep in OpenCascade, and also show how to use Tcl script to dump torus BRep info.

Key words. OpenCascade, BRep, Boundary Representation, Torus

1. Introduction

本文通过在Draw Test Harness中的Tcl脚本来生成圆环体Torus的边界表示(BRep)数据,通过对生成的数据进行分析,来理解OpenCascade中的Torus的边界表示方式。

如下图所示为使用Tcl命令在Draw Test Harness中生成的圆环体:

wps_clip_image-21862

Figure 1.1 Torus Generated by Tcl in Draw Test Harness

2. Dump Torus BRep Info by Tcl

使用Tcl脚本在Draw Test Harness中输出圆环体(Torus)的边界表示(BRep)数据的命令如下图所示:

wps_clip_image-5698

Figure 2.1 Dump Torus BRep Info by Tcl in Draw Test Harness

以上命令会生成一个圆心位于坐标原点(0,0,0),半径R1为6,半径R2为2的圆环体,圆环体的尺寸如下图所示:

wps_clip_image-22096

Figure 2.2 Torus Generated by Tcl Script

3. Torus BRep in OpenCascade

还是先从顶点(Vertex)开始编号,来对圆环体(Torus)的边界表示(BRep)进行理解。从导出的BRep信息可以看出,圆环体只有一个顶点(Vertex),对其编号,如下图所示:

wps_clip_image-17072

Figure 3.1 Vertex of the Torus

圆环体共有两条边Edge,分别为Edge #5和Edge#6。两条边中的几何数据有些类似,都是由一条三维曲线和一个闭合曲面上的曲线组成。先来看看边Edge#5的几何信息:

wps_clip_image-6823

Figure 3.2 Edge #5 of the Torus

三维空间曲线2是一个圆(Circle),取值范围是[0,2PI]。由其参数可知此圆圆心位于(6,0,0),半径为2,位于XOZ平面上。

闭合曲面1上的参数曲线3,4是两条直线,取值范围也是[0,2PI]。曲面1的参数方程如下所示:

wps_clip_image-4978

将参数曲线3和4计算得到的u(取0或2PI),v代入上述Torus的参数方程中可得曲面上的两条曲线的参数方程如下所示:

wps_clip_image-24367

表示的曲线和三维空间曲线2一样,是一个圆形。

wps_clip_image-28939

Figure 3.3 PCurve 3 and 4 on Surface 1 of the Torus

同理对Edge#6中的几何信息进行分析可知,Edge#6是位于XOY面上半径为8的圆。将圆环体所有的边编号绘出如下图所示:

wps_clip_image-21999

Figure 3.4 Edges of the Torus

圆环体Torus只有一个环Wire#4,结合上述边,绘出环如下图所示:

wps_clip_image-10954

Figure 3.5 Wire of the Torus

由上图可知,组成环Wire的两条衔接边Seam Edge汇合成一个顶点Vertex。最后环Wire#4组成面Face#3,面Face#3组成了壳Shell#2,壳Shell#2组成了体Solid#1。

4. Conclusion

通过Tcl生成的圆环体Torus的边界表示BRep信息,分析了OpenCascade中的圆环举体的边界表示方式。可以看出Torus主要是由两条衔接边Seam Edge组成,两条衔接边汇合处是一个顶点(Vertex)。

5. References

1. OpenCascade, Test Harness User’s Guide 2013

2. OpenCascade, BRep Format Description White Paper, 2013

3. John K. Ousterhout, Tcl and Tk Toolkit, 1993


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理