opencascade专题

opencascade AIS_InteractiveContext源码学习5 immediate mode rendering 即时模式渲染

AIS_InteractiveContext 前言 交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。 每个可选择的对象必须指定负责整体选择对象的选择模式(全局选

opencascade 判断两个TopoDS-Shape 是否相同

我们使用opencascade提取实体时,经常会出现实体重复,例如从正方体实体中提取Edge,我们会发现能提取出24个Edge,但正方体只有12条边,这是因为每条边有两个面,进行了重复提取。         如果我们想去掉重复的边,可以通过判断两条边是否相等实现(实际上不需要通过此方法),但是通过 == 运算符进行判断通常是无效的,即两条重合的边在运算符 == 下会被判定为否,那

opencascade AIS_InteractiveContext源码学习2

AIS_InteractiveContext 前言 交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。 每个可选择的对象必须指定负责整体选择对象的选择模式(全局选

opencascade AIS_InteractiveContext源码学习3 highlighting management 对象高亮管理

AIS_InteractiveContext 前言 交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。 每个可选择的对象必须指定负责整体选择对象的选择模式(全局选

opencascade AIS_InteractiveContext源码学习4 object local transformation management

AIS_InteractiveContext 前言 交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行修改。如果交互对象尚未加载到交互上下文中,您才能直接调用交互对象的方法。 每个可选择的对象必须指定负责整体选择对象的选择模式(全局选

Opencascade实体转VTK对象渲染测试

前面编译了基于QT5.12.7+VTK8.2的库,本次就根据这个VTK库实现VTK嵌入QT并将Opencascade实体对象在VTK中进行渲染。     一、vtk嵌入qt 通过查看VTK的开发文档发现,vtk嵌入qt可以通过将QWidget提升为QVTKOpenGLNativeWidget实现,在qtdesigner中事例如下: 本人定义了一个qtvtk窗口类,在构造函数中,

OpenCASCADE开发指南<十四>:OCCT建模类之BRepPrimAPI_MakePipe创建管道

1、OpenCasCade拓扑几何   在Open CASCADE Technology (OCCT) 中,除了基本三维几何体建模类BRepBuilderAPI外,还提供了复杂模型的建模类,常用的有如下几种,他们可以单独使用或相互组合,通过OCCT提供的融合函数进行组装。例如:BRepOffsetAPI_ThruSections、BRepOffsetAPI_MakeEvolved、BRepPri

OpenCASCADE入门——7.8.0版本通过源码自编译,生成解决方案,用draw进行简单尝试

目录 引出OpenCASCADE源码自编译首先安装cmake 和 vs然后安装两个重要的库TCL/TK和FreeTypeTCL/TK的安装nmake编译【失败的尝试】activestate上下载安装包【失败】官网论坛查,也失败 编译的再次尝试【应该是64位】 FreeType安装进行编译 用cmake进行编译最终生成解决方案设置启动项,运行 总结其他自定义信号和槽1.自定义信号2.自定

OpenCASCADE Draw模块TKDraw项目问题修改

1.问题 在调试Draw模块代码时,出现一个小问题,导致无法正常运行 如下: 2.代码跟踪 通过代码跟踪发现时一个数组越界问题,在此处添加了判断处理,程序可以正常调试

OpenCASCADE(OCC)读入含中文汉字标签的内容后乱码的解决方法

笔者在导入一个由SolidWorks生成的step文件的时候,节点名称是中文,于是乎生成的节点树的名称都是乱码了,经过多次的排查调研,最后的解决办法如下: 1.老版本的occ库,是无法兼容读入中文编码的step文件的,需要替换更新较新的版本,我使用了【opencascade-7.6.0】就可以 2.使用较新版本的occ库后,需要在读入step文件设置编码格式,下图红框所示: 最后,通过下

Opencascade 可视化--创建视图分析(二)

一、创建视图 创建一个Opencascade视图,过程如下: 代码逻辑如下: Handle(Aspect_DisplayConnection) aDisplayConnection = new Aspect_DisplayConnection(); if (GetGraphicDriver().IsNull()) { GetGraphicDriver() = new OpenGl_

Opencascade基础教程(11):设置显示模式

1、设置显示模式 1.1 增加按钮添加消息响应函数 //线框void COCCDemoDoc::OnButtonWireframemode(){//关闭边界框const Handle(Prs3d_Drawer)& aDrawer = m_AISContext->DefaultDrawer();aDrawer->SetFaceBoundaryDraw(false);//线框m_AISCo

OpenCASCADE+Qt创建建模平台

1、建模平台效果 2、三维控件OCCWidget   将V3d_View视图与控件句柄绑定即可实现3d视图嵌入Qt中,为了方便也可以基于QOpenGLWidget控件进行封装,方便嵌入各种窗体使用并自由缩放。 #ifndef OCCTWIDGET_H#define OCCTWIDGET_H#include <QWidget>#include <QMouseEvent>#inclu

OpenCascade源码剖析:Standard_Transient根类

Standard_Transient是OCCT继承体系最顶层的根类,Transient在编程中具有一定的语义,与Persistent相对应,通常用于描述数据的持久性或持久性存储。 Transient,意味着数据是临时的或瞬态的,它们不会被持久化保存,意味着对象只存在于内存中,一旦程序终止或对象生命周期结束时,它们就会消失。Persistent,意味着数据是持久化的,它们被存储在某种持久化存储介质

OpenCASCADE软件包

当你熟悉OpenCASCADE软件在Windows,你应该试试在Debian的Linux操作系统,因为这是一个开源的样OpenCASCADE软件。论文的重点是如何建立OpenCASCADE软件包。 OpenCASCADE软件、Linux、Debian、建筑 1. Introduction 因为OpenCASCADE是用C++写的几何造型算法库,有良好的跨平台性,所以决定在Linu

OpenCascade——BRepPrimAPI图元创建接口

OpenCascade BRepPrimAPI包提供了创建以下图元(primitive)的 API: 盒;锥体;柱体;棱镜。 可以创建部分实体,例如一定经度范围内的球体。在实际模型中,图元可用于轻松创建特定的子部件。 BRepPrimAPI也提供了扫掠方式(Sweep)建模的API,支持轮廓沿线性路径或旋转方式创建实体模型。 扫掠将轮廓沿指定路径移动从而获得几何实体。轮廓可以是任何拓扑

OpenCascade VTK STEP/IGES文件读取显示

OpenCascade & VTK STEP/IGES文件读取显示,OpenCascade读取转成STL,VTK显示STL。 Download - Open CASCADE Technology https://dev.opencascade.org/release 下载exe并安装,可以把source下载下来学习,官网速度慢,可到网盘下载 链接:https://pan.baidu.com/

OpenCasCade官方开发文档翻译(9)–IGES 转换器

介绍 IGES 接口读取 IGES 文件并将其转换为 Open CASCADE Technology 模型。该接口能够翻译一个实体、一组实体或整个文件。在开始翻译之前,您可以设置一系列参数来管理翻译过程。如果您愿意,您还可以在翻译前检查文件的一致性。IGES 接口还将 OCCT 模型转换为 IGES 文件。 借助 XDE 工具IGESCAFControl_Reader和IGESCAFContr

Opencascade+Qt+C++三维图像建模窗体点线面拾取igs/iges/stp/step

程序示例精选 Opencascade+Qt+C++三维图像建模窗体点线面拾取igs/iges/stp/step 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《Opencascade+Qt+C++三维图像建模窗体点线面拾取igs/iges/stp/step》编写代码,代码整洁,规则,易读。 学习与应用推荐首选。 运行结果

OpenCASCADE MFC例子

OpenCASCADE MFC例子 说明 一直对OpenCASCADE一直都比较感兴趣,这个例子是我参考这位大神C++幼儿园中班小朋友的专栏做出来的OpenCASCADE_C++幼儿园中班小朋友的博客-CSDN博客 不过我用的是vcpkg的方式安装OpenCASCADE,这个需要注意一下,可能需要自己配置目录,分享一下程序。 点击导航方块实现视图切换的功能参考这个论坛的解答做出来的 How

用Opencascade生成和CATIA一样的B样条曲线

目前采用OCC来实现造型,需要保证成形的结果和CATIA的结果一致。因此,首先要分析CATIA中形成的曲线具有什么样的参数,才能用OCC来做出一样的参数曲线来。这一次先用B样条来测试。         1. 首先分析IGES的格式,查阅IGES的标准规范。   中国国家标准有对应的原始英文IGES标准的翻译版本:《GBT 14213-2008初始图形交换规范》或者英文好的直接看原版《Init

win10安装OpenCasCade并绘图测试

OpenCasCade是一个开源的三维建模引擎,可以开发CAD、CAE、CAM对应的应用程序。下面介绍在win10系统上安装OpenCasCade V7.5.0软件。OpenCasCade分为源码版本,以.tar.gz结尾,而安装版本是以.exe结尾。本文选择.exe版本,即安装后,直接可以使用。 1 、下载OpenCasCade v7.5.0     官网地址: https://de

学习OpenCascade的一点体会

转载:http://blog.csdn.net/astrosky/article/details/4240467 OpenCascade 是一个开源的 3D 造型系统,类似于 ACIS ,但功能相当 ACIS 则要弱很多了。 OpenCascade 包括了曲面造型和实体造型功能、显示功能、数据交换功能等。 OpenCascade 是提供了比较强的实体造型功能,支持非规则实体。 其实

Topology and Geometry in OpenCascade-Edge

为什么80%的码农都做不了架构师?>>>    Topology and Geometry in OpenCascade-Edge eryar@163.com 摘要Abstract:本文简要介绍了几何造型中的边界表示法(BRep),并结合程序说明OpenCascade中的边界表示的具体实现,即拓朴与几何的联系。对具有几何信息的拓朴结构顶点(vertex)、边(edge)、面(face)进行了

OpenCascade 入门须知API

Tutorial简述 gp_XXXStandard_XXXGeom_XXXGC_MakeXXXTopoDS_XXXBRepBuilderAPI_XXXBRepPrimAPI_XXXBRepFilletAPI_XXXTopExp_ExplorerTopAbs_ShapeEnumBRepAlgoAPI_XXXBRep_Tool与 Standard_TransientTopTo

OpenCASCADE点向圆柱面投影

OpenCASCADE点向圆柱面投影 eryar@163.com   OpenCASCADE的类Extrema_ExtPElS提供了点到基本曲面的投影计算功能,距离可能是最大值或是最小值。如下图所示的点到圆柱的投影会有两个投影点P1和P2,则点到圆柱的距离的最小值是P到P1的距离,最大值是P到P2的距离。本文主要是对此类中点到圆柱的投影算法进行分析。   类Extrema_ExtPElS类中计算