Investigated and solved strange behavior and crashes at Extrude and Fillet implemented with Ocaf, both features worked well before, the same algorithms were used.
The improvements added:
- improved the code for detecting shape selection in neutral point/local context,
- found and solved a flaw on the Extrude/Fillet algorithm with Ocaf: the Extrude/Fillet was applied on the selected object located in the data tree, the problem was that when only a face of a shape was selected the face couldn't be found in the data tree (where stored shapes are not decomposed). Solved the problem by creating a hidden Ocaf shape with that face and use that shape as reference for the Extrude,
- fixed the code so that the Extrude and Fillet implemented with Ocaf works properly together with the Cut feature not implemented with Ocaf.
Cleaned the code and uploaded everything on SVN. The functionality (excepting the Cut feature) now supports Undo/Redo and is prepared for parametric modeling. The objects when selected are also selected in the tree view list.
Will continue with preparations to close the 0.0.2 iteration in the following order: make documentation, see if the drawing Circle functionality is finished and if not finish it, implement Cut with Ocaf, implement the functionality that when a shape is selected in the tree view the visual object is selected.