pythonocc_倒角

在这里插入图片描述
在这里插入图片描述

```cpp
from OCC.Core.Addons import text_to_brep, Font_FontAspect_Bold, Font_FA_Regular
from OCC.Core.BRepPrimAPI import BRepPrimAPI_MakePrism
from OCC.Core.gp import gp_Pnt, gp_Vec, gp_Dir, gp_Ax2, gp_Pln, gp_Ax3, gp_Trsf, gp_Ax1
from OCC.Display.backend import load_backend
load_backend('qt-pyqt5')
from OCC.Core.BRepFilletAPI import BRepFilletAPI_MakeFillet
from OCC.Core.BRepPrimAPI import BRepPrimAPI_MakeBox, BRepPrimAPI_MakeCylinder
from OCC.Display.SimpleGui import init_display
from OCC.Core.gp import gp_Ax2, gp_Pnt, gp_Dir, gp_Pnt2d
from OCC.Extend.TopologyUtils import TopologyExplorer
display, start_display, add_menu, add_function_to_menu = init_display()
from OCC.Core.TopoDS import TopoDS_Compound, TopoDS_Builder, topods, TopoDS_Face, TopoDS_Shape
from OCC.Core.BRepAlgoAPI import BRepAlgoAPI_Cut
from OCC.Core.TopLoc import TopLoc_Location
from OCC.Display.OCCViewer import rgb_color
from OCC.Extend.TopologyUtils import TopologyExplorer
from OCC.Core.TopAbs import TopAbs_EDGE, TopAbs_FACE
from OCC.Core.TopExp import TopExp_Explorer
from OCC.Core.TopoDS import topods, TopoDS_Compound, TopoDS_Face
from OCC.Core.BRepPrimAPI import BRepPrimAPI_MakeBox#函数:盒子
def create_box():myBody= BRepPrimAPI_MakeBox(gp_Pnt(-400, 0, 0), 200, 230, 180).Shape()return myBody
#函数倒角
def create_daojiao2(myBody,daojiao_angle):mkFillet = BRepFilletAPI_MakeFillet(myBody)anEdgeExplorer = TopExp_Explorer(myBody, TopAbs_EDGE)# 进行探索循环while anEdgeExplorer.More():anEdge = topods.Edge(anEdgeExplorer.Current())   # 获得当前边mkFillet.Add(daojiao_angle, anEdge)# 倒角当前边anEdgeExplorer.Next()# 移动下一个边return mkFillet#函数倒角
def create_daojiao2(myBody,daojiao_angle):mkFillet= BRepFilletAPI_MakeFillet(myBody)# 探索实体中的边edgefor anEdge in TopologyExplorer(myBody).edges():mkFillet.Add(daojiao_angle, anEdge)return mkFillet
#倒角不能太大了。
daojiao_angle=50
myBody=create_box()
# mkFillet=create_daojiao(myBody,daojiao_angle)
mkFillet=create_daojiao2(myBody,daojiao_angle)
display.DisplayShape(mkFillet.Shape(), update=True, color=rgb_color(0, 1, 0))  # l
display.FitAll()
start_display()


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部