问题标签 [opencascade]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5726 浏览

c++ - 使用 Open Cascade 读取步骤文件

我需要用 C++ 阅读简单的步骤文件(车削零件)。因此我尝试使用 Open Cascade。我已经可以打开我的步骤文件并读取文件中的形状数量。现在我需要获取几何数据(长度、宽度、直径..),但我不知道它是如何工作的,尽管我阅读了所有文档。有没有人已经使用 Open Cascade 并可以帮助我解决我的问题?我会很高兴,非常感谢!

从那时起,这就是我的代码

0 投票
1 回答
187 浏览

c++ - QT 和 OpenCascade 内存不足

我开始在 QT 中使用 OpenCascade 进行编码,发现了这个有趣的基础项目: https ://github.com/eryar/occQt/

我已经编译了程序:

QT += core gui opengl

当我执行它时,我收到以下错误:

TKOpenGl | 类型:性能 | 编号:0 | 严重性:低 | 消息:为 169 个顶点创建原始数组的 VBO 失败。记不清?

我也在项目网站上发布了这个问题,但我不确定那个地方的活动。这就是为什么我问你是否有任何解决方法的想法。

我的测试平台:

  • 配备 8GB 内存的英特尔 i7
  • 视窗 10
  • OpenCascade 6.9.1 vc12-64
  • QT 5.5.1
0 投票
1 回答
341 浏览

c++ - OpenCascade:从 IGES 读取修剪过的表面

我正在尝试使用 OpenCascade 从 IGES 文件中读取修剪后的表面。我可以得到曲面,但是如何从 Entity 144 之类的东西中得到修整曲线。边界曲线?任何帮助都会很棒。我正在寻找在被修剪表面的参数空间中定义修剪曲线的实际几何图形。

0 投票
1 回答
364 浏览

c++ - 不能在带有 vs2017 的 linux 子系统上包含标头

我想在 Windows 10 的 linux 子系统 (ubuntu) 中使用带有 vs2017 的 C++ 程序中的 C++ OpenCascade (OCE) 库。

我将 OCE 编译到 linux 子系统中;我在 Windows 中也有 OCE 编译的二进制文件。

当我尝试在我的代码 ( #include <Adaptor2d_Curve2d.hxx>) 中包含来自 OCE 的标头时,我收到此错误:

additional include directories我使用 $(ProjectDir) 或 $(RemoteRootDir) 路径在我的 vs 项目中添加了 OCE 包含路径。我检查了,路径是正确的。

我创建了一个 linux 控制台应用程序。我的代码:

我已将这些行添加到Additional Include Directories我的项目设置中

那么在 Windows 10 的 linux 子系统中使用 vs2017 在 C++ 代码中添加外部库和头文件的过程是什么?

这是一个具有 Boost 依赖项而不是 OCE 的最小项目

  • 使用 ubuntu linux 子系统,用 vs2017 构建一个 c++ linux 控制台应用程序。
  • Additional Include Directories在项目属性中包含 boost headers 路径

  • #include <any.hpp> (来自 boost 的标题)添加到 main.cpp 文件中

-I 语句是正确的-I "C:\<myPath>\dependencies\boost_1_68_0\boost\",但我仍然有错误

我还应该做什么?

参考:https ://blogs.msdn.microsoft.com/vcblog/2017/02/08/targeting-windows-subsystem-for-linux-from-visual-studio/

0 投票
1 回答
642 浏览

c++ - 使用vs2017的c ++中的OpenCascade链接错误

我是 Open Cascade 的新手。在使用 cmake 构建 occt-7.3.0-vc14-64 且没有错误后,我在包含目录中添加了 inc/,在库目录中添加了 win64/vc14/libd/,然后仅添加了“包含”在 main.cpp 中。但是点击调试按钮后,我得到如下链接错误:

还应该做些什么?谢谢你的帮助。

0 投票
1 回答
939 浏览

c++ - OpenCascade 在步骤文件中生成信息树视图

为了读取我的步骤文件中的所有形状,我已经成功地使用 STEPControl_reader 提取了所有形状。现在我想找到一种方法(OCAF/XDE ?)来提取一个树视图,其中包含另一个形状包含的形状。

任何人都可以提供一些使用 OCAF 或 XDE 在步骤文件中提取这些信息的示例的指针。我很难理解官方文档,因为它缺少示例。

编辑:通过使用 Mayo 项目:您可以使用 XdeDocumentItem::XdeDocumentItem(...) 构造函数并递归地创建节点。

方法rebuildAssemblyTree 是这样的:

0 投票
2 回答
536 浏览

cad - 如何使用 OpenCascade 在 3d 中可视化 .stp 文件?

我已经使用 OpenCascade 库阅读了 .stp 文件,但我无法将其可视化。如何使用 OpenCascade 库来可视化(渲染) .stp 文件。

0 投票
1 回答
128 浏览

c++ - 定义 VTKPolyDataMapper 的中心

我有一个应用程序,它导入一个 STEP 文件并将几何转换为一个 OpenCascade 对象。然后,通过 VTK 查看器可视化该对象。

这是代码(C++,QT):

导入 STEP 文件并将其转换为 OpenCascade 对象

使用 VTK 可视化形状

结果显示在这里:

在此处输入图像描述

还不错,但是,坐标轴很远,如果我放大我们可以看到:

在此处输入图像描述

如果我打印映射器的中心,我会得到这些值:

X: 0

Y: 172.333

Z:0

我想将“Y”设置为cero,但我不知道该怎么做,因为该类的属性“center”受到保护。

0 投票
2 回答
913 浏览

c++ - 如何获得 TopoDS_Face 的质心坐标?

除了 TopoDS_Vertex 之外,我们还可以通过以下方式获取坐标:

我想知道是否有类似的机制来获取 TopoDS_Face 的坐标。

编辑

在@jaba 的建议下,这就是我计算一系列点的质心的方法:

0 投票
0 回答
218 浏览

step - Counting ADVANCED_FACEs in a STEP file

My aim is to count the number of ADVANCED_FACEs entities that define a solid in a STEP file. To do this I chose to use OpenCascade. I read the documentation about selection of instances, however It is quite difficult for me, and I didn't succeed in understanding how to use predefined operators like step214-placed-items, step214-shape-def-reprand so on.

Then I looked in the comments of XSControl_Reader.hxx file, where they write:

#xA;

At the moment, my code looks like the following.

#xA;

The output I obtain is the following:

#xA;

The problem is that, with the file I pass as argument to main, I expect to obtain a number of ADVANCED_FACE entities much greater than 1. What am I doing wrong?