Subject: CGAL users discussion list
List archive
- From: Jane Tournois <>
- To:
- Subject: Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3
- Date: Mon, 12 Sep 2016 15:03:36 +0200
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=None ; spf=None
- Ironport-phdr: 9a23:LkI+9xPAlKgMJIMK0KMl6mtUPXoX/o7sNwtQ0KIMzox0KPv5rarrMEGX3/hxlliBBdydsKMdzbSG+P2wESxYuNDa4ShEKMQNHzY+yuwu1zQ6B8CEDUCpZNXLVAcdWPp4aVl+4nugOlJUEsutL3fbo3m18CJAUk6nbVk9GO35F8bogtit0KjqotuIMlwO2mr2POM6bE3v616A7o9O2coqA51y4yOBmmFPdeVSyDEgDnOotDG42P2N+oV++T9bofMr+p0Ie6z7e6MlUe4QV2x+YChmrPHs4BLMRA/K6noHWXgNiTJJBRLE5Vf0RMTfqCz/48h03iTSAcrrV7YzWC/qu6ViThKulCAaLTg+8Xr/hcF3ia9HugOvrhdjxJTFJoqSMawtLevmYdoGSD8ZDY5qXCtbD9bkYg==
Insertion is done before removal, but the logic remain the same.
The function that actually does the job is
Vertex_handle
move_point_topo_change(const Vertex_handle& old_vertex,
const Point_3& new_position,
OutdatedCellsOutputIterator outdated_cells,
DeletedCellsOutputIterator deleted_cells) const;
this function collects the removal AND insertion conflict cells,
then, it inserts `new_position`, removes `old_vertex`,
and finally collects the outdated cells with the function `get_conflict_zone_topo_change` : the union of cells incident to the newly created vertex, with the cells in conflict with the re-insertion of `old_vertex`'s position.
It is indeed equivalent to what I said before.
Best,
Jane.
Le 09/09/2016 à 18:36, Brown, James 2 a écrit :
Vertex_handle move_point(const Vertex_handle& old_vertex,Yes, this is the function that I am looking at.
const Point_3& new_position,
Outdated_cell_set& outdated_cells_set,
Moving_vertices_set& moving_vertices) const;
does exactly what you need.
- collect the incident cells to vSorry if I am missing something, but this is not quite the process that is
- remove v
- triangulate the cavity --> triangulation T1
- collect cells in conflict with the insertion of newpoint : T2
- insert newpoint
- collect incident cells to new vertex : T3
the newly created cells after removal + insertion is T1-T2+T3.
happening in move_point (though it must be equivalent?):
- In move_point the new (outdated) cells are just the conflict cells of the
old position in the final triangulation.
- As well it is doing removal after insertion of the new point (so the
insertion conflicts are calculated from the original triangulation before
removal)
Is move_point taking a shortcut? It is not obvious to me that it yields the
same results as your suggested process.
--
Jane Tournois, PhD
R&D Engineer at GeometryFactory
http://www.geometryfactory.com/
- Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3, Laurent Rineau (CGAL/GeometryFactory), 09/01/2016
- Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3, Jane Tournois, 09/05/2016
- <Possible follow-up(s)>
- Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3, Brown, James 2, 09/09/2016
- Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3, Jane Tournois, 09/09/2016
- Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3, Brown, James 2, 09/09/2016
- Re: [cgal-discuss] Changed cells in Delaunay_triangulation_3, Jane Tournois, 09/12/2016
Archive powered by MHonArc 2.6.18.