BOPAlgo_AlertTooSmallEdge and wrong result shape in OCC 7.2.0

Hello, I am having following problem with using cut Boolean operation in open cascade 7.2: a warning "Some edges are too small and have no valid range". It is a warning which didn't happen in open cascade 7.1. The result is a bad cut from 2 shapes. Is there any way to fix this? The 3d model comes from an external source and I am unsure what to do with it.

Robert W.'s picture

I have measured the length of the edges, and all of them have a length of 3.0641942 (m). Does not seem too small to me. Does anyone know which criteria are here applied?

Robert W.'s picture

Here is my example so you can get better understanding of what i am trying to accomplish here. In Test Harness i am doing following:

restore D:\\post\\first.brep first
restore D:\\post\\second.brep second
bop first second
bopcut result
vdisplay result
vfit

​In the attachment you can also see the resulting 3D Model. The long part thats standing out should be "cut out" from the model and the verts in red circles are the parts of the edge the algorithm is complaining about.

I should also mention that this behavior did not happen in OpenCascade 7.1, so i am thinking it may be some sort of regression.

Any ideas on whats going wrong here? The 3D Models are supplied from outside so i can only change them in runtime (if needed).

Koichiro Hayashi's picture

checkshape first
fixshape first2 first
checkshape first2
bop first2 second
bopcut result
checkshape result

Robert W.'s picture

Hello Koichiro Hayashi!

Thank you for your response, this solution indeed helps in the harness tool.

I dont want to be rude or anything, but i was hoping for some explanation as to why does this problem occur, so i can prevent it from happening.

I am creating the 3D Models from third party sources (IFC Files) and i dont want to exclude the possibility that maybe im doing something wrong while creating these models.

Nevertheless thank you very much for help, i will reconsider building these checks into my flow, but first i will have to measure the impact, performace and regression.