3.98 (? November 2002) - Remove unused include/CGAL/Kernel/traits_aids.h 3.97 (5 November 2002) - qualify left_turn with CGAL:: to remove ambiguity when LEDA < 4.4 used - remove obsolete config flag in rational_rotation related to std::swap 3.96 (25 October 2002) - Rewrite iterator traits pointer specs. 3.95 (9 October 2002) - Remove Kernel_traits_common.h. 3.94 (9 October 2002) - Missing #include 3.93 (5 October 2002) - Functors rewrite. - New Is_a_predicate<> to differentiate predicate functors from constructions. 3.92 (12 August 2002) - Test if CGAL_ALLOCATOR is already defined before defining it. - Introduce CGAL_MEMORY, similar to LEDA_MEMORY. - Fixes for New_delete_allocator. - Handle_for memory leak fixed : initialize_with() now assigns instead of constructing, so that it works correctly after Handle_for has been default constructed. There's a new way of constructing a Handle_for : Handle_for(TO_BE_USED_ONLY_WITH_CONSTRUCT_WITH) followed by construct_with(), which is supposed to produce more efficient code. Simple_handle_for also accepts it. 3.91 (16 July 2002) - Add #include on top of Object.h and Handle_for_virtual.h. -------------------------- CGAL 2.4 released --------------------------- 3.90 (22 April 2002) - Add default ctor to Cartesian_double_to_Homogeneous to shut up warning of SunPro in RobustnessDemo. 3.89 (15 April 2002) - some changes for LEDA namespace and VC7 3.88 (27 March 2002) - Added Arity_traits for VC7. 3.87 (25 March 2002) - removed more iterator traits pointer spec macro calls for Point_d 3.86 (22 March 2002) - removed the iterator traits pointer spec macro calls for Point_d 3.85 (20 March 2002) - added CGAL_LEDA_SCOPEs where needed for in kernel_to_kernel.h 3.84 (20 March 2002) - removed Point_d; better number type stuff 3.83 (19 March 2002) - moved LEDA_basic.h and LEDA/allocator.h files to LEDA package 3.82 (18 March 2002) - added LEDA basic file to accommodate LEDA namespace to be introduced with LEDA 4.4 3.81 (6 February 2002) - Fix the impossibility to derive from Object. 3.80 (25 January 2002) - Oops... Missed a "cvs update" before submitting... 3.79 (24 January 2002) - Gather function objects in Kernel/function_objects.h. 3.78 (18 January 2002) - Fix previous patch. 3.77 (18 January 2002) - Constify Origin and Null_vector. 3.76 (16 January 2002) - Support namespace LEDA. 3.75 (8 January 2002) - Adding CGAL_CLIB_STD:: for abort() and exit() in src/assertions.C. - Adding missing opposite(Comparison_result). 3.74 (5 January 2002) - Move classes _Twotuple, _Threetuple, _Fourtuple to Cartesian/Rep_tuples.h in package Cd. 3.73 (4 January 2002) - Fix Handle_for<> default ctor : it forgot to construct the object. 3.72 (14 December 2001) - VC++ 7 support by Radu. 3.71 (5 December 2001) - Just resubmit. 3.70 (5 December 2001) - added CompareSlopes_2 function object 3.69 (5 December 2001) - Add functional_base.h from STL extensions. 3.68 (2 December 2001) - Remove useless copy ctor in Object to please VC++. - Merges Object_base into Ref_counted_virtual. 3.67 (26 November 2001) - Missing namespace CGAL in tags.h. 3.66 (23 November 2001) - [Simple_]Handle_for new ptr access : const/non-const Ptr/ptr. 3.65 (21 November 2001) - Darwin support. - Fix Conic_2 3.64 (19 November 2001) - Move assign() to a template member function of Object. 3.63 (31 October 2001) - Missing include of cstddef in New_delete_allocator.h 3.62 (29 October 2001) - Missing std:: for CodeWarrior. 3.61 (29 October 2001) - Submission bug. 3.60 (24 October 2001) - New Handle_for_virtual<> and Ref_counted_virtual. - Ref_counted is not required anymore. - Remove all Simple_* rep classes as deriving from Ref_counted is not necessary anymore. - basic.h cleanup. 3.59 (23 October 2001) - Delete No_op_allocator.h. - removed KERNEL_CTOR* macros and KERNEL_FRIEND_INLINE macros - Cleanup Object.h. 3.58 (5 October 2001) - [Simple_]Handle_for<> protection cleanup, non-const Ptr() added. - Remove cartesian_classes.h. - Add New_delete_allocator.h. - Handle_for<> should work for virtual hierarchies now. 3.57 (12 September 2001) - Fixes for SunPro. 3.56 (15 August 2001) - Oops : #ifdef instead of #ifndef. 3.55 (15 August 2001) - SunPro has problems with protected/friend. 3.54 (15 August 2001) - Add SunPro support in memory.h. ======================== CGAL 2.3 ======================== 3.53 (23 July 2001) - renamed cmp_* to compare_* and *_dist_* to *_distance_* and leftturn, Leftturn, LEFTTURN to left_turn, Left_turn, LEFT_TURN and rightturn, Rightturn, RIGHTTURN to right_turn, Right_turn, RIGHT_TURN and compare_lexicographically* to compare_* (deprecated the old names but didn't remove them). 3.52 (18 July 2001) - changed Less_distance_to_point_[23] to use default construction - changed Less_rotate_ccw_2 to use default construction - removed redundant Left_of_line_2 3.51 (12 July 2001) - Add Kernel_traits<>. 3.50 (12 July 2001) - Added Arity to Call_perpendicular_to_get. 3.49 (10 July 2001) - further traits update - New predicate : coplanar_orientation(3 points). 3.48 (26 June 2001) - Deprecate Equal_xy_2 and Equal_xyz_3. 3.47 (21 June 2001) - Cleanup kernel_to_kernel.h - Use new macros for the traits interface so that it can be reused elsewhere. 3.46 (21 June 2001) - Traits update. 3.45 (20 June 2001) - Cleanup misc.h and don't include it from basic.h. - Added Construct_orthogonal_vector_[23] - Added Construct_opposite_vector_[23] 3.44 (19 June 2001) - Change to support cgal_window instead of LEDA (CGAL_USE_CGAL_WINDOW). 3.43 (19 June 2001) - added Construct_centroid_[23] 3.42 (19 June 2001) - added Bounded_side_2 and Bounded_side_3 to traits 3.41 (18 June 2001) - #include all _2 and _3 classes in user_classes.h. 3.40 (7 June 2001) - Move homogeneous-only files to H2. 3.39 (30 May 2001) - Remove Compare_distance_to_point_[23]. 3.38 (29 May 2001) - Add Compare_distance_[23]. 3.37 (1 May 2001) - angle(). - compare_x_at_y() - Less_signed_distance_to_plane_3 3.36 (27 Apr 2001) - Rename construct_tetrahedron_object to construct_tetrahedron_3_object. 3.35 (26 Apr 2001) - Change coplanar_side_of_oriented_circle to coplanar_side_of_bounded_circle. 3.34 (13 Apr 2001) - Remove Coplanar_orientation(3 points, 1 vector). 3.33 (13 Apr 2001) - Coplanar_side_of_oriented_circle. 3.32 (6 Apr 2001) - Port to alpha. 3.31 (23 Mar 2001) - Add Construct_center_[23]. 3.30 (20 Mar 2001) - squared_radius() and Compute_squared_radius_2 and _3. 3.29 (16 Mar 2001) - Side_of_bounded_circle_2 and Side_of_bounded_sphere_3. 3.28 (6 Mar 2001) - Added Compute_squared_distance_2 and 3. - Remove references to point_vector_declarationsH2.h. 3.27 (28 Feb 2001) - Added iterator_traits_pointer_specs_for_simple_homogeneous_kernel.h 3.26 (25 Feb 2001) - iterator_traits_pointer_specs_for_simple_cartesian_kernel.h fixes. - Allow changing inline policy without having to modify CGAL files... 3.25 (21 Feb 2001) - Added Construct_cross_product_vector_3, with corresponding template class v_Cross_product<>. - iterator_traits_pointer_specs_for_simple_cartesian_kernel.h fixes (PointCd is the same as in Cartesian). 3.24 (20 Feb 2001) - Fix result_type of p_Orientation<>. 3.23 (19 Feb 2001) - Removed useless operator() in Coplanar_orientation, which caused a problem with VC++. - Make SunPro happier. 3.22 (14 Feb 2001) - moved Kernel_traits_common.h from Cartesian_kernel package - moved predicate_objects_on_points.h from Convex_hull_2(?!) package. 3.21 (13 Feb 2001) - Added several missing function object classes - modified homogeneous_rep.h to include Kernel_common_traits.h to reduce code base - added function object classes Compute_area_2, Compute_squared_area_3, Compute_volume_3 - Towards Simple_homogeneous. - Move Data_accessorH2<> in its own file in the H2 package. 3.20 (25 Jan 2001) - Added iterator_traits_pointer_specs_for_simple_cartesian_kernel.h 3.19 (18 Jan 2001) - Remove warnings in No_op_allocator. - long_long.h now defines CGAL_HAS_INTEGER64. 3.18 (12 Jan 2001) - Simple_Handle_for.h added - Simple_Twotuple, Simple_Threetuple, Simple_Fourtuple, Simple_Sixtuple added 3.17 (10 Dec 2000) - Homogeneous<>::Coplanar_orientation_3 added - Homogeneous<>::Compare_distance_to_point_2 added - Homogeneous<>::Compare_distance_to_point_3 added - function_objects.h: Coplanar_orientation added - function_objects.h: Compare_distance_to_point added 3.16 (12 Nov 2000) - in Handle_for: typedef RefCounted element_type; added 3.15 (15 Oct 2000) - const typename Allocator::pointer Ptr() const { return ptr; } added in Handle_for.h as requested by Sylvain %%%%%%%%%%%%%%%%%%%%%% R e l e a s e 2 . 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%% 3.14 (15 Sep 2000) - CGAL::min/max with CGAL_CFG_USING_USING_BUG) || defined(CGAL_CFG_BROKEN_USING) now returns NT instead of const NT& 3.13 (10 Aug 2000) - Homogeneous<>::Compute_y_at_x_2 fixed (_2 added) 3.12 (07 Aug 2000) - to_double(leda_integer) qualified by :: in kernel_to_kernel.h 3.11 (02 Aug 2000) - Handle_for<>::id is const now 3.10 (02 Aug 2000) - include added to kernel_to_kernel.h 3.9 (26 Jul 2000) - added Handle_for<>::identical(const Handle_for& h) to check for sharing RefCounted - added Handle_for<>::id(); returns long int 3.8 (14 Jul 2000) - result_type added to function objects in Kernel/function_objects.h not for Call_transform (return type depends on template parameter) - added (with preliminary limited functionality) 3.7 (27 Jun 2000) - CGAL_NTS sign used insteda of CGAL::sign in sign_of_determinant.h - Construct_circumcenter_3 added to homogeneous kernel traits - CGALi::p_Circumcenter extended to handle 3d case as well 3.6.1 (08 Jun 2000) - flag test for using std::max and std::min refined - CGAL_NTS defined in basic.h 3.6 (05 Jun 2000) - Handle_for<..., Allocator>::ptr has now type Allocator::pointer - Handle_for::Handle_for(const RefCounted&) constructor added to Handle_for. Handle_for::initialize_with(const RefCounted&) added. - CGAL_CFG_BROKEN_USING used now to check for broken using with using std::max and std::min in 3.5.1 (31 May 2000) - __MSC_VER (temporarily) used instead of CGAL_CFG_USING...BUG with using std::max and std::min added to 3.5 (30 May 2000) - Reflection added as transformation tag - added - Compare_x_at_y_2 added to homogeneous traits - count in Handle_for is now of type 'unsigned int' - using std::max and std::min added to 3.4.2 (19 Apr 2000) - Tuples modified - _Assert_tag_class -> Assert_tag_class 3.4.1 (13 Apr 2000) - homogeneous traits makeFT_ is now make_FT again bug was caused by s/_FT/FT_/ ;) 3.4 (07 Apr 2000) - included before for #if ((__GNUC__ == 2) && (__GNUC_MINOR__ == 95)) - Old_style_tag added to representation_tags.h 3.3.1 (31 Mar 2000) - added Counterclockwise_in_between_2 to homogeneous traits - added CGALi::Counterclockwise_in_between 3.3 (29 Mar 2000) - nested types Object_2, Object_3, Assign_2, and Assign_3 added to homogeneous traits - CGALi::Assign added - compare_lexicographically_xy used instead of compare_xy in CGALi::Compare_xy 3.2 (28 Feb 2000) - since friendship is not inherited, making Handle_for a friend of Ref_counted does not suffice to access count member in the derived class. The referenece counted object now must provide functions add_reference() remove_reference() bool is_referenced() bool is_shared() The Handle_for does not know anymore, where and how the counting takes places. However, it assumes that count is initialized to 1 in default and copy constructor. - added to package 3.1.1 (22 Feb 2000) - added o defines Rightturn_by_Leftturn adapter 3.1 (16 Feb 2000) - new Tuples derived from Ref_counted added to the <...tuple.h> files 3.0 (14 Feb 2000) - CGAL/Handle_for.h added; provides classes Handle_for and Ref_counted; see Developers' manual - CGAL/memory.h added; defines the default allocator used by Handle_for<> - CGAL::Object revised and simplified as suggested by Michael Seel One level of indirection has been removed. The code now assumes that dynamic_cast<> is supported. %%%%%%%%%%%%%%%%%%%%%% R e l e a s e 2 . 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%% 2.8.4 -> 2.9 (04 Dec 99) - long long removed from definitions are now in new 2.8.3 -> 2.8.4 (15 Nov 99) - test for NULL added again and precondition check removed Leda_like_handle in Handle.h 2.8.2 -> 2.8.3 (29 Oct 99) - test for NULL removed and precondition check added in class Leda_like_handle in Handle.h - further missing file added 2.8.1 -> 2.8.2 (28 Oct 99) - further missing files added 2.8 -> 2.8.1 (28 Oct 99) - missing file added (Object.h) 2.7.2 -> 2.8 (28 Oct 99) - Handle.h revised. CGAL defines handle-rep scheme analogously to the LEDA types even if LEDA Handles are used. Names of the classes are Leda_like_handle and Leda_like_rep. NULL used. 2.7.1 -> 2.7.2 (11 Oct 99) - ENDIAN definition moved to front in CGAL/basic.h 2.7 -> 2.7.1 (06 Oct 99) - definitions for long added to iterator_traits_pointer_specs - macro for old style PointCd added (new style in comment) 2.6.2 -> 2.7 (05 Oct 99) - iterator_traits_pointer_specs_for_cartesian_kernel.h iterator_traits_pointer_specs_for_cartesian_quotient.h iterator_traits_pointer_specs_for_homogeneous_kernel.h added - include iterator_traits_pointer_specs_for_homogeneous_kernel.h added at the end of Homogeneous.h 2.6.1 -> 2.6.2 (14 Sep 99) - Object was missing in package 2.6 -> 2.6.1 (11 Sep 99) - #include added to 2.5.2 -> 2.6 (10 Sep 99) - s/Base/Object_base/g s/_Object/Object_rep/g in 2.5.1 -> 2.5.2 (07 Sep 99) - added Homogenous_tag to class Homogeneous 2.5 -> 2.5.1 (05 Sep 99) - renamed class Identity to Identity_transformation 2.4.3 -> 2.5 (02 Sep 99) - homogeneous_rep.h not generated from old source but NewKernel 2.4.2 -> 2.4.3 (02 Sep 99) - added id() if CGAL_USE_LEDA - added Accessor to Homogeneous - added Point_d to Homogeneous 2.4.1 -> 2.4.2 (01 Sep 99) - intermediate test version with 'kernel as traits' 2.4 -> 2.4.1 (31 Aug 99) - added Identity to Aff_transformation_tags 2.3 -> 2.4 (19 Aug 99) - Homogeneous revised to reflect template CGAL::Point_2 : public R::Point_2_base We have how in CGAL::Homogeneous, e.g., typedef Homogeneous R; typedef PointH2 Point_2_base; typedef CGAL::Point_2< R > Point_2; 2.2 -> 2.3 (04 Aug 99) - CGAL_FRIEND_INLINE and CGAL_KERNEL_FRIEND_INLINE defined in - still needs update for mips 2.2 -> 2.2.1 (26 Jul 99) - predicates/sign_of_determinant.h now includes determinant.h, if not included yet 2.1 -> 2.2 (26 Jul 99) - CGAL-2.0/include/CGAL/known_bit_size_integers.h extended for Borland and M$ Visual C++ as suggested by Dima - determinant.h split in determinant.h and predicates/sign_of_determinant.h essentially as suggested by Sylvain - Circle_2 added to user_classe.h (as requested by Herve) - _Vector_?_rft_wrapper removed from user_classe.h - homgeneous.h: parameterization of class Homogeneous changed (in the spirit of the implementation classes *H2 ) #ifndef CGAL_CFG_NO_DEFAULT_TEMPLATE_ARGUMENTS template > #else template #endif class Homogeneous The flag is most likely redundant for the compilers supported by CGAL. 2.0.11-> 2.1 (26 Jun 99) - CGAL-2.0/include/CGAL/known_bit_size_integers.h extended: (defined(__powerpc__) || defined(__powerpc) || defined(powerpc)) %%%%%%%%%%%%%%%%%%%%%% R e l e a s e 2 . 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%% 2.0.10-> 2.0.11 (06 May 99) - compare qualified in determinant.h 2.0.9 -> 2.0.10 (28 Apr 99) - flags in perfixed by CGAL_ again 2.0.8 -> 2.0.9 (30 Mar 99) - to_double() prefixed by CGAL:: 2.0.7 -> 2.0.8 (30 Mar 99) - inclusion order changed in : config first! 2.0.6 -> 2.0.7 (29 Mar 99) - inclusion order changed in ; and included before (if CGAL_USE_LEDA defined). 2.0.5 -> 2.0.6 (24 Mar 99) - dirty hack for making g++-2.8.1 happy with function template for identical() 2.0.4 -> 2.0.5 (20 Mar 99) - re-generated by new script - flag CGAL_NO_NAMESPACE corrected in - Orientation replaced by Sign in - call of sign() in 'prefixed' by CGAL:: 2.0.3 -> 2.0.4 (15 Mar 99) - bug in Handle.h (use without LEDA) fixed (missing prefix in macro call) - cerr and endl prefixed by std:: in 2.0.2 -> 2.0.3 (15 Mar 99) - static_cast(compare(..)) replaced by static_cast(static_cast(compare(..))) in 2.0.1 -> 2.0.2 (14 Mar 99) - #include added to - #include added to - revised - swap definition removed from ( is now included) - sign(compare(...)) replaced by static_cast(compare(..)) in 2.0 -> 2.0.1 (24 Feb 99) - CGAL_[BEGIN|END]_NAMESPACE used 1.2.12-> 2.0 - namespace CGAL { } introduced - CGAL_Bounded_side reversed - EXIT_WITH_SUCCESS added - convert_to modified as suggested by Sylvain to ease specialisation - convert_from_to added to - sign_of_determinant added to %%%%%%%%%%%%%%%%%%%%%% R e l e a s e 1 . 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%% 1.2.11-> 1.2.12 - #include added to functions_on_enum.h 1.2.10-> 1.2.11 - new improved determinant code by Sylvain's generator - code for det6x6 added (not tested yet) 1.2.9 -> 1.2.10 - authors for determinant.h updated 1.2.8 -> 1.2.9 - det4x4_by_formula improved as suggested by Sylvain and Olivier 1.2.7 -> 1.2.8 - #define CGAL_KERNEL_INLINE inline added again 1.2.6 -> 1.2.7 - SunPro CC does not like #define CGAL_KERNEL_INLINE inline undone! 1.2.5 -> 1.2.6 - #ifndef CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION now encapsulates definition of CGAL_convert_to() 1.2.4 -> 1.2.5 - generic CGAL_convert_to() added to - inline-policy changed in : #define CGAL_KERNEL_INLINE inline 1.2.3 -> 1.2.4 - added include-statements for usage without LEDA as proposed by Sven on cgal-develop 1.2.2 -> 1.2.3 - definition of CGAL_opposite() in changed 1.2.1 -> 1.2.2 - headers in , , and corrected 1.2 -> 1.2.1 - inclusion order of and reversed in 1.1.4 -> 1.2 - basic_lk.h mostly integrated into basic.h; Known size integers are now in known_bit_size_integers.h - classes CGAL_PointCd and CGAL_PointHd declared in homogeneous_classes.h and cartesian_classes.h . Corresponding typedefs added to the rep classes. - Compile-time-tags for representation classes added in new file representation_tags.h (included in ..._rep.h files) - Rep_tags added to CGAL_Homogeneous and CGAL_Cartesian - Cartesian part separated into Cartesian_basic.tar.gz (for ease of maintenance) 1.1.3 -> 1.1.4 - bug in Cartesian - homogeneous conversion for points fixed 1.1.2 -> 1.1.3 - workaround for dynamic cast bug added to Object.h 1.1.1 -> 1.1.2 - old assertions.h used 1.1 -> 1.1.1 - missing file and assertion stuff included 1.0 -> 1.1 - kernel_assertions.h included earlier 0.9 -> 1.0 - new version of Object.h - new workaround names - new inlining policy - some stuff for optimization package - Cartesian - homogeneous conversion for points