如何使用PythonOCC导入参数引用?

问题描述 投票:-1回答:1

出于数据交换比较的原因,我需要从CAD文件中提取几何/参数参考。为此,我在conda环境中使用PythonOCC库。

直到目前,我仍可以绘制提取的文件(在我的情况下为STEP文件),但找不到有关该库的任何其他文档(除了它具有的所有函数API列表之外,但无济于事)我有很多功能,但并不能真正解释它的工作原理)。我的目标是从NURBS /样条线描述中提取参数参考,以捕获曲面的某些精确点(无需数据转换,这就是为什么我不想通过CAD环境的原因)。

有人知道我应该如何探索pythonOCC的哪些功能,或者知道可以提供帮助的任何文档吗?

直到现在我的代码只能显示实体:

 #Reads STEP files, checks them and translates their contents into Open CASCADE models.

from OCC.Core.STEPControl import STEPControl_Reader
step_reader = STEPControl_Reader() 
step_reader.ReadFile(r'C:\Users\jonat\Desktop\aspherique_32spln_10-4tol.STP')
step_reader.TransferRoot()
lens = step_reader.Shape()

#Open display to plot the shape

from OCC.Display.SimpleGui import init_display
display, start_display, add_menu, add_function_to_menu = init_display()

display.DisplayShape(lens, update=True)
start_display()
python cad opencascade
1个回答
0
投票

难以理解NURBS方程。例如,壳可以由几个面组成,每个面可以具有不同的数学表示。因此,使用更高级别的Open CASCADE功能可能是更好的方法。

Open CASCADE具有类BRepExtrema_DistShapeShape。您可以用两个TopoDS_Shape来填充,并通过调用PointOnShape1PointOnShape2获得两个形状上的最接近点。

如果您将曲面几何图形和一个顶点作为参数,则可以得到最接近该顶点的曲面点。另一方面,如果将曲面几何形状和平行于z轴的(可能很长的)边沿进给到给定的x / y元组,则可以检查相交的数量(方法NbSolution)并获得相交坐标。

这是您需要的吗?我已经从C ++代码中给出了名称,但是pythonOCC很可能具有相同的类和方法,它们的名称非常相似...?

© www.soinside.com 2019 - 2024. All rights reserved.