ComponentTree::~ComponentTree(){
}
+
+void ComponentTree::makeUnoriented(){
+ removeOriented(&_root);
+}
+
+void ComponentTree::removeOriented(Node* n){
+ for (vector<ComponentTree::Node*>::iterator c = n->_children.begin();
+ c != n->_children.end(); /*empty*/){
+ removeOriented(*c);
+ if ((*c)->_children.size() == 0 && ((*c)->_comp.i2 == 0 || (*c)->_comp.sign == 0)){
+ delete *c;
+ n->_children.erase(c);
+ }else{
+ ++c;
+ }
+ }
+}