Commit Graph

304 Commits

Author SHA1 Message Date
Laurent Rineau b1022ef45b Result from:
svn merge
  '^/branches/experimental-packages/Triangualtion_2-projection_traits/Triangulation_2@48316'
  '^/branches/experimental-packages/Triangulation_2-projection_traits/Triangulation_2'
  .

I have merged the Triangulation_2 part of the branch
experimental-packages/Triangulation_2-projection_traits into the trunk.

This adds two files (traits classes), and a small patch to
Contrained_triangulation_2 (pass geomtraits by const ref instead of a
copy).

T2 testsuite locally launched successfully.
2009-12-08 11:11:33 +00:00
Andreas Fabri 14d46e3e5f templatize Triangulation_line_face_circulator so that it can be used with other classes than CGAL::Triangulation_2 2009-11-16 20:05:44 +00:00
Sylvain Pion 85c2848fa3 Make use of set_adjacency(). 2009-11-02 23:02:16 +00:00
Stéphane Tayeb 8dceee4164 Add include<CGAL/assertions.h> in *_assertion files. 2009-10-07 13:16:13 +00:00
Stéphane Tayeb 770492c1c7 Use new version of script create_assertions.sh to generate *_assertions.h files.
Diffs are:
 * #undef added
 * in old files, (void)0 is replaced by static_cast<void>(0)
 * in old files, lines as "#  define CGAL_xxx_assertion 1" are added
 * in point_set_processing_assertions.h, surface_mesh_parameterization_assertions.h, surface_reconstruction_points_assertions.h, "|| defined(CGAL_NDEBUG)" is replaced by "|| defined (NDEBUG)"
 * protective macros (if any) are removed
 * included files if any (<CGAL/assertions.h>, <CGAL/trace.h>) are removed
2009-10-07 07:49:44 +00:00
Sylvain Pion 516f8d5eee Same as revision 51948 on CGAL-3.5-branch :
Rename following the converging convention to prevent future incompatibility :
  - Vertex_container -> Vertex_range
  - Face_container   -> Face_range
  - Cell_container   -> Cell_range
2009-09-15 17:12:03 +00:00
Pedro Machado Manhaes de Castro 78e138ea32 clean-up move stuffs, since they are not documented yet 2009-09-03 11:44:12 +00:00
Pedro Machado Manhaes de Castro ec84ec13f7 orientation_2 -> orientation 2009-06-17 09:00:37 +00:00
Sylvain Pion 17b9d16680 Add nearest_vertex() for Delaunay hierarchies. 2009-04-22 12:43:33 +00:00
Sylvain Pion c1ae415b18 Remove short name macros. See PR 1551. 2009-04-21 18:28:04 +00:00
Sylvain Pion 6bcc8a8e5d Document TDS::Face_container, Vertex_container, faces() and vertices().
(renamed from vertex_container() and face_container()).
2009-04-10 15:45:02 +00:00
Laurent Rineau 5bf299c4a7 - Cleanup: use the global function and member functions of Line_3, Vector_3,
and so on, instead of using the functors of the kernel.
- Add a new class Triangulation_2_filtered_projection_traits_3
- Rename all classes Coplanar_* to Projected_*
2009-02-06 15:33:41 +00:00
Laurent Rineau e8394435df Cleanup: remove everything that is not used or commented. 2009-02-05 12:43:48 +00:00
Laurent Rineau e3306db3d2 - Add <CGAL/Triangulation_2_projection_traits_3.h> (need to be polished a
bit)
- demo/Triangulation_2/Terrain/ now use that projection traits, with a
  normal that can be changed interactively.
2009-02-04 22:56:45 +00:00
Sylvain Pion 4aa1cb057a Remove my email adress from header files. 2008-10-11 20:21:08 +00:00
Pedro Machado Manhaes de Castro 474d133ae7 improves speed form water to whine in the average 2008-10-08 13:44:06 +00:00
Sylvain Pion eeb6c8982e Fix "warning: array subscript is above array bounds". 2008-08-20 08:39:08 +00:00
Laurent Rineau 26e0fde130 Fix a warning with g++-4.3.1 and "-O3 -Wall". I am not sure to know why
that fixes the warning. For the record, it was:
-------------------------------------------
Compiling linking_2d_and_3d ... 
make[1]: Entering directory `/home/lrineau/CGAL/releases-and-testsuites/CGAL-3.4-I-407/test_i686_Linux-2.6_g++-4.3.1_CentOS-5.1-O3/Triangulation_3_Examples'
/usr/local/gcc43/bin/g++ -I../../include   -Wall -frounding-math '-I/home/lrineau/CGAL/releases-and-testsuites/CGAL-3.4-I-407/include/CGAL/config/i686_Linux-2.6_g++-4.3.1_CentOS-5.1-O3' '-I/home/lrineau/CGAL/releases-and-testsuites/CGAL-3.4-I-407/include' -O3 -pipe -I/home/lrineau/CGAL/bimap -I/usr/lib/qt-3.3/include -DCGAL_USE_F2C -DCGAL_USE_F2C  -c linking_2d_and_3d.cpp
../../include/CGAL/Compact_container.h: In member function 'typename CGAL::Triangulation_data_structure_2<Vb, Fb>::Vertex_handle CGAL::Triangulation_data_structure_2<Vb, Fb>::insert_dim_up(typename CGAL::Compact_container<typename Vb::Rebind_TDS<CGAL::Triangulation_data_structure_2<Vb, Fb> >::Other, CGAL::Default_argument>::iterator, bool) [with Vb = My_vertex_2<CGAL::Dummy_tds_3, CGAL::Triangulation_ds_vertex_base_2<void> >, Fb = CGAL::Triangulation_ds_face_base_2<void>]':
../../include/CGAL/Compact_container.h:772: warning: array subscript is above array bounds
/usr/local/gcc43/bin/g++   -o linking_2d_and_3d linking_2d_and_3d.o   '-L/home/lrineau/CGAL/releases-and-testsuites/CGAL-3.4-I-407/lib/i686_Linux-2.6_g++-4.3.1_CentOS-5.1-O3' -L/usr/lib/qt-3.3/lib -Wl,-R/home/lrineau/CGAL/releases-and-testsuites/CGAL-3.4-I-407/lib/i686_Linux-2.6_g++-4.3.1_CentOS-5.1-O3:/usr/lib/qt-3.3/lib -lCGAL -lCGALcore++ -lCGALQt -lCGALimageIO -lCGALPDB -lqt-mt -llapack -lGL -lGLU -lblas -lz -lmpfr -lgmpxx -lgmp -lX11 -lboost_thread -lboost_program_options -lm
make[1]: Leaving directory `/home/lrineau/CGAL/releases-and-testsuites/CGAL-3.4-I-407/test_i686_Linux-2.6_g++-4.3.1_CentOS-5.1-O3/Triangulation_3_Examples'
Executing linking_2d_and_3d ... 
-------------------------------------------

Maybe a gcc bug. Howerver, with that patch, the code seems easier to read
(the variable that contains the dimension is now named "dim", instead of
"i", and is filled as soon as the dimension() of the triangulation is
updated).
2008-08-18 14:59:24 +00:00
Sylvain Pion 24699dda52 Add missing header <CGAL/utility.h> 2008-07-27 11:32:19 +00:00
Sylvain Pion 79864c0c8e Remove Arity_tag. 2008-07-22 12:29:01 +00:00
Sylvain Pion 5ee8c389fb Use Kernel_traits. 2008-07-17 08:34:39 +00:00
Sylvain Pion bf1614bfa1 Use the new kernel typedefs K::Comparison_result and co. 2008-07-17 08:10:22 +00:00
Sylvain Pion 2eb0d8f9e9 certainly() -> possibly(). 2008-07-14 11:16:41 +00:00
Sylvain Pion eff6efd3af CGAL_NULL and CGAL_NULL_TYPE are now constant macros, so replace them by:
- CGAL_NULL -> NULL
- CGAL_NULL_TYPE -> CGAL::Nullptr_t (typedef to const void *)
2008-07-12 21:58:52 +00:00
Sylvain Pion 9d7a609ff2 Make assertions trigger an error only for *certain* conditions (using CGAL::certainly()).
This is useful for interval arithmetic code.
(replay of r44002 with the header order hopefully fixed)
2008-07-10 21:49:17 +00:00
Sylvain Pion 2b4ebf01f7 Undo r44002 as it's buggy 2008-07-06 20:47:29 +00:00
Sylvain Pion 514a17ad4f Improve the interaction of assertions and interval computations.
Things like "CGAL_assertion(denominator != 0)" produced assertion failures for no gain.
So now, the assertion is triggered only if the condition is certain, using CGAL::certainly().
That is, change the following in all assertion files :
  ((EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
to :
  (CGAL::certainly(EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
2008-07-06 17:05:47 +00:00
Laurent Rineau 488775954d In Constrained_triangulation_plus_2, rename the method "copy" into
"copy_triangulation", so that the operator= of 
Triangulation_hierarchy_2<Constrained_triangulation_plus_2<...>> can do the
right job.
2008-06-27 15:51:48 +00:00
Sylvain Pion 1d8779b171 Rename the following functions:
det2x2_by_formula
  det3x3_by_formula
  det4x4_by_formula
  det5x5_by_formula
  det6x6_by_formula
to:
  determinant

How cute...  a name independent of the dimension, and even readable !
2008-04-09 13:35:34 +00:00
Sylvain Pion b0f2c77fdc Remove casts to Oriented_side.
They are useless since we merged the various enum types.
2008-04-09 12:35:10 +00:00
Sylvain Pion b740e90de0 Rename the following functions:
sign_of_determinant2x2
  sign_of_determinant3x3
  sign_of_determinant4x4
  sign_of_determinant5x5
  sign_of_determinant6x6
to:
  sign_of_determinant

So that we have less dimension-dependent namings, at least internally...
2008-04-09 12:20:25 +00:00
Sylvain Pion c3ee0c0087 Remove CGAL_T2_USE_ITERATOR_AS_HANDLE and CGAL_T3_USE_ITERATOR_AS_HANDLE
as they are now always defined and things work.
2008-04-03 12:14:58 +00:00
Pedro Machado Manhaes de Castro 44f0158408 A small precondition 2008-03-31 17:33:48 +00:00
Pedro Machado Manhaes de Castro 64ae70e699 convex hull do not matter (even in this case) + little optimization 2008-03-21 15:32:54 +00:00
Sylvain Pion 1d47b96e3c Remove more useless enum_cast<>. 2008-03-20 16:46:25 +00:00
Pedro Machado Manhaes de Castro 55b1c90e6b little optimization 2008-03-14 12:46:43 +00:00
Pedro Machado Manhaes de Castro c50c75af92 little optimization for vertices of degree 3 2008-03-13 12:31:52 +00:00
Pedro Machado Manhaes de Castro 960f122b28 Optimizing move() 2008-03-10 11:07:15 +00:00
Pedro Machado Manhaes de Castro 606f62f2e4 Optimizing move() 2008-03-10 11:06:44 +00:00
Pedro Machado Manhaes de Castro 5924c97751 well_oriented() feets better in Triangulation_2.h 2008-03-06 12:05:36 +00:00
Pedro Machado Manhaes de Castro 927812ecad (not yet) 2008-03-05 15:38:33 +00:00
Pedro Machado Manhaes de Castro 1f8b9028ab trfixing 2008-03-05 15:20:46 +00:00
Pedro Machado Manhaes de Castro 879235ee1c Optimization on move() (that works only for Triangulation_2) 2008-02-28 16:00:38 +00:00
Pedro Machado Manhaes de Castro 8e40af475e Flexibility 2008-02-26 15:38:19 +00:00
Pedro Machado Manhaes de Castro a02fa7d3b5 flexibility 2008-02-26 15:37:55 +00:00
Pedro Machado Manhaes de Castro a79f32b497 fixing move(It, It) 2008-02-22 14:05:30 +00:00
Pedro Machado Manhaes de Castro 418185aa44 fixing move(It, It) 2008-02-22 14:05:01 +00:00
Pedro Machado Manhaes de Castro 8c07487188 Adding a method that moves a vertex from its coordinate to another one given by an arg. point. Also including a method that moves a set of points by giving a list of pairs (Vertex, Point). 2008-02-20 13:10:05 +00:00
Pedro Machado Manhaes de Castro 2cc11539f5 Adding a method that moves a vertex from its place to another one located at the arg. point coordinate. Also including a version that moves a set of points, giving a list of (vertex_handle, point). 2008-02-20 13:05:56 +00:00
Pedro Machado Manhaes de Castro 55c65d6efc Adding a method that changes the dimension of the data structure from 2D to 1D. 2008-02-20 13:03:58 +00:00
Trung Nguyen ef6370cf40 Retrivied from version 42050 and fixed the bug 2008-02-08 10:20:17 +00:00
Trung Nguyen fcbf9fb2ff Bug fix: overload the finite_vertex function 2008-02-08 09:23:00 +00:00
Sylvain Pion 6a9740d043 Remove obsolete workarounds for __sgi. 2008-01-20 23:09:58 +00:00
Sylvain Pion d437e38edf Remove comment about Borland, it's nice to have the Rebind here anyway. 2008-01-20 22:47:22 +00:00
Sylvain Pion 7f21002a5a Remove comment about Borland. It's nice to have the Rebind here anyway. 2008-01-20 22:46:28 +00:00
Sylvain Pion eb945bae48 SUNPRO workaround not needed anymore 2008-01-20 20:47:32 +00:00
Sylvain Pion 9d1a94c894 Remove unused/bitrotten sweep algorithm
(was only used by the obsolete leda-window demo which I just removed).
2008-01-12 16:07:55 +00:00
Sylvain Pion 687b1a97f1 Add preconditions in set_neighbor() that a face is not the neighbor of itself. 2008-01-10 22:39:55 +00:00
Sylvain Pion b10d06a9f3 Get rid of obsolete Window_stream (LEDA window) code. 2008-01-10 17:47:25 +00:00
Sylvain Pion 484dd113ce Fix bug in split_vertex() reported by Richard Maierhofer. 2008-01-08 20:47:51 +00:00
Sylvain Pion c2651f99e7 Get rid of CGAL_REP_CLASS_DEFINED 2008-01-03 18:49:18 +00:00
Sylvain Pion 88ed563f44 Remove some workarounds for SunPRO + RW's STL:
CGAL_CFG_MISSING_TEMPLATE_VECTOR_CONSTRUCTORS_BUG
CGAL_CFG_RWSTD_NO_MEMBER_TEMPLATES  (partially so far)
CGAL_make_vector
CGAL_make_list
2008-01-03 14:50:13 +00:00
Sylvain Pion ea0b9ea02b Disable short name macros for T2 and T3 to see if they are
still really needed.
2007-12-30 23:54:19 +00:00
Sylvain Pion d49e006c53 Remove default argument "0" to calls to assertion_fail() et al,
as the default is now the empty string "".
It should fix the problem that we have lost the assertion messages
(seeing "what():  basic_string::_S_construct NULL not valid" instead),
for packages that use package-specific assertion macros.
2007-12-21 21:58:27 +00:00
Mariette Yvinec cccd5229ab fixed the include statement. 2007-12-07 13:14:48 +00:00
Andreas Fabri c1692c50bf Let's see what happens when VC++ uses iterators as handles 2007-11-08 10:25:52 +00:00
Andreas Meyer fdeedcf8b0 some low level code cleanup. renamed
* CGAL_error to CGAL_error_msg
* introduced a macro CGAL_error()
* added some words about CGAL_error to the developers manual
* renamed most of assert(x) into CGAL_assertion(x)
* renamed exit(x) with x != 0 , CGAL_assertion(false) and assert(false) into CGAL_error
* CORE left untouched, OpenNL changed
2007-11-07 16:51:18 +00:00
Sylvain Pion d3c7269dba Replace abort() by assertion (in commented code). 2007-11-05 10:09:02 +00:00
Sylvain Pion ef264999b3 Renaming of Compact_container's construct_insert() to emplace() to match C++0x.
It breaks backward compat, but I doubt many people use Compact_container directly.
Make it use variadic templates, while at it.
2007-10-20 20:51:59 +00:00
Sylvain Pion a25c35c992 Add declaration of Regular_triangulation_filtered_traits_2 to prevent problems
due to cyclic dependency.
2007-10-03 14:13:50 +00:00
Sylvain Pion cfa52e21ed Update following renaming EK -> Exact_kernel and FK -> Approximate_kernel. 2007-09-07 09:47:42 +00:00
Christophe Delage 3feac5dc4c Faster insert for iterator ranges in Triangulation_hierarchy_2. 2007-09-05 13:57:52 +00:00
Sylvain Pion 76408cc24f Remove obsolete config flag CGAL_CFG_USING_BASE_MEMBER_BUG_3. 2007-08-09 09:48:44 +00:00
Sylvain Pion 4da7713aa8 Remove obsolete config flag CGAL_CFG_NO_STDC_NAMESPACE and rename
its dependant macro CGAL_CLIB_STD to "std".
2007-08-08 15:59:25 +00:00
Sylvain Pion 4f24f131d7 Remove obsolete CGAL_CFG_CONVERSION_OPERATOR_BUG config flag. 2007-08-08 14:59:33 +00:00
Camille Wormser 90028cb645 Filtering out the insertion of repeated weighted points, allowing
is_valid to return true...
2007-07-04 12:08:20 +00:00
Andreas Fabri b46bcf6f39 To add IO for the _with_info vertex and face class systematically seems to be a bad idea and needs more discussion 2007-06-28 17:41:51 +00:00
Andreas Fabri df83159918 operator << must not write whitespace in case of binary IO 2007-06-28 09:57:45 +00:00
Andreas Fabri 5b284c2695 Added IO operators for _with_info vertex and face class 2007-06-28 08:12:23 +00:00
Camille Wormser c3c1207995 Correcting the bug reported by Bernhard Kornberger where
the Regular_triangulation_2 crashes with the exact_contructions
kernel (removing access to uninitialized data).
2007-06-27 13:19:56 +00:00
Sylvain Pion f11efea26a Slight optimization 2007-06-11 16:18:58 +00:00
Sylvain Pion 6ad01b8bc6 Use CGAL_make_vector 2007-04-02 20:40:18 +00:00
Christophe Delage 57b145ec32 Fix bug in T2::locate() when the triangulation is a Regular_triangulation_2,
and dimension() is 0, and there are hidden vertices.
2007-03-26 08:59:11 +00:00
Christophe Delage c3450d9161 Added spatial_sort support in iterator range insert() & ctors.
This adds requirements to TriangulationTraits2 concept :
Less_x_2 and Less_y_2 predicates.

Also fixes a few bugs in RT2 (hidden points were sometimes forgotten
in degenerate dimensions.)
2007-03-21 15:29:30 +00:00
Sylvain Pion b3f15e4ae0 Fix "uninitialized base class" warning. 2007-03-19 09:13:48 +00:00
Andreas Fabri a7bf2b4523 remove unused parameter 2007-03-19 08:21:00 +00:00
Andreas Fabri 58a21dbe89 bugfix and code simplification 2007-03-15 18:08:18 +00:00
Andreas Fabri d9f901560e bugfix and get rid of warning 2007-03-15 15:35:47 +00:00
Sylvain Pion 5d3bbb5829 Fix some optimized test-suite warnings (variables can be used uninitialized),
by restructuring a bit :

  -  bool      get_contexts(T va, T vb, H_context_list*&) const;
  +  H_context_list * get_contexts(T va, T vb) const;

And updated callers (now NULL encodes the old false return value).
2007-03-08 13:32:45 +00:00
Andreas Fabri 6f0cda39a7 fix for bug #1533 2007-03-07 10:13:23 +00:00
Sylvain Pion e5a64b0088 remove warning 2007-03-03 08:21:10 +00:00
Andreas Fabri 42dac6c89d A fix so that test/Interpolation/test_regular_neighbors_2.C passes 2006-11-13 10:41:11 +00:00
Sylvain Pion b694e24056 Fix typo in last change.
Specialize Regular_traits for Filtered_kernel<> instead of only EPICK,
to cover EPECK as well.
2006-08-03 22:10:19 +00:00
Sylvain Pion 1afa951839 - Add a "Kernel" typedef in the Regular_*_traits_* to be able to
fetch its template parameter.
2006-08-03 16:21:32 +00:00
Mariette Yvinec a902e532ff rename global function power_test into power_test_2
to avoid clash with Triangulation_3
2006-08-02 11:43:20 +00:00
Andreas Fabri 8ec19079fb Fixed min max problem 2006-07-31 23:06:16 +00:00
Andreas Fabri 293a1ebeae Honor the hint 2006-07-12 14:26:47 +00:00
Sylvain Pion 45bfd07a83 Remove some #include <CGAL/Arithmetic_filter/...> (Filtered_exact stuff). 2006-07-12 12:03:52 +00:00
Laurent Rineau e9e3bf6deb - fix i/o operators of Weighted_point, in binary mode. 2006-07-12 01:01:59 +00:00
Mariette Yvinec 8cd852c447 CGAL:: qualification of filter_iterator to protect against ADL. 2006-06-16 07:28:02 +00:00
Sylvain Pion 930150c7ee - Remove some warnings, and some useless point copies. 2006-03-25 11:16:13 +00:00
Laurent Saboret db6a8f948c Change CVS keywords to SVN style 2006-02-16 14:30:13 +00:00
Laurent Saboret 1aad55d4cb Change CVS keywords to SVN style 2006-02-14 10:08:15 +00:00
Laurent Saboret 3ad3429283 Move packages to trunk root 2006-02-14 08:58:20 +00:00