Andreas Fabri
766673bd8c
resolve merge conflicts
2014-12-22 17:46:59 +01:00
Andreas Fabri
87db2e1163
add license header, description.txt
2014-12-22 15:00:38 +01:00
Andreas Fabri
9f6807b005
Add Tds_2::collapse_edge()
2014-12-18 08:25:57 +01:00
Andreas Fabri
be5cf9eb5a
put a unused variable in assertion code
2014-12-16 16:16:50 +01:00
Andreas Fabri
ca9e8d4948
achieve backwardcompatibility to the code not to the documentation
2014-12-12 17:28:44 +01:00
Andreas Fabri
7d8f9ebe95
get rid of warnings
2014-12-11 12:55:57 +01:00
Andreas Fabri
af996380a0
make Constraint_id backward compatible with the documentation
2014-12-08 12:00:57 +01:00
Laurent Rineau
0991efefee
Make the new CDT deterministic again
...
That is a followup of the following two commits. The "polyline CDT" has
been branched from CDT before those patches were in CGAL:
| commit 49404f75f5
| Author: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
| Date: Thu Jun 28 09:16:23 2012 +0000
|
| Improved patch
|
| The Constraint_hierarchy is now templated by T, an anonymous type (that is
| a Vertex_handle when the constraint hierarchy is used in Ct_plus_2), and a
| Compare operator, that have a comparison member function:
| bool operator()(T, T);
|
| In Ct_plus_2, the Compare operator passed to the Constraint_hierarchy
| compares the vertices with a Less_xy_2, implemented by Less_x_2, and
| Less_y_2.
|
| The test test/Triangulation_2/include/CGAL/_test_cls_hierarchy_2.h has been
| tweaked, to check that the type T passed in the hierarchy no longer needs
| to have a point() member function, as it was before May 2010 (when GF has
| determinized the Cdt_plus_2 using too simple patch).
|
| Notes:
| r70132 branches/features/Triangulation_2_UseTraitsInHierarchy-GF
| commit 7cb640d05d
| Author: Andreas Fabri <Andreas.Fabri@geometryfactory.com>
| Date: Mon Jun 25 10:11:56 2012 +0000
|
| The Constraint_hierarchy_2 gets an additional LessXY_2 functor as template argument so that it no longer applies operator<(Point,Point)
|
| Notes:
| r70018 branches/features/Triangulation_2_UseTraitsInHierarchy-GF
2014-12-04 15:19:22 +01:00
Andreas Fabri
b1532991e5
int -> size_t
2014-11-30 18:43:38 +01:00
Jane Tournois
e31df9644b
fix compilation for Linux
2014-11-24 15:03:07 +01:00
Jane Tournois
0be3dd708b
cleaning
2014-11-21 11:23:53 +01:00
Andreas Fabri
42a1c49066
The class Triangulation_2 (but neither TDS2 nor DT_2) should now be a model of FaceListGraph (but not Mutable)
2014-11-20 15:39:56 +01:00
Sébastien Loriot
70502effac
change Subconstraint_iterator to ensure backward compatibility
2014-11-14 12:21:24 +01:00
Guillaume Damiand
f6faf3fee2
Add missing impl file; protect static variable to use it only in the case CGAL_HEADER_ONLY, in FPU_set_cw, replace one more IO::mode.
2014-11-14 12:11:33 +01:00
Sébastien Loriot
d4af8c8d48
change Constraint_id to ensure backward compatibility
2014-11-14 11:58:43 +01:00
Jane Tournois
bd0917d7a9
little cleaning
2014-11-13 17:20:21 +01:00
Jane Tournois
e02773efd1
move files about sizing, and change template parameter. Geom_traits is enough
2014-11-12 15:42:27 +01:00
Jane Tournois
e24ea9175a
fix bug : we should not have 2 default constructed rays in every CVD cell
2014-11-07 14:08:57 +01:00
Jane Tournois
b29a041c00
fix functions that tag faces as blind
2014-11-06 16:03:17 +01:00
Andreas Fabri
0e535324f0
cleanup
2014-11-06 15:50:05 +01:00
Andreas Fabri
7074432e56
draw vertices smaller and in black
2014-11-06 14:41:00 +01:00
Andreas Fabri
c593ee59ba
Be more precise in case of degenerate polyline constraints (length 0,1; identical points)
2014-11-05 17:13:19 +01:00
Andreas Fabri
42d04ea13f
take into account Jane's review
2014-11-04 12:24:12 +01:00
Jane Tournois
ee5c1cea4b
add code for optimization.
...
- Lloyd move should be ok, but faces blindness is not updated properly until now
- ODT move still needs to be redefined when constraints appear
2014-10-10 15:37:25 +02:00
Jane Tournois
84ca2d460b
add functionalities to CVD cells
2014-10-09 16:58:35 +02:00
Jane Tournois
2d007d3bf2
fix macro's name
2014-10-09 13:48:55 +02:00
Jane Tournois
4cf43198e2
dual(v) returns an OutputIterator that collects rays and segments
...
to do so, use the Dispatch_output_iterator
- Constrained Voronoi diagram is now a class that has a pointer to a CDT
as member. We don't need an extra CDT anymore
- update examples
- also update the CDT 2 demo to see Voronoi cells, that are only valid when the
triangulation is Delaunay (constrained or not)
2014-10-07 15:03:41 +02:00
Jane Tournois
8d87ccf8c2
add a dual(vertex) function to DT2 and CDT2
...
- in DT2, it returns the Voronoi cell as a Polygon_2
- in CDT2, it returns the - possibly clipped - "bounded Voronoi cell"
see Seidel1988 or http://hal.inria.fr/docs/00/54/68/79/PDF/centroidal-vd.pdf
also add an example that computes the full BVD
2014-10-03 16:52:48 +02:00
Clement Jamin
03253edf19
Merge branch 'Triangulation-add_regular_tri-cjamin_mglisse-old' into Triangulation-add_regular_tri-cjamin_mglisse
2014-09-09 14:35:38 +02:00
Andreas Fabri
17ca29713a
Add a forwarding function as we had to remove a using statement
2014-08-22 15:14:19 +02:00
Andreas Fabri
ab7f0189bd
remove debug output
2014-08-22 15:13:32 +02:00
Andreas Fabri
43b8390a70
Merge branch 'Triangulation_2-NewPolylineConstraint-GF-old' into Triangulation_2-NewPolylineConstraint-GF
2014-08-08 12:47:15 +02:00
Andreas Fabri
9243e1eb69
Unify APIs: Add insertion of a polyline
2014-07-16 15:30:14 +02:00
Sébastien Loriot
0230e979e2
Merge branch 'CGAL-use_leda-GF-OLD' into CGAL-use_leda-GF
...
Conflicts:
Arrangement_on_surface_2/test/Arrangement_on_surface_2/construction_test_suite_generator.cpp
Arrangement_on_surface_2/test/Arrangement_on_surface_2/test_construction.cpp
Documentation/doc/Installation.txt
Kernel_23/include/CGAL/Exact_predicates_exact_constructions_kernel.h
2014-06-18 22:50:06 +02:00
Clement Jamin
eebad0e1a4
Add applications to help comparison between T2/T3 and Td
2014-06-16 19:35:04 +02:00
Andreas Fabri
2c08831b35
add missing typename
2014-05-23 08:47:56 +02:00
Andreas Fabri
c6bf236909
include header files where they are used
2014-05-22 14:49:38 +02:00
Andreas Fabri
8423854c95
Add Constrained_Delaunay_triangulation_2::insert_constraint(PointIterator,PointIterator)
2014-05-21 18:25:27 +02:00
Andreas Fabri
80798869fc
Add Constrained_triangulation_plus_2::insert_constraints(..)
...
Before it inherited from the base class and did not update
the constraint hierarchy.
2014-05-21 17:17:40 +02:00
Andreas Fabri
6b129f3ad0
unify API
2014-05-20 17:39:56 +02:00
Andreas Fabri
2f967ba6e4
the testsuite for the new version of the Constrained_triangulation_plus_2 passes
2014-05-19 15:57:24 +02:00
Andreas Fabri
575b9081a7
make Constaint_id a struct so that we can write operator pair<Vertex_handle,Vertex_handle>()
2014-05-19 11:49:08 +02:00
Andreas Fabri
a0d8e81a6f
Fix the Polyline_constrained_triangulation for the Exact_constructions_tag
...
To avoid cascading the intersection is done with endpoints of segment constraints
For polyline constraints we cannot take the endpoints of the polyline
but must find input points of the polyline.
2014-05-16 14:48:20 +02:00
Andreas Fabri
85b29aed5f
treat merge conflicts
2014-05-15 16:09:24 +02:00
Andreas Fabri
c5ae1d35a9
Merge branch 'Advancing_front_surface_reconstruction-afabri-old' into Advancing_front_surface_reconstruction-afabri
2014-03-26 12:55:58 +01:00
Laurent Rineau
ab7f9d0047
Fix a warning -Wmaybe-uninitialized
...
With g++48, with -Wall -O3, there was the following warning:
include/CGAL/Weighted_point.h:137:5: warning: '*((void*)& p +8)' may be used uninitialized in this function [-Wmaybe-uninitialized]
wp = Weighted_point<Point,Weight>(p,w);
^
include/CGAL/Weighted_point.h:130:9: note: '*((void*)& p +8)' was declared here
Point p;
^
include/CGAL/Weighted_point.h:137:5: warning: 'p' may be used uninitialized in this function [-Wmaybe-uninitialized]
wp = Weighted_point<Point,Weight>(p,w);
^
Trivial bug-fix for master.
2013-12-12 17:44:00 +01:00
Sébastien Loriot
84d97f385d
add insert_constraints functions to Constrained_Delaunay_triangulation_2
2013-12-02 22:48:38 +01:00
Andreas Fabri
6802db2f6b
Merge branch 'old' into Advancing_front_surface_reconstruction-afabri
...
Apply "My branch is really old.." from the FAQ
Conflicts:
Installation/changes.html
Polyhedron/demo/Polyhedron/Scene_points_with_normal_item.cpp
Polyhedron/demo/Polyhedron/Scene_points_with_normal_item.h
Polyhedron/demo/Polyhedron/include/CGAL/gl_render.h
2013-11-28 14:58:29 +01:00
Andreas Fabri
9ed4f837c3
Merge branch 'CGAL-compilable_headers-GF'
...
The conflict was about whitesapce
Approved by the release manager
Conflicts:
Polyhedron/include/CGAL/Polyhedron_copy_3.h
2013-09-23 14:50:17 +02:00
Laurent Rineau
650419f631
Trivial warning bug-fix for master (for CGAL-4.3)
2013-09-16 12:16:27 +02:00
Andreas Fabri
5c454cec64
add missing includes
2013-09-13 12:43:01 +02:00
Andreas Fabri
d93bc127db
Qualify call of derived function with this->
2013-09-13 12:42:37 +02:00
Andreas Fabri
56d31513e6
fix incllude file. was not from the base class
2013-09-13 12:19:01 +02:00
Andreas Fabri
121ada60a4
Function must not only be declared but also defined to avoid VC++ warning
2013-09-12 12:49:04 +02:00
Sébastien Loriot
22b0d44f4a
make the move function private to disable the inherited version
2013-08-02 07:52:09 +02:00
Sébastien Loriot
f82d049dd1
make the triangulation iterator convertible to non-const handle
...
this pleases clang++3.2 with -std=cpp11 option
2013-07-25 07:40:38 +02:00
Jane Tournois
56d733b254
Merge remote-tracking branch 'origin/Mesh_3-improvements-GF'
...
Several improvements of Mesh_3, including
- speedup of optimizers,
- make inexact_locate public in Triangulation_2 and Triangulation_3,
- compactify mesh_cell_base and mesh_vertex_base,
- fix of documentation,
- and more
Small feature :
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Various_improvements_of_Mesh_3
Approved by the release manager.
2013-07-01 16:25:56 +02:00
Guillaume Damiand
6ba0055694
Trivial bug-fix qualified for master:
...
/Users/cgaltester/cgal_test/CGAL-4.3-Ic-71/include/CGAL/Triangulation_data_structure_2.h:1858:41: warning: unused parameter 'src' [-Wunused-parameter]
Face_tgt operator()(const Face_src& src) const
2013-06-25 12:32:59 +02:00
Jane Tournois
404f2e0e3c
merge
2013-06-21 10:01:19 +01:00
Sébastien Loriot
8d602ed8c2
Merge branch 'triangulation_3-copy_tds-sloriot'
...
Approved by the release manager
Conflicts:
Alpha_shapes_3/test/Alpha_shapes_3/copy_tds.h
Triangulation_2/doc/TDS_2/Concepts/TriangulationDataStructure_2.h
it introduces a more general copy_tds that allows to copy tds with different types of simplices.
2013-04-29 11:09:01 +02:00
Sébastien Loriot
bb7f025512
more permissive copy_tds for compatible vertex types with the same point type
2013-04-19 08:44:45 +02:00
Andreas Fabri
76a386bd18
make polylines.cpp work with EPEK
2013-04-17 09:38:23 +02:00
Andreas Fabri
e4306a0d3d
fixed -> unremovable; fixed is no longer used in Polyline_constrained_trioangulation
2013-04-16 16:01:09 +02:00
Andreas Fabri
94567d8745
wip
2013-04-16 15:09:05 +02:00
Andreas Fabri
80ef57d590
rename class
2013-04-16 12:46:34 +02:00
Sébastien Loriot
62fcc226b8
add a method to insert a range of points with info in cdt
2013-04-16 07:37:51 +02:00
Jane Tournois
a9275d1a5b
add default value for start of inexact_locate
2013-04-12 14:48:10 +02:00
Jane Tournois
e023f42a51
make inexact_locate public also in Triangulation_2
2013-04-12 14:32:16 +02:00
Sébastien Loriot
f9e0c97aac
for convenience add a default to simple converter
...
it is useful if you want to copy the tds of a familly
alpha-shape into a fixed one
2013-04-11 20:03:32 +02:00
Sébastien Loriot
2143378f58
remove a warning and simplify the implementation
2013-04-09 19:33:47 +02:00
Andreas Fabri
5e08e87d3d
Make the example more interesting.
...
Fix const correctness.
Fix the Subconstraint_iterator.
Improve the manual.
2013-04-03 15:28:46 +02:00
Andreas Fabri
f7d7395864
Merge branch 'OLD' into CGAL-use_leda-GF
...
Conflicts:
Boolean_set_operations_2/test/Boolean_set_operations_2/test_polygon_validation.cpp
Envelope_2/test/Envelope_2/test_envelope_segments.cpp
Intersections_3/test/Intersections_3/bbox_other_do_intersect_test.cpp
2013-03-27 20:22:54 +01:00
Laurent Rineau
b6ffa7c425
Merge branch 'CGAL-fix_warnings-GF'
...
That branch was successfully tested in CGAL-4.2-Ic-205.
2013-03-27 12:23:31 +01:00
Andreas Fabri
8a45fcea5a
Merge branch 'OLD' into Triangulation_2-NewPolylineConstraint-GF
...
Conflicts:
Triangulation_2/doc/Triangulation_2/Triangulation_2.txt
2013-03-21 13:41:53 +01:00
Laurent Rineau
6026df138a
Fix mis-compilations of Triangulation_2 with -O3 -DCGAL_NDEBUG
...
With recent g++ versions, when -DCGAL_NDEBUG and -O3 was in the compilation
flags, my patch using 'CGAL_assume' triggered mis-compilation of cases
where the dimension() was 1, for all uses of the following pattern:
CGAL_assume(i>=0 && i<= 1);
[...] 1-i [...]
The fix is to use "(i==0)?1:0" instead.
2013-03-19 14:29:18 +01:00
Andreas Fabri
67226de083
use CGAL::compare instead of compare to avoid Koenig lookup
2013-03-15 16:25:05 +01:00
Andreas Fabri
950e858555
remove unused parameters
2013-03-12 09:50:46 +01:00
Andreas Fabri
1ee52525ab
No need for the hierarchy. Makes it simpler and faster
2013-03-07 17:44:31 +01:00
Andreas Fabri
e7900a02a3
made two private functions public, so that we can modify a TDS_2
2013-03-06 18:08:37 +01:00
Laurent Rineau
ef37a934a6
Fix warning "_ri may be used uninitialized"
2013-02-27 19:35:56 +01:00
Laurent Rineau
403031ce7f
Fix warnings
2013-02-27 18:21:24 +01:00
Andreas Fabri
c7e68385be
remove unused variables and #if 0 buggy non used code
2013-02-26 16:52:55 +01:00
Laurent Rineau
2d8da664a3
Merge branch 'CGAL-fix_warnings-gdamiand'
...
Conflicts:
.gitignore
Skin_surface_3/examples/Skin_surface_3/CMakeLists.txt
2013-02-22 13:02:37 +01:00
Laurent Rineau
66c5d23154
Use CGAL_assume to remove warnings
2013-02-20 18:55:43 +01:00
Sébastien Loriot
e9e31dc6f3
remove unused file
2013-02-19 13:57:41 +01:00
Andreas Fabri
2740aa9c05
use size_type instead of int
2013-02-07 15:16:03 +01:00
Andreas Fabri
c6dd56cf0f
suppress a warning. The hypothetical problem cannot occur
2013-02-07 15:15:27 +01:00
Andreas Fabri
462ad57712
Remove a declaration without definition
2013-02-07 15:13:48 +01:00
Andreas Fabri
f9cd5ec08a
Merge remote-tracking branch 'origin/Triangulation_2-NewPolylineConstraint-GF' into Triangulation_2-NewPolylineConstraint-GF
...
Conflicts:
.gitattributes
2013-01-21 14:33:33 +01:00
Andreas Fabri
b307771892
bug fix for natural_neighbor_coordinates_2 using a small feature in the conflict zone functions of Delaunay_triangulation_2
2013-01-08 12:34:37 +01:00
Philipp Möller
0f34f2a89e
Merge branch 'Maintenance-include-less-boost-pmoeller'
2012-12-21 09:44:18 +01:00
Sébastien Loriot
41362b6b57
Merge branch 'triangulation_2-cstr_using_ranges'
2012-12-21 08:42:25 +01:00
Sébastien Loriot
84caad7137
using the regular triangulation filtered traits using flags in the kernel
2012-12-20 16:12:38 +01:00
Sébastien Loriot
59f9e8a778
add constructor from range for 2D Delaunay and Regular triangulation
2012-12-19 17:10:57 +01:00
Sébastien Loriot
09e42c760e
fix source vertex and face types
2012-12-19 10:52:56 +01:00
Sébastien Loriot
853c658a18
add copy_tds with converter in TDS2
2012-12-19 10:15:03 +01:00
Philipp Möller
71ea8e6e22
Minimal boost includes
...
Replace type_traits.hpp and utility.hpp with the respective
fine-grained includes.
2012-12-14 18:13:59 +01:00
Laurent Rineau
96319a1365
reintegrate '^/branches/features/Triangulation_2_UseTraitsInHierarchy-GF'
2012-11-07 14:59:00 +00:00
Sébastien Loriot
ef81760b85
macro renaming
2012-11-02 08:58:21 +00:00
Laurent Rineau
ef5b895a93
merge from next
2012-11-02 08:49:12 +00:00
Sébastien Loriot
6ff851e791
macro renaming
2012-11-02 08:44:08 +00:00
Sébastien Loriot
6da5e9e84d
unrecursive version of propagating_flip and propagate_conflicts
...
for CDT2 and DT2 using 100 recursive calls before switching to
a local stack in a function.
2012-10-30 13:16:52 +00:00
Sébastien Loriot
720244f8f8
apply the same choice as the one made in r73262 for CDT_2
2012-10-24 21:39:38 +00:00
Sébastien Loriot
cd165546fc
Remove all alternatives to propagating_flip to keep one that allow to use the call
...
stack for at most 100 recursive calls and switch to a non-recursive function
that uses a local std::stack to emulate the call stack.
Benchmarks show the following results:
7 runs on 10,000,000 random in unit circle points
43.67074 : Old implementation
43.91474 : use stack for 100 first call then non-recursive with stack
44.07075 : use stack for 100 first call then non-recursive with vector
44.57079 : Local vector
45.0068 : Local stack
45.87886 : Local fixed size array
46.3829 : Local "home-made" small vector
53.41534 : Thread-local vector
2012-10-24 21:35:17 +00:00
Sébastien Loriot
a7b02bd716
merge experimental-packages/Triangulation_2-unrecursive
2012-10-24 09:26:32 +00:00
Sébastien Loriot
5c4ae5d477
windows mixes up Fb template parameter with nested Fb type from base class
2012-08-22 06:48:49 +00:00
Laurent Rineau
db194534c7
First big patch to fix -Wunused-local-typedefs
...
-Wunused-local-typedefs is a new warning flag of gcc-4.7, and it will enabled
by -Wall since gcc-4.8 (not yet released).
The fix is a big set of removals of unused typedefs (or comments, or moves,
depending on the context).
2012-08-01 13:29:16 +00:00
Marc Glisse
a758751485
Remove / comment out unused local typedefs. Fix one place where FT was used instead of RT (homogeneous coordinates, probably never compiled).
2012-07-28 06:21:06 +00:00
Sébastien Loriot
3e750c6fd7
temporary hack to work around assertion
2012-07-17 12:08:49 +00:00
Laurent Rineau
49404f75f5
Improved patch
...
The Constraint_hierarchy is now templated by T, an anonymous type (that is
a Vertex_handle when the constraint hierarchy is used in Ct_plus_2), and a
Compare operator, that have a comparison member function:
bool operator()(T, T);
In Ct_plus_2, the Compare operator passed to the Constraint_hierarchy
compares the vertices with a Less_xy_2, implemented by Less_x_2, and
Less_y_2.
The test test/Triangulation_2/include/CGAL/_test_cls_hierarchy_2.h has been
tweaked, to check that the type T passed in the hierarchy no longer needs
to have a point() member function, as it was before May 2010 (when GF has
determinized the Cdt_plus_2 using too simple patch).
2012-06-28 09:16:23 +00:00
Andreas Fabri
7cb640d05d
The Constraint_hierarchy_2 gets an additional LessXY_2 functor as template argument so that it no longer applies operator<(Point,Point)
2012-06-25 10:11:56 +00:00
Philipp Möller
5f6b09c484
Fix types of loop counters to size_t.
2012-06-20 09:15:34 +00:00
Sébastien Loriot
19857458b6
deprecation warnings
2012-05-28 07:28:03 +00:00
Menelaos Karavelas
9201c1f2c3
implementation and documentation for the Rebind_vertex and Rebind_face small
...
feature of the TDS_2 concept.
The release manager has approved the commit directly into the next branch.
2012-05-24 14:07:56 +00:00
Philipp Möller
8529612009
Drop some never implemented members from the hierarchy.
...
Remove keep_points from PCT and PHierarchy.
Document the effect of the fixed member in simplify.
2012-05-14 13:09:03 +00:00
Philipp Möller
a3ae98b371
Add a range overload for insert_constraint and document it.
...
Fix the return types in the documentation.
Add both overloads of push_back to be more similar to C_t_plus
2012-05-14 12:10:16 +00:00
Philipp Möller
bd81c4fe68
Minor copy&paste fix
2012-05-11 15:14:02 +00:00
Philipp Möller
af62f9848b
constness, insert pair<Point, Point>, Self typedef
2012-05-11 13:27:17 +00:00
Philipp Möller
c72b426896
Propagated that change up through the hierarchy. (*it)-> syntax for
...
Vertex_it still feels a little bit awkward but is the best we can get.
2012-05-10 16:02:11 +00:00
Philipp Möller
918a6084ab
Node is now entirely encapsulated.
2012-05-10 14:26:46 +00:00
Philipp Möller
a2c0e017e3
Dropped the H_ prefix and purged some typedefs.
2012-05-10 13:53:43 +00:00
Philipp Möller
cfea03d54b
Dropped out-dated examples, simplify.cpp example compiles.
2012-05-10 13:35:00 +00:00
Philipp Möller
9464dccbb5
Clean up and Node conversions.
2012-05-10 09:51:09 +00:00
Philipp Möller
3c98b60509
Removed simplification from this package.
2012-05-09 15:38:28 +00:00
Philipp Möller
092f09e490
Replaces Squared_distance_cost with the version from the Triangulation_2 package.
2012-05-09 15:36:59 +00:00
Philipp Möller
57417b0050
Removed executable property.
2012-05-09 15:34:38 +00:00
Philipp Möller
38228d6982
Added conversions to Skiplist, integrated it somewhat into
...
constraint_hierarchy, merged some code there and added a Default to
the triangulation.
2012-05-09 13:39:36 +00:00
Philipp Möller
9d91dcc2ef
proper naming
2012-05-04 16:24:30 +00:00
Philipp Möller
f43213905b
Removed unnecessary include.
2012-05-04 16:22:23 +00:00
Philipp Möller
328e59e04e
A vertex base for Polyline_constraint_hierarchy
2012-05-04 15:55:02 +00:00
Philipp Möller
da6f1be1d2
Typenamified constrained_triangulation, partially integrated skiplist
2012-05-04 13:39:22 +00:00
Andreas Fabri
f9489d4dc5
insert_polyline ->insert_constraint
2012-05-03 15:10:34 +00:00
Andreas Fabri
e2b039379b
Add remove_points_from_constraints
2012-04-26 11:36:13 +00:00
Andreas Fabri
97949be7cb
Add remove_points_from_constraint
2012-04-26 11:31:04 +00:00
Andreas Fabri
e650998cc3
code follows doc
2012-04-26 09:41:56 +00:00
Andreas Fabri
bf657edffc
Duplicate and modify functions as they are more efficient
2012-04-20 22:31:23 +00:00
Andreas Fabri
271f52dbd4
Add an error function for polyline simplification
2012-04-20 10:33:46 +00:00
Andreas Fabri
c19ff964b2
Add files for Polyline_constrained_triangulation_2
2012-04-20 10:11:18 +00:00
Andreas Fabri
c8c67ab24c
Add insert_constraint(Vertex_handle vaa, Vertex_handle vbb, OutputIterator out)
2012-04-20 10:10:08 +00:00
Laurent Rineau
95bec3999c
Use Unique_has_map instead of std::map (patch from Andreas Fabri)
...
The gain on copies of T2 or T3 is the following:
afabri@klimt /cygdrive/c/cgal/next/Triangulation_3/benchmark/Triangulation_3
$ ./copy 1000000 2
36.806 sec
afabri@klimt /cygdrive/c/cgal/next/Triangulation_3/benchmark/Triangulation_3
$ ./copy 1000000 2
4.865 sec
The benchmarck copy.cpp is the following (not commited):
#define CGAL_T3_HASH
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/Delaunay_triangulation_3.h>
#include <CGAL/Timer.h>
#include <CGAL/point_generators_3.h>
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Delaunay_triangulation_3<K> Delaunay;
typedef K::Point_3 Point;
typedef CGAL::Creator_uniform_3<double,Point> Creator;
int main(int argc, char **argv)
{
int n=1000000;
int rep=100;
if (argc>=2)
n=atoi(argv[1]);
if (argc>=3)
rep=atoi(argv[2]);
std::vector<Point> points;
points.reserve(n);
CGAL::Random_points_in_sphere_3<Point,Creator> g(1);
CGAL::copy_n( g, n, std::back_inserter(points));
Delaunay original;
original.insert(points.begin(),points.end());
double res = 0;
for (int r=0;r<rep;++r){
CGAL::Timer t; t.start();
Delaunay delaunay=original;
t.stop();
res+=t.time();
}
std::cout << res << std::endl;
return 0;
}
2012-03-30 12:37:19 +00:00
Sébastien Loriot
498c0a6e1e
Make the insert-by-range function more permissive
...
The condition is now to be convertible to the point type, pair<point,info>,...
This was the behavior before the insert-by-range-with-info methods were
introduced.
2012-01-24 17:25:20 +00:00
Olivier Devillers
1eb0ad5c1b
optimize
2012-01-24 16:24:56 +00:00
Olivier Devillers
8722c292d7
replace inexact_locate by has_inexact_negative_orientation
2012-01-24 09:45:13 +00:00
Sébastien Loriot
a7456a2736
merge from next
2012-01-16 15:28:51 +00:00
Laurent Rineau
0e3de8807e
Fix performances of Triangulation_2 with EPEC
...
There was a performance degradation between CGAL-3.7 and CGAL-3.8, when
Triangulation_2 is used with EPEC. This patch fixes the issue. Using a
functor that is specialized for EPEC, in inexact_orientation, to_double is
not called on p.x() but on p.approx().x().
2012-01-16 13:45:16 +00:00
Sébastien Loriot
fca9a7bf54
*add operator>> for Constrained_triangulation_2
...
*update demo
*add save CDT for demo
see the related small feature:
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Add_read_istream_for_constrained_triangulation .
2012-01-16 13:32:05 +00:00
Laurent Rineau
8f59fd9592
Turn QPL into LGPLv3+
2012-01-13 16:33:35 +00:00
Laurent Rineau
5b5dd33848
merge changes from next
2012-01-09 12:33:39 +00:00
Sébastien Loriot
eddf2131d6
merge from next
2011-12-30 11:09:29 +00:00
Sébastien Loriot
59b50cc467
make static variable in remove thread_safe.
...
I choose this solution since making the container global variable of
the class penalize classes that do not use remove functions.
The overhead introduced is small (less than 2-3% of the total remove time).
2011-12-29 16:35:40 +00:00
Laurent Rineau
6ed56d75b5
merge from next
2011-10-25 15:48:02 +00:00
Olivier Devillers
5f4f11e2df
not turning always in the same manner in a triangle speed up the walk (for long walks)
2011-10-25 11:31:01 +00:00
Sébastien Loriot
91a5327fa8
change LGPLv2 -> LGPLv3
2011-10-10 13:48:25 +00:00
Olivier Devillers
ef043927fd
too conservative check removed, for fast removal in delaunay 2d
2011-09-06 15:21:27 +00:00
Sébastien Loriot
98ddbf9c7e
merge packages Spatial_sorting, Triangulation_2 and Triangulation_3 from branch spatial_sorting-add_info-sloriot
2011-05-24 15:48:31 +00:00
Marc Glisse
19b75ba29c
Remove unused lines
2011-04-12 10:08:00 +00:00
Laurent Rineau
5604fef79f
Move <CGAL/apply_to_range.h> to trunk/Triangulation_2...
...
... to avoid that useful file to be removed by error if we remove
trunk/Qt_widget one day (but also because it is more logical).
2011-03-29 09:38:36 +00:00
Laurent Rineau
fc2e05e67d
Triangulation_2_projection_traits_3 is now a model of DelaunayMeshTraits_2.
2011-03-23 17:28:51 +00:00
Sébastien Loriot
6340a510c5
merge the code for Triangulation_2 to insert range of points with info
...
protected by macro CGAL_TRIANGULATION_2_DONT_INSERT_RANGE_OF_POINTS_WITH_INFO
2011-01-11 07:40:47 +00:00
Sébastien Loriot
3e04fb16fb
merge packages related to projection traits into the trunk.
2011-01-11 07:18:36 +00:00
Sébastien Loriot
5f674516b0
add precondition to dual functions to check that objects are from the triangulation.
2010-12-23 15:55:50 +00:00
Laurent Rineau
96162627aa
Merge the following small features in trunk:
...
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Remove_cluster
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Structural_filtering
Merge also a partial support of:
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Rt::vertices_inside_conflict_zone
(vertices_inside_conflict_zone" is added in Regular_triangulation_3, without documenting it)
2010-12-10 17:02:10 +00:00
Laurent Rineau
1caaf5665c
- triangulate_half_hole was quadratic because std::list::size is a linear
...
function (not with all compilers, but at least with g++-4.4).
I have a very nasty test case where list_edges.size is more than
700000. With a quadratic function, mmy cruncher computer was not even able
to insert *one* constraint in half a day.
- Remove also the unused variable vb, and the initialization of tempo
(which is re-initialized a second time later, without using its first
value).
2010-11-23 11:07:42 +00:00
Andreas Fabri
a9fc8fc464
Remove unused variable
2010-11-22 07:56:00 +00:00
Laurent Rineau
168d31b6d6
Commit that feature directly to trunk:
...
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Triangulation_2::mirror_edge%28Edge%29
Code + manual + small test
Why directly to trunk: the patch is very low risk, I have ran the test
suite and the manual testsuite, and there is already a Triangulation_2
package in candidate packages (cannot have two candidates for one package).
2010-11-16 17:27:06 +00:00
Laurent Rineau
e90e28169a
Apply the same patch as for Constrained_triangulation_2.h in revision 59626
...
to Constrained_triangulation_plus_2.h:
|------------------------------------------------------------------------
|r59626 | lrineau | 2010-11-10 19:42:53 +0100 (Wed, 10 Nov 2010) | 3 lines
|
|Fix an infinite loop in CDT<EPIC, TDS, Exact_predicates_tag>
|Add a test, that know passes, and previously failed.
|
|------------------------------------------------------------------------
2010-11-12 10:39:22 +00:00
Laurent Rineau
8aaa43a8eb
Cosmetic: minimize the diff between
...
Constrained_triangulation_2::insert_constraint
and
Constrained_triangulation_plus_2::insert_subconstraint
(Add a comment, adjust the whitespace)
2010-11-12 10:26:33 +00:00
Laurent Rineau
ecfd82e287
Fix an infinite loop in CDT<EPIC, TDS, Exact_predicates_tag>
...
Add a test, that know passes, and previously failed.
2010-11-10 18:42:53 +00:00
Laurent Rineau
ea084037e3
Revert those commits:
...
| ------------------------------------------------------------------------
| r59165 | afabri | 2010-10-11 15:27:39 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| M /trunk/Triangulation_2/include/CGAL/Triangulation_euclidean_traits_xy_3.h
| M /trunk/Triangulation_2/include/CGAL/Triangulation_euclidean_traits_xz_3.h
| M /trunk/Triangulation_2/include/CGAL/Triangulation_euclidean_traits_yz_3.h
|
| Use the renamed class which now is in the Kernel package
| ------------------------------------------------------------------------
| r59159 | afabri | 2010-10-11 15:14:31 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| D /trunk/Triangulation_2/include/CGAL/internal/Triangulation_euclidean_traits_projected_3.h
|
| Move implementation of Projection_traits from Triangulation_2 to Kernel
| ------------------------------------------------------------------------
Now the work is in a branch.
2010-11-04 11:04:12 +00:00
Laurent Rineau
3b66f50862
Make operator<< of Weighted_point compatible with the pretty-mode (of
...
CGAL::set_pretty_mode).
2010-10-14 13:52:18 +00:00
Andreas Fabri
ef9882a4e4
Use the renamed class which now is in the Kernel package
2010-10-11 13:27:39 +00:00
Andreas Fabri
335fd1825f
Move implementation of Projection_traits from Triangulation_2 to Kernel
2010-10-11 13:14:31 +00:00
Sébastien Loriot
5bde754940
remove warnings
2010-07-15 09:14:09 +00:00
Olivier Devillers
974a5380d0
restore the old removal procedure for removal in Delaunay triangulation
...
if degree of removed point is > 7
The fast removal is still effective since the
specialized functions for degrees 3,4,5,6, and 7 are used.
Differences in benchmarks for high degrees between old and new was not
big anyway.
2010-07-15 07:51:12 +00:00
Sébastien Loriot
acd9a77bf7
add missing requirements to be used with natural_neighbor_coordinates_2
2010-07-05 10:07:39 +00:00
Sylvain Pion
049a45f32f
Remove useless default and copy ctors, and assignment operator.
2010-06-29 14:55:59 +00:00
Laurent Rineau
7254994bc3
Fix a warning (base class must be initialized).
2010-06-29 12:34:53 +00:00
Sébastien Loriot
5767088b4f
merge from branches/experimental-packages/Triangulation_2_new_projection_traits:
...
-factorization of projection trait classes into an internal trait class
-add missing functors to Triangulation_euclidean_traits_XX_3 required by CDT with intersections.
2010-06-24 15:34:38 +00:00
Laurent Rineau
7a8b79aa18
Merged revisions 57043-57044,57048,57055,57059,57069,57071 via svnmerge from
...
svn+ssh://lrineau@scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.6-branch
........
r57043 | sloriot | 2010-06-24 09:56:01 +0200 (Thu, 24 Jun 2010) | 3 lines
bug fix: missing Compare_distance in Triangulation_euclidean_traits_XX_3.h
........
r57044 | sloriot | 2010-06-24 10:04:32 +0200 (Thu, 24 Jun 2010) | 2 lines
update CHANGES
........
r57048 | sloriot | 2010-06-24 10:45:57 +0200 (Thu, 24 Jun 2010) | 2 lines
add missing const (thx Sylvain)
........
r57055 | sloriot | 2010-06-24 11:43:38 +0200 (Thu, 24 Jun 2010) | 2 lines
update doc
........
r57059 | lrineau | 2010-06-24 14:13:53 +0200 (Thu, 24 Jun 2010) | 2 lines
Yet another typo. I hope this it the last one.
........
r57069 | lrineau | 2010-06-24 17:12:43 +0200 (Thu, 24 Jun 2010) | 2 lines
cmake 2.8rc3 is published.
........
r57071 | lrineau | 2010-06-24 17:20:21 +0200 (Thu, 24 Jun 2010) | 2 lines
Fix yet another typo about CGAL_AUTO_?LINK_(GMP|MPFR)... :-(
........
2010-06-24 15:22:12 +00:00
Andreas Fabri
4d5300f583
Finally use ptrdiff_t as return type for insert(beg, end)
2010-06-23 13:29:04 +00:00
Andreas Fabri
9eb297b9e6
Integer32 -> size_t
2010-06-22 20:44:46 +00:00
Andreas Fabri
3bdbbd1404
As the insertion of points in a regular triangulation can reduce the number of vertices we have to replace size_t with ptrdiff_t (Thank you Sylvain for pointing this out)
2010-06-21 16:12:59 +00:00
Andreas Fabri
8e75125383
int -> size_type/std::size_t
2010-06-21 13:19:03 +00:00
Sébastien Loriot
29acae75e0
correct bug:
...
could not call points_begin() with regular_triangulation
2010-06-14 13:49:28 +00:00
Sébastien Loriot
52317dd49f
add python script (replace_CGAL_NAMESPACE.py) to replace CGAL_BEGIN_NAMESPACE and CGAL_END_NAMESPACE
...
by namespace CGAL { and } //namespace CGAL. in all .h and .cpp files
in a directory.
Apply it to all packages in the trunk
Remove macro definition from the config.h file.
2010-06-09 07:37:13 +00:00
Sébastien Loriot
5d2ee0dc70
add missing using push_back
...
(was unable to call push_back(Constraint) defined in base class)
2010-06-08 11:25:58 +00:00
Olivier Devillers
8948095088
adding this->
2010-06-01 07:29:36 +00:00
Olivier Devillers
9778b2d9a2
remove warning unused variable
2010-05-31 10:05:12 +00:00
Olivier Devillers
49d210b07d
fixing missing this->
2010-05-31 09:56:00 +00:00
Laurent Rineau
d168a37440
Merge the branch /branches/candidate-packages/Triangulation_2
...
- Work from:
Pedro Machado Manhaes de Castro <Pedro.Machado@sophia.inria.fr>
Olivier Devillers <Olivier.Devillers@sophia.inria.fr>
- The work is:
- fast removal for Delaunay_2 (Olivier)
- displacement for 2D triangulation (Olivier and Pedro)
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Move_T2T3
2010-05-31 08:24:29 +00:00
Laurent Rineau
75cc6f6057
Better C++ compliance (errors detected by Intel Compiler strict-ansi mode)
2010-05-08 10:07:13 +00:00
Andreas Fabri
b6f7fc6b47
Add this-> for Ansi compliance (why not using??)
2010-05-07 12:48:44 +00:00
Andreas Fabri
e91fc65a70
Add 'using' for strict ANSI compliance
2010-05-05 12:36:24 +00:00
Andreas Fabri
d0ffd795ee
Add 'this->' for strict ANSI compliance
2010-05-04 11:35:23 +00:00
Sébastien Loriot
ec840a9cbf
add missing Using detected by intel compiler
2010-04-26 08:20:17 +00:00
Menelaos Karavelas
ea5bd97d6d
removed code that I had added (face data)
2010-03-30 20:03:26 +00:00
Menelaos Karavelas
0f863c0d69
moved Face_data code further down so as to use typenames that have been defined
2010-03-29 19:29:24 +00:00
Menelaos Karavelas
7a633c5ed5
added additional data and methods for the in-place edge list
2010-03-29 19:17:25 +00:00
Menelaos Karavelas
10d919fffd
added data associated with each face of the triangulation. Like TDS3 the
...
data are to be used when computing the conflict region of an object
(applies to segments and circles) instead of using an std::map for
faces. the code is inside an #ifdef/#endif block and is activated by
defining the macro: CGAL_TDS2_DATA
2010-03-16 14:11:11 +00:00
Laurent Rineau
54a73ce38a
- Determinize the Constraint_hierarchy, to determinize Mesh_2 with
...
C_t_plus_2<CDT>.
- [documentation] Add something about the symbolic perturbation in
Delaunay_triangulation_2.tex
2010-03-16 11:03:14 +00:00