小编San*_*oss的帖子

Pythonocc/Opencascade | 沿着直线通过点创建管道,轮廓不会改变正常

我的最终目标如下:

我有一个巨大的点数据集,表示一个部件将如何逐层3D打印.我需要通过这些点创建一条直线并沿着这条直线挤出一个圆(所以重建部件,因为它将在以后打印).

我最初尝试使用样条曲线,但是这会尝试创建一条平滑线并且根本不遵循这些点.我尝试更改minDeg和maxDeg选项,但这仍然没有足够的帮助来创建我需要的实际曲线.

查看样条曲线的结果

在这里看到实际路径(上面的样条是填充部分之一)

所以我一次尝试在两个点之间创建一个样条线,然后在创建一条线时将它们全部加在一起.这看起来很有希望,因为现在我确实得到了实际的尖角和线条通过精确点.但是,现在当我尝试沿着它挤出时,挤出型材的法线不会随着钢丝的角度而变化.

这是我尝试的最后一件事情

我花了最近4天的时间来解决这个问题,尝试了很多论坛和问题,但感觉完全迷失在pythonocc(opencascade)的世界里.

我的代码如下:

from __future__ import print_function

from OCC.gp import gp_Pnt, gp_Ax2, gp_Dir, gp_Circ
from OCC.GeomAPI import GeomAPI_PointsToBSpline
from OCC.TColgp import TColgp_Array1OfPnt
from OCC.BRepBuilderAPI import BRepBuilderAPI_MakeEdge,         
BRepBuilderAPI_MakeWire, BRepBuilderAPI_MakeFace
from OCC.BRepOffsetAPI import BRepOffsetAPI_MakePipe

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

def pipe():
# the bspline path, must be a wire
# This will later be in a for loop but this is merely to validate the method         
using three different points.

array …
Run Code Online (Sandbox Code Playgroud)

python cad opencascade

12
推荐指数
1
解决办法
937
查看次数

标签 统计

cad ×1

opencascade ×1

python ×1