PythonOCC基础使用:建模——倒角倒圆(二维+三维)

参考文献:

https://github.com/LiHonJun/pythonocc-demos/tree/master/examples
倒角倒圆:
倒圆倒角常用在制造业中的零件,通过将物体的棱角换为多边或者圆球形状以减小应力集中。应用CAD对该类零件建模时,便需要在线面交汇处进行修正这些对象,常常考虑使用“倒角”、“倒圆”的功能从而一次性处理对象以简化步骤。“倒角”命令在二维平面中可以用来选中形成角的两条线,形成多边角,三维空间中同理;“倒圆”命令则可以在二维平面中选中形成角的两条线并将该直线角快速修正为圆角,三维空间中则能够形成圆球形角。
在这里插入图片描述
AUTO CAD中圆角的形成
实现方法:
在实现二维平面的“倒圆”功能时,pythonocc提供有ChFi2d_AnaFilletAlgo的方法将所选角进行倒圆处理、同时在三维空间中的模型也能够通过BRepFilletAPI_MakeFillet的方法来实现。
chfi2d允许modify chamfer,在之前的基础上更改数字,然后重新生成,特别符合人的操作过程。
二维倒圆:
在这里插入图片描述
pythonocc 二维平面倒圆

from OCC.Core.gp import gp_Pnt, gp_Pln
from OCC.Core.ChFi2d import ChFi2d_AnaFilletAlgo
from OCC.Core.BRepBuilderAPI import BRepBuilderAPI_MakeEdge
from OCC.Extend.ShapeFactory import make_wire
from OCC.Display.SimpleGui import init_display
display,start_display, add_menu,add_functionto_menu = init_display()
# Defining the points
p1 = gp_Pnt(0, 0, 0)
p2 = gp_Pnt(5, 5, 0)
p3 = gp_Pnt(-5,5, 0)
# Making the edges
ed1 = BRepBuilderAPI_MakeEdge(p3, p2).Edge()
ed2 = BRepBuilderAPI_MakeEdge(p2, p1).Edge()
#Making the 2dFillet
f = ChFi2d_AnaFilletAlgo()
f.Init(ed1, ed2, gp_Pln())
radius = 1.0
f.Perform(radius)
fillet2d = f.Result(ed1, ed2)
# Create and display a wire
w = make_wire([ed1, fillet2d, ed2])
display.DisplayShape(w)
start_display()

三维倒圆:
在这里插入图片描述
pythonocc 三维空间倒圆


import sys
from math import cos, pi
from OCC
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值