OpenCascade HLR for Pipe Model

eryar@163.com

摘要Abstract:在工厂辅助设计(Plant Design)或船舶辅助设计(Ship Design)等CAD设计软件中建完模型后都会出安装图或制作图,这也是这类辅助设计软件的最终的一个输出,还有再就是输出材料数据用来对物资进行管理。OpenCascade提供的Hidden Line Removal算法可以对模型进行隐藏线消除,此功能可用来生成制作图和安装图。本文通过实例演示了HLR算法的效果。

关键字Key Words:OpenCascade, HLR, Hidden Line Removal,Pipe Model, Plant Design CAD, Ship Design CAD,

一、引言 Introduction

OpenCascade的造型算法中有HLR(Hidden Line Removal)可用来去除在某个方向上投影生成的隐藏的线。这个功能实现了工业设计CAD中生成安装图或制作图时需要去掉隐藏线的需求。对HLR算法感兴趣的读者可以结合OpenCascade的源程序来对其实现进行研究。

在工厂设计系统(PDMS)或造船生产设计系统(Marine Design)中都要生成安装图或零件制作图,这些图纸都是根据模型自动生成的。生成之后需要消隐和标注,其中标注的内容有管路号、管零件号、尺寸、标高等等。将三维模型沿一个方向投影后去除隐藏线的算法可用来生成二维的安装图或零件制作图纸。

下面通过具体实例来演示OpenCascade中的HLR算法。

二、程序演示 Program Demo

在工厂设计和船舶设计系统中都有对管路的建模和出图,下面将从ModelDataExchange中导出的管路模型在OpenCascade中进行HLR看看从三维投影到二维的效果。

Figure 2.1 HLR with Hidden Line in Blue

Figure 2.2 HLR for Valves

图2.2中的蓝色部分的线是被挡住的线,可以去除。

Figure 2.3 Top Projection HLR

Figure 2.4 Top Projection without Hidden Line

Figure 2.5 Top Projection in Single Line

Figure 2.6 Projection in arbitrary direction

Figure 2.7 Projection in arbitrary direction

上面的程序演示中左边的3D视口中显示的为管路的三维模型,2D视口以二维数据显示了投影后得到的图形。转换为二维图形后,数据可以转换到常见的二维图纸格式来保存,如保存为DXF、DWG等格式。

三、结论 Conclusion

OpenCascade的HLR算法可将三维模型转换为二维图形,这个功能可用来自动生成CAD软件的零件制作图和安装图。从上图所示的效果来看,消隐效果还不错,速度还比较快。就是单线消隐的不是很满意,如果要对管子对进单线显示,还需要再做处理。

可以看出OpenCascade的功能还是很强大,可以用OpenCascade来造型、建模、出图,基本可以用来开发一个CAD的软件。

PDF Version: HLR for Pipe Model

OpenCascade HLR for Pipe Model的更多相关文章

  1. OpenCASCADE Hidden Line Removal

    OpenCASCADE Hidden Line Removal eryar@163.com Abstract. To provide the precision required in industr ...

  2. OpenCASCADE AIS Manipulator

    OpenCASCADE AIS Manipulator eryar@163.com Abstract. OpenCASCADE7.1.0 introduces new built-in interac ...

  3. Tcl Tk Introduction

    Tcl Tk Introduction eryar@163.com 摘要Abstract:Tcl/Tck脚本可以很容易实现用户自定义的命令,方便的创建图形化的用户界面GUI,所以Tcl和Tk的应用领域 ...

  4. 使用Angular CLI从蓝本生成代码

    第一篇文章是: "使用angular cli生成angular5项目" : http://www.cnblogs.com/cgzl/p/8594571.html 这篇文章主要是讲生 ...

  5. TCP拥塞控制机制

     研究TCP的拥塞机制,不仅仅是想了解TCP如何的精巧,更多的是领悟其设计思想,即在一般情况下,我们该怎样处理问题.   一.拥塞的发生与其不可避免    拥塞发生的主要原因:在于网络能够提供的资源不 ...

  6. Spring Boot笔记一

    Spring Boot 入门 Spring Boot 简介 > 简化Spring应用开发的一个框架:> 整个Spring技术栈的一个大整合:> J2EE开发的一站式解决方案: 微服务 ...

  7. OpenCascade Ray Tracing Rendering

    OpenCascade Ray Tracing Rendering eryar@163.com 摘要Abstract:OpenCascade6.7.0中引入了光线跟踪算法的实现.使用光线跟踪算法可实现 ...

  8. OpenCASCADE Data Exchange - 3D PDF

    OpenCASCADE Data Exchange - 3D PDF eryar@163.com Abstract. Today most 3D engineering model data are ...

  9. OpenCASCADE Ring Type Spring Modeling

    OpenCASCADE Ring Type Spring Modeling eryar@163.com Abstract. The general method to directly create ...

随机推荐

  1. IntelliJ IDEA 发布最新版本13.0.1

    难闻转自:慧都控件网 值得高兴的消息,IntelliJ IDEA v13.0.1目前已经发布,相对于IntelliJ IDEA v13而言,此次更新内容,是略微改进和提高了性能,如代码输入变化,及完善 ...

  2. iOS开发之AppIcon及LaunchScreen设置

    一.AppIcon设置 具体设置步骤如下图: 二.LaunchScreen设置与停留时间设置 具体设置步骤如下图: 通过程序可以增加背景的停留时间:

  3. oracle创建视图

    create or replace view view_fwaqjcjl as select T_FWAQJCJL.FWAQJCJL_ID,T_FWAQJCJL.ZCBM,T_FWAQJCJL.FWB ...

  4. Android中的TabHost

    TabHost是整个Tab的容器,包含TabWidget和FrameLayout两个部分,TabWidget是每个Tab的表情,FrameLayout是Tab内容. 实现方法:继承TabActivit ...

  5. 移动端web开发 问题

    1.APP 返回按钮 <a href='#' onclick='javascript:history.back(-1);'></a> 返回有问题需要使用 href='javas ...

  6. 读bootstrap2.3.2有感2

    排版: Bootstrap定义的全局 font-size 是 14px,line-height 是 20px.这些样式应用到了 <body> 和所有的段落上.另外,对 <p> ...

  7. 在Windows用Rebar来构建,编译,测试,发布Erlang项目

    rebar是一个遵循 Erlang/OTP 原则的 Erlang 项目构建工具,使用它可以减少构建标准 Erlang/OTP 项目架构配置的工作量,并且可以很容易的编译.测试.发布 Erlang 应用 ...

  8. Eclipse下Tomcat设置

    1,Eclipse建立Tomcat服务 1.1 新建Server 首先这里是指,jee版的Eclipse.Eclipse是没有像MyEclipse那样集成Tomcat的,需要我们自己设置. New - ...

  9. Code::Blocks配置GTK+2和GTK+3

    Code::Blocks配置GTK+2和GTK+3 作者 He YiJun – storysnail<at>gmail.com 团队 ls 版权 转载请保留本声明! 本文档包含的原创代码根 ...

  10. jQuery+ASP.NET MVC基于CORS实现带cookie的跨域ajax请求

    这是今天遇到的一个实际问题,在这篇随笔中记录一下解决方法. ASP.NET Web API提供了CORS支持,但ASP.NET MVC默认不支持,需要自己动手实现.可以写一个用于实现CORS的Acti ...