问题标签 [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 投票
1 回答
98 浏览

c++ - 这是一个函数声明吗?

当我从 OpenCV 或 OpenCascade 阅读一些代码时,我经常会在 C++ 中看到这种类型的声明+实现

这可能是一个愚蠢的问题,不是吗?因为我不知道这是什么类型的声明。它看起来确实像一个函数,但没有返回类型。如果是构造函数,为什么参数列表中没有任何类型的变量?

谢谢

0 投票
0 回答
2832 浏览

c++ - 如何使用 OpenCascade 导入 STEP 文件并使用正确颜色的 coin3d 显示?

我正在尝试使用 OpenCascade 导入 STEP 文件,并使用 Open Inventor 兼容的 coin3d 库将它们显示在屏幕上。不幸的是,我总是以颜色工作或几何形状正确而结束,正确定位具有正确颜色的零件似乎不起作用。

我还尝试制作一个复合形状,以防有超过 1 个形状,正如我在 OpenCascade 论坛中找到的那样,但没有区别。

一般来说,在网上找到的简单 STEP 文件导入很好(我假设它们只有一个部分),但从实体作品导出的更复杂的多部分对象要么具有正确的几何形状,要么具有正确的颜色,但绝不会两者兼而有之。

有问题的部分在这里:

如果我使用 IsFree(aLabel) 所有几何图形都是正确的,但几乎没有导入颜色。

如果我否定它,通过使用 if (!Assembly->IsFree(aLabel) ) ... 导入的几何图形到处都是,旋转,变换,但颜色正确。

如果我完全删除 if ,两种情况都处于活动状态,它会导入所有内容,一次是正确的地理,没有颜色,第二次是在某处翻译和旋转,颜色正确。

我的想法是,平移/旋转的彩色对象可能只有平移/旋转信息,在它们被转换的地方被忽略,但是当我输出形状 Transformation() 信息时,位置和旋转都是 0。

下面是其余代码,实际上将导入的形状转换为多边形对象以进行显示:

我究竟做错了什么?为什么物体是双倍的?

0 投票
1 回答
975 浏览

python - 从 STEP 文件解析 BReps

我有一个从 OnShape 导出的 STEP 文件。

在我的 OnShape 文档中,我有一个组件,其中包含另一个组件的一个零件和两个实例(其中还有两个其他零件)。

当我在python-occ中打开这个文件时,我唯一得到的是一个似乎包含每个面孔而不是具有某种层次结构的形状。

有没有办法探索这种层次结构?有一个零件清单以及它们在装配体中的使用位置。

0 投票
3 回答
502 浏览

c++ - QObject::connect: occQt.cpp:324 中没有这样的插槽 QWidget::makeyourbox()

我是新来的。

用户界面运行良好,但是当我单击“okbtn”时...

当我单击“取消”时,它会运行。

感谢您的任何回复,Eason

代码:

当我运行 pWidget 时,单击 cancelbtn,ui 关闭。点击okbtn,什么都不做。。

0 投票
1 回答
861 浏览

android - Opencascade Android Studio

我正在尝试借助以下 url 在 Opencascade 上构建一个 Android 应用程序。

http://www.opencascade.com/doc/occt-7.0.0/overview/html/samples_java_android_occt.html

一切正常,除了我陷入以下错误:

我无法添加gnustl_shared库和其他.so files. 请建议步骤,因为上面的链接没有提供有关这些的详细信息。

任何帮助都会有很大帮助。谢谢。

0 投票
1 回答
665 浏览

c++ - 斜齿轮结构:带旋转的扫掠轮廓(扭曲)

目标是生产所谓的螺旋齿轮

如下图所示:

在此处输入图像描述

我已经完成了配置文件的生成(TopoDS_Wire--> TopoDS_Faceusing BRepBuilderAPI_MakeFace)——所描绘的齿轮顶部的脸。

我认为任务是沿着穿过中间钻孔的齿轮轴线线性扫过面/线,同时将面旋转一个定义螺旋角的恒定角度,直到达到所需的齿轮高度......

我想过使用GeomFill_Pipeor BRepOffsetAPI_MakePipeShell,但我不知道如何使用它......

您能否看一下并分享任何可能对我有帮助或至少让我朝着正确的方向进行调查的想法/代码片段?

非常感谢任何愿意帮助我的人......

0 投票
0 回答
199 浏览

android - 为 Android 运行 Open Cascade 示例 jniviewer 时出错

在依赖以下线程并在底部附加源代码后,我尝试使用 Android Studio 运行开放级联的示例“jniviewer”。

Opencascade Android Studio

构建项目后,我无法在 Nexus S 模拟器上运行它(也尝试过不同的模拟器),因为我收到以下错误:

启动应用程序

当前选择的变体“arm7-debug”使用拆分 APK,但没有 1 个拆分 APK 与密度为“240”且 ABI 为“x86”的当前设备兼容。安装 APK 时出错

我是 gradle/ndk 的新手,任何帮助将不胜感激!

谢谢,乔尔

0 投票
1 回答
1637 浏览

c++ - 如何在 OpenCASCADE 中更改 TopoDS_Shape 的基础几何图形

我正在尝试更改 OpenCASCADE 中现有 TopoDS_Shape 的几何形状。一个可能的应用是在不需要重建整个身体的情况下修改身体的边缘(例如,改变圆柱体的一个帽的半径,移动 Bspline 曲线/曲面中的控制点)。

  • 在 OpenCASCADE 中是否有执行此操作的标准方法?
  • 是否可以在不创建新形状的情况下更新几何?

我已经尝试使用BRepAdaptor_HCurve,但这并没有真正帮助。

circ通过书写和创建的原始和修改几何another_circ 原始几何和修改几何

0 投票
1 回答
1611 浏览

c++ - 具有 OPEN CASCADE 的曲面相交

我对两个表面之间的交点有疑问。第一个被修剪,而第二个未被修剪。

我使用BRepAlgoAPI_Section来使两个表面相交并获得相交边缘(在我的情况下只有一个):

这是我的代码,在这里我做了交集:

在这里,我在截面边缘之间进行迭代。对于每个边缘,我创建一个TopoDS_Edge放在屏幕上。

如果我分别检查屏幕上的显示,anAisEdgeanAisEdge2会得到两个不同的结果。我不明白为什么。在顶部的两个图像中,第一个显示,而在第二个显示。

在此处输入图像描述

0 投票
0 回答
759 浏览

c++ - 使用 OpenCASCADE 从多边形网格创建实体模型

我有一个多边形网格,并且我已经完成了所有分析以确定我需要哪些表面才能从中构建 3D 模型。

如何使用 Open CASCADE 使用诸如平面位置或 b 样条曲面形状等信息构建模型?

我想将模型导出为 STEP 文件,因此这不是可视化任务。

我试图查看文档,但并不总是清楚一个函数是否按照我的想法做。