if(print)std::cout<<"Intersection of "<<s<<" "<<segments[s]->GetHandle()<<" "<<segments[s]->getBeg()->GetHandle()<<" "<<segments[s]->getEnd()->GetHandle()<<" and "<<iter->second<<" "<<segments[iter->second]->GetHandle()<<" "<<segments[iter->second]->getBeg()->GetHandle()<<" "<<segments[iter->second]->getEnd()->GetHandle()<<" at ("<<I.second.Coords()[0]<<","<<I.second.Coords()[1]<<","<<I.second.Coords()[2]<<") t1 "<<t1<<" t2 "<<t2<<std::endl;
if(print)std::cout<<"Intersection of "<<s<<" "<<segments[s]->GetHandle()<<" "<<segments[s]->getBeg()->GetHandle()<<" "<<segments[s]->getEnd()->GetHandle()<<" and "<<iter->second<<" "<<segments[iter->second]->GetHandle()<<" "<<segments[iter->second]->getBeg()->GetHandle()<<" "<<segments[iter->second]->getEnd()->GetHandle()<<" at ("<<I.second.Coords()[0]<<","<<I.second.Coords()[1]<<","<<I.second.Coords()[2]<<") "<<std::endl;
if(print)std::cout<<"Intersection of "<<below->second<<" "<<segments[below->second]->GetHandle()<<" "<<segments[below->second]->getBeg()->GetHandle()<<" "<<segments[below->second]->getEnd()->GetHandle()<<" and "<<above->second<<" "<<segments[above->second]->GetHandle()<<" "<<segments[above->second]->getBeg()->GetHandle()<<" "<<segments[above->second]->getEnd()->GetHandle()<<" at ("<<I.second.Coords()[0]<<","<<I.second.Coords()[1]<<","<<I.second.Coords()[2]<<") t1 "<<t1<<" t2 "<<t2<<std::endl;
if(print)std::cout<<"Intersection of "<<below->second<<" "<<segments[below->second]->GetHandle()<<" "<<segments[below->second]->getBeg()->GetHandle()<<" "<<segments[below->second]->getEnd()->GetHandle()<<" and "<<above->second<<" "<<segments[above->second]->GetHandle()<<" "<<segments[above->second]->getBeg()->GetHandle()<<" "<<segments[above->second]->getEnd()->GetHandle()<<" at ("<<I.second.Coords()[0]<<","<<I.second.Coords()[1]<<","<<I.second.Coords()[2]<<") "<<std::endl;