The class Kinetic::Qt_widget_2<Simulator> implements a graphical interface for 2D kinetic data structures.
#include <CGAL/Kinetic/IO/Qt_widget_2.h>
| |
default constructor.
|
#include <CGAL/basic.h> #include <CGAL/Kinetic/Exact_simulation_traits.h> #include <CGAL/Kinetic/Delaunay_triangulation_2.h> #include <CGAL/Kinetic/Delaunay_triangulation_vertex_base_2.h> #include <CGAL/Kinetic/Delaunay_triangulation_recent_edges_visitor_2.h> #include <CGAL/Kinetic/Enclosing_box_2.h> #include <CGAL/Kinetic/IO/Qt_moving_points_2.h> #include <CGAL/Kinetic/IO/Qt_triangulation_2.h> #include <CGAL/Kinetic/IO/Qt_widget_2.h> #include <CGAL/Kinetic/Insert_event.h> int main(int argc, char *argv[]) { typedef CGAL::Kinetic::Exact_simulation_traits Traits; typedef CGAL::Triangulation_data_structure_2< CGAL::Kinetic::Delaunay_triangulation_vertex_base_2<Traits::Instantaneous_kernel>, CGAL::Kinetic::Delaunay_triangulation_face_base_2<Traits> > TDS; typedef CGAL::Delaunay_triangulation_2<Traits::Instantaneous_kernel, TDS > Del; // Color edges based on how recently they were created typedef CGAL::Kinetic::Delaunay_triangulation_recent_edges_visitor_2<Del> Visitor; typedef CGAL::Kinetic::Delaunay_triangulation_2<Traits, Visitor, Del> KDel; typedef CGAL::Kinetic::Qt_widget_2<Traits::Simulator> Qt_gui; typedef CGAL::Kinetic::Qt_moving_points_2<Traits, Qt_gui> Qt_mps; typedef CGAL::Kinetic::Qt_triangulation_2<KDel, Traits::Instantaneous_kernel, Qt_gui> Qt_triangulation; // Keeps the points confined typedef CGAL::Kinetic::Enclosing_box_2<Traits> Box; CGAL_SET_LOG_LEVEL(CGAL::Log::LOTS); // Run from time 0 until a really large value of time Traits tr(0, 10000000); Box::Handle box= new Box(tr); KDel::Handle kdel= new KDel(tr); Qt_gui::Handle qtsim= new Qt_gui(argc, argv, tr.simulator_handle()); Qt_mps::Handle qtmps= new Qt_mps(qtsim, tr); Qt_triangulation::Handle qtdel= new Qt_triangulation(kdel, tr.instantaneous_kernel_object(), qtsim); Traits::Kinetic_kernel::Point_2 p; std::cin >> p; tr.active_points_2_table_handle()->insert(p); return qtsim->begin_event_loop(); }