OpenCascade Primitives BRep-Torus
OpenCascade Primitives BRep-Torus
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中生成的圆环体:
![]()
Figure 1.1 Torus Generated by Tcl in Draw Test Harness
2. Dump Torus BRep Info by Tcl
使用Tcl脚本在Draw Test Harness中输出圆环体(Torus)的边界表示(BRep)数据的命令如下图所示:
![]()
Figure 2.1 Dump Torus BRep Info by Tcl in Draw Test Harness
以上命令会生成一个圆心位于坐标原点(0,0,0),半径R1为6,半径R2为2的圆环体,圆环体的尺寸如下图所示:
![]()
Figure 2.2 Torus Generated by Tcl Script
3. Torus BRep in OpenCascade
还是先从顶点(Vertex)开始编号,来对圆环体(Torus)的边界表示(BRep)进行理解。从导出的BRep信息可以看出,圆环体只有一个顶点(Vertex),对其编号,如下图所示:
![]()
Figure 3.1 Vertex of the Torus
圆环体共有两条边Edge,分别为Edge #5和Edge#6。两条边中的几何数据有些类似,都是由一条三维曲线和一个闭合曲面上的曲线组成。先来看看边Edge#5的几何信息:
![]()
Figure 3.2 Edge #5 of the Torus
三维空间曲线2是一个圆(Circle),取值范围是[0,2PI]。由其参数可知此圆圆心位于(6,0,0),半径为2,位于XOZ平面上。
闭合曲面1上的参数曲线3,4是两条直线,取值范围也是[0,2PI]。曲面1的参数方程如下所示:
![]()
将参数曲线3和4计算得到的u(取0或2PI),v代入上述Torus的参数方程中可得曲面上的两条曲线的参数方程如下所示:
![]()
表示的曲线和三维空间曲线2一样,是一个圆形。
![]()
Figure 3.3 PCurve 3 and 4 on Surface 1 of the Torus
同理对Edge#6中的几何信息进行分析可知,Edge#6是位于XOY面上半径为8的圆。将圆环体所有的边编号绘出如下图所示:
![]()
Figure 3.4 Edges of the Torus
圆环体Torus只有一个环Wire#4,结合上述边,绘出环如下图所示:
![]()
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
PDF Version: OpenCascade Primitves BRep-Torus
OpenCascade Primitives BRep-Torus的更多相关文章
- OpenCascade Primitives BRep - Sphere
OpenCascade Primitives BRep - Sphere eryar@163.com Abstract. BRep is short for Boundary Representati ...
- OpenCascade Primitives BRep - Box
OpenCascade Primitives BRep - Box eryar@163.com Abstract. BRep is short for Boundary Representation. ...
- OpenCascade Primitives BRep-Cone
OpenCascade Primitives BRep-Cone eryar@163.com Abstract. BRep is short for Boundary Representation. ...
- OpenCascade Primitives BRep-Cylinder
OpenCascade Primitives BRep-Cylinder eryar@163.com Abstract. BRep is short for Boundary Representati ...
- OpenCASCADE Make Primitives-Sphere
OpenCASCADE Make Primitives-Sphere eryar@163.com Abstract. The sphere is the simplest topology shape ...
- OpenCASCADE BRep vs. OpenNURBS BRep
OpenCASCADE BRep vs. OpenNURBS BRep eryar@163.com Abstract. BRep short for Boundary Representation. ...
- Geometry Surface of OpenCascade BRep
Geometry Surface of OpenCascade BRep eryar@163.com 摘要Abstract:几何曲面是参数表示的曲面 ,在边界表示中其数据存在于BRep_TFace中, ...
- Topology Shapes of OpenCascade BRep
Topology Shapes of OpenCascade BRep eryar@163.com 摘要Abstract:通过对OpenCascade中的BRep数据的读写,理解边界表示法的概念及实现 ...
- Representation Data in OpenCascade BRep
Representation Data in OpenCascade BRep eryar@163.com 摘要Abstract:现在的显示器大多数是光栅显示器,即可以看做一个像素的矩阵.在光栅显示器 ...
随机推荐
- [BZOJ4197][Noi2015]寿司晚宴
4197: [Noi2015]寿司晚宴 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 412 Solved: 279[Submit][Status] ...
- BestCoder Round 70
惨败,不能再嘲笑别人了,否则自己也会像别人那样倒霉 HDU 5615:http://acm.hdu.edu.cn/showproblem.php?pid=5615 求ax^2+bx+c能否拆成(px+ ...
- Yii框架CURD方法
在YII框架中,CURD有2种方式: 1.AR模式:2. DAO模式 AR模式下 查全部 MODEL $model->find()->asArray()->all()查单 个 ...
- 踏上Salesforce的学习之路(二)
一.添加一个字段到对象中 1.给Merchandise对象添加一个Price字段 先点击右上角姓名旁边的Setup(不管你在哪个页面,点击Setup都能让你快速的回到首页,如下图所示),然后在左侧的Q ...
- windows平台,WEB开发,喜欢IE + notepad的同行进来可以看。
用多个浏览器查看自己的page( 平台是notepad) 借助window的批处理,以及系统环境变量. 首先, 写个bat, 一句start %1 %2即可. %1和%2分别表示第一个和第二个参数. ...
- IE10(去掉文本框的X)
input[type="text"]::-ms-clear{ display:none;}input[type="text"]::-ms-reveal{ dis ...
- 初涉深度优先搜索--Java学习笔记(二)
版权声明: 本文由Faye_Zuo发布于http://www.cnblogs.com/zuofeiyi/, 本文可以被全部的转载或者部分使用,但请注明出处. 上周学习了数组和链表,有点基础了解以后,这 ...
- 【转】成为Java顶尖程序员 ,看这10本书就够了
“学习的最好途径就是看书“,这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两点好处: 1.能出版出来的书一定是经过反复的思考.雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超 ...
- Github上传代码菜鸟超详细教程
最近需要将课设代码上传到Github上,之前只是用来fork别人的代码. 这篇文章写得是windows下的使用方法. 第一步:创建Github新账户 第二步:新建仓库 第三部:填写名称,简介(可选 ...
- CYQ.Data+EasyUI开发:几个相关的问题CheckBox、Tree、TreeGrid
前言: 话说到新的公司已经呆了三个星期了,从上班的第二天开始就一直在写项目文档和给开发人员培训,以至于我的QQ签名从"我不是来搞培训的“到最后直接换成”我是来搞培训的“. 虽然挂名开发经理, ...