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

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

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

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

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

TopTools_ShapeMapHasher.IsEqual(edge1, edge2)

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

相关推荐
Lvan的前端笔记1 小时前
python:深入理解 Python 的 `__name__ == “__main__“` 与双下划线(dunder)机制
开发语言·python
爱笑的眼睛112 小时前
深入解析Matplotlib Axes API:构建复杂可视化架构的核心
java·人工智能·python·ai
爱埋珊瑚海~~2 小时前
基于MediaCrawler爬取热点视频
大数据·python
工程师丶佛爷2 小时前
从零到一MCP集成:让模型实现从“想法”到“实践”的跃迁
大数据·人工智能·python
2501_921649492 小时前
免费获取股票历史行情与分时K线数据 API
开发语言·后端·python·金融·数据分析
高洁013 小时前
DNN案例一步步构建深层神经网络(二)
人工智能·python·深度学习·算法·机器学习
Insight.3 小时前
背包问题——01背包、完全背包、多重背包、分组背包(Python)
开发语言·python
Lucky高3 小时前
Pandas库实践1_预备知识准备
python·pandas
Salt_07283 小时前
DAY 36 官方文档的阅读
python·算法·机器学习·github
k***92163 小时前
Python 科学计算有哪些提高运算速度的技巧
开发语言·python