opencascade 判断两个TopoDS-Shape 是否相同

我们使用opencascade提取实体时,经常会出现实体重复,例如从正方体实体中提取Edge,我们会发现能提取出24个Edge,但正方体只有12条边,这是因为每条边有两个面,进行了重复提取。

如果我们想去掉重复的边,可以通过判断两条边是否相等实现(实际上不需要通过此方法),但是通过 == 运算符进行判断通常是无效的,即两条重合的边在运算符 == 下会被判定为否,那么我们想判断两条边是否相等如何实现?

可通过 TopTools_ShapeMapHasher 实现,代码如下(C++代码类似):

python 复制代码
from OCC.Core.TopTools import TopTools_ShapeMapHasher

TopTools_ShapeMapHasher.IsEqual(edge1, edge2)

以上代码即可判断两条边是否相等,其它形状类似。

相关推荐
testtraveler2 分钟前
[Fix] ImportError: libtorch_cpu.so: undefined symbol: iJIT_NotifyEvent
pytorch·python·bug
lang201509289 分钟前
Kafka延迟操作机制深度解析
分布式·python·kafka
测试老哥1 小时前
软件测试:测试用例的设计
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
koo3642 小时前
pytorch环境配置
人工智能·pytorch·python
程序员杰哥5 小时前
Python自动化测试之线上流量回放:录制、打标、压测与平台选择
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·压力测试
吴佳浩5 小时前
LangChain v1 重大更新讲解⚠⚠⚠
python·langchain·agent
顾安r7 小时前
11.20 开源APP
服务器·前端·javascript·python·css3
萧鼎8 小时前
Python PyTesseract OCR :从基础到项目实战
开发语言·python·ocr
没有bug.的程序员9 小时前
Java 字节码:看懂 JVM 的“机器语言“
java·jvm·python·spring·微服务
下午见。11 小时前
Python基础入门:用Anaconda搭建环境的启蒙之旅
python