I need some advices to get what I need.
I want to know which is the best strategy I should follow.
I am developing a CAD system, but for better understanding I will change the example.
Imagine a wall, a window and a door (all of them TopoDS_Shape)
m_wall = BRepAlgoAPI_Cut(m_wall, m_window);
m_wall = BRepAlgoAPI_Cut(m_wall, m_door);
My doubts raise when user changes window or door properties:
-Should I change operation bodies and update something? Of course, It doesn't work if I only replace window or door with a new object.
-Should I repeat all the operations so I need to store original wall? (What if I have a lot of cutting operations?) The easiest but the slowest.
-Should I change door or window geometry exploring their points? The desired one but I cannot figure out how to start with it.
Other possibilities and other suggestions are welcome.