c++ - Removing geometrical objects from geomview window when used in CGAL -


i interested in implementing computational geometry algorithms using cgal library. ideally, interested in being able animate algorithm.cgal has interface geomview built in interested in using illustrating these algorithms.

based on little understand of cgal geomview interface (from example), below simple code wrote, inserts 5 random points, , segments between of points.

however, once render objects screen, don't know how unrender them or delete them geomview window, if need deleted @ next iteration(say) of algorithm. how modify code below that?

if knows of better way using geomview animate geometry algorithms cgal helpful.

#include <iostream> #include <vector> #include <cgal/exact_predicates_inexact_constructions_kernel.h>  #include <unistd.h>  #include <cgal/io/geomview_stream.h>  typedef cgal::exact_predicates_inexact_constructions_kernel k; typedef k::point_2 point_2;  typedef k::segment_2 segment_2;  using namespace std;  int main(int argc, char *argv[]) {    point_2 points[5] = { point_2(0.,0.), point_2(10.,0.),point_2(10.,10.),point_2(6.,5.),point_2(4.,1.) };     cgal::geomview_stream gv(cgal::bbox_3(-12, -12, -0.1, 12,12,0.1));    gv << cgal::red; // red points   (int = 0; <= 2; ++i)     {        gv << points[i];      }    gv << cgal::blue;// bluepoints   (int = 3; <= 4; ++i)     {       gv << points[i];       }    // segments between points   gv << cgal::black;   segment_2 ab = segment_2(points[0],points[1]);    gv << cgal::yellow << ab ;    segment_2 cd = segment_2(points[1],points[2]);   gv << cgal::blue <<   cd ;     sleep(300);   return 0; } 

the current trend among cgal developers use qt framework , associated visualisation tools such qglviewer rather geomview more recent, portative , allows more (especially if want make demo algorithms user interactions).

if want 3d visualisation cgal advise use qglviewer lot of demos in cgal uses library. instance entry point, suggest have alpha_shape_3 demo. code of demo quite light , straightforward, can add new features without understanding whole qt framework first (you may have way learning curve less steep , can start implementing stuff).

if want 2d visualisation, may have alpha_shape_2 demo , use qpainter qt (note can combine both 3d , 2d viewer in qgl viewer shown in example.


Comments

Popular posts from this blog

python - mat is not a numerical tuple : openCV error -

c# - MSAA finds controls UI Automation doesn't -

wordpress - .htaccess: RewriteRule: bad flag delimiters -