void print(cg::visualization::printer_type & p) const { p.corner_stream() << "shortestPath" << cg::visualization::endl; p.corner_stream() << "Double click to clear, right-click to add point." << cg::visualization::endl; p.corner_stream() << "First and second points are start ans finish of the way" << cg::visualization::endl; p.corner_stream() << "To end contour, click close to first point"; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "double-click to clear." << cg::visualization::endl << "press mouse rbutton for add vertex (click to first point to complete contour)" << cg::visualization::endl << "move vertex with rbutton" << cg::visualization::endl << "eps:" << eps << cg::visualization::endl; for (size_t i = 0; i < points_.size(); ++i) { p.global_stream((point_2f)points_[i] + vector_2f(5, 0)) << i; } }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton to add point" << cg::visualization::endl << "points: " << pts_.size() << " convex_hull: " << ch_size_ << cg::visualization::endl << "press 'g', 'q' or 'a' to change algorithm" << cg::visualization::endl; switch (algo_) { case graham : p.corner_stream() << "algorithm: Graham" << cg::visualization::endl; break; case andrew : p.corner_stream() << "algorithm: Andrew" << cg::visualization::endl; break; case quick : p.corner_stream() << "algorithm: Quick hull" << cg::visualization::endl; break; case jarvis : p.corner_stream() << "algorithm: Jarvis" << cg::visualization::endl; break; } }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "double-click to clear." << cg::visualization::endl << "press mouse rbutton for add vertex (click to first point to complete contour)" << cg::visualization::endl << "move vertex with rbutton" << cg::visualization::endl << "yellow contour -- not ccw or convex" << cg::visualization::endl << "green contour -- contains cursor" << cg::visualization::endl << "red contour -- don't contains cursor" << cg::visualization::endl; for (size_t i = 0; i < points_.size(); ++i) { p.global_stream((point_2f)points_[i] + vector_2f(5, 0)) << i; } }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton near segment vertex to move it" << cg::visualization::endl << "if lines are green there is intersection" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton to add point" << cg::visualization::endl << "points: " << pts_.size() << " convex_hull: " << ch_size_ << cg::visualization::endl << "algo: " << type_s << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton near segment vertex to move it" << cg::visualization::endl << "if segment is red segment contains cursor point" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton near triangle vertex to move it" << cg::visualization::endl << "if triangle is green triangle contains cursor point" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const override { p.corner_stream() << "press mouse lbutton with CTRL key near contour vertex to move it" << cg::visualization::endl << "if triangle is green contour contains cursor point" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const override { p.corner_stream() << "eps: " << eps * 10 << cg::visualization::endl << "size: " << chain.size() << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton to add vertex" << cg::visualization::endl << "first two points - start and finish" << cg::visualization::endl << "double-click to clear" << cg::visualization::endl << "press space to start a new contour" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "right click: add point" << cg::visualization::endl; p.corner_stream() << (check_delaunay(answer) ? "OK" : "HE OK") << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton to add vertex" << cg::visualization::endl << "double-click on vertex to remove" << cg::visualization::endl << "double-click anywhere but vertices to clear" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "double-click to clear." << cg::visualization::endl << "press mouse rbutton for add vertex (click to first point to complete contour)" << cg::visualization::endl << "move vertex with rbutton" << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "rigth click: add point" << cg::visualization::endl; p.corner_stream() << (check(trs) ? "Ok" : "Fail") << cg::visualization::endl; }
// print in the corner void print(cg::visualization::printer_type & p) const { p.corner_stream() << "press mouse rbutton to add point" << cg::visualization::endl << "points: " << pts_.size() << cg::visualization::endl; }
void print(cg::visualization::printer_type & p) const { p.corner_stream() << "minkowski sum of two convex contour." << cg::visualization::endl; p.corner_stream() << "Double click to clear, right-click to add point."; }