Compare if two Geom_Curves are identical
I have the following situation: suppose we want to build a swept surface from three Geom_Lines - two end sections and a spine curve. Thus at the and we will have something like a rectangular surface. Now, I want to get the boundaries of this new surface, so I run a TopExp_Explorer on this new TopoDS_Face, and extract all the TopoDS_Edges. Obviously there would be 4 edges: the 3 original edge, and a 4th one so that the wire enclosing the face can be closed.
So far, so good, but now comes the problem. I want to add the face to my data structure (I have a separate data structure for other reasons), along with the enclosing edges. So I run through all the bounding edges, and check whether an edge already existed in the database or not.
What should this check function be composed of?
It seems that when you create a new surface from existing curves, the boundary would be composed of new TopoDS_Edges, so I cannot just say:
if(curTopoDS_Edge == dataBaseTopoDS_Edge)
What would be a good comparison? I guess the best way is to somehow compare the underlying geometrical entites, but I couldn't find a nice way to check if two curves are geometrically the same.
Thanks for your help!