Surfaces or CAD model creases!

Dear OCC supervisors and users,

I want to detect and show creases/knuckles in my CAD model. Is there any functionality in OpenCASCADE to deal with? if yes how?

Looking forward your response

Thank you in advance


jelle's picture

Define creases. I'd suggest use TopExplorer to iterate through the edges of your model, find its incident faces ( TopExplorer also handles that ) and than you can compare the angle between the faces.

Game Milky's picture

Dear Jelle!

The creases is line or ridge produced by two surfaces having c0 continuty.

It is good comment, as you said to explore through face to edge and to find normal to edge and then to find the angle between them. And decide up on the angle.
But i have two questions!

1. How i could know neighbor faces in the model?
2. How to determine normal at edge

Both in openCascade environment! That is my difficulty!

Do you have any comment, and or have any sample code!



jelle's picture

The important classes to look into are:

1) TopExplorer ( topology traversal )
2) GeomLProp_SLProps ( get the u,v vectors, curvature, and the normal )
3) Use BRep_Tool_Surface to get the underlying surface from your TopoDS_Face ( this is the argument for GeomLProp_SLProps )

That's about it really, I think it makes for an interesting and fun 1st dive into the warm bath that is OCC