Commit Graph

719 Commits

Author SHA1 Message Date
Maxime Gimeno b04369cc6b Don't assert OFF type 2018-12-11 14:55:00 +01:00
Maxime Gimeno 548f86b98b Check stream state before allocating memory. 2018-12-11 14:35:25 +01:00
Sébastien Loriot 56de16c9c0 workaround (a compiler bug?) 2018-12-07 10:44:25 +01:00
Andreas Fabri 5b62f06871 Fix merge conflicts 2018-11-12 13:02:52 +01:00
Sébastien Loriot d940632471 Merge pull request #3258 from MaelRL/PMP-Filter_degenerate_polygon_soup_input-GF
PMP: repair polygon soup
2018-11-02 10:37:58 +01:00
Laurent Rineau 3c6538f80f Merge pull request #3377 from Simon-Lopez/simon_cgal_#3375
Proposal to fix issue #3375
2018-10-29 10:42:37 +01:00
Laurent Rineau 821f9c015e Merge pull request #3311 from sloriot/Doc-Pkg_link_name
Update the name of package names reference links
2018-10-29 10:27:53 +01:00
Laurent Rineau fb7dc495b0 Merge pull request #3377 from Simon-Lopez/simon_cgal_#3375
Proposal to fix issue #3375
2018-10-29 10:27:41 +01:00
Sébastien Loriot 915c3e7fec use a vector for dynamic properties of const Surface_mesh
also done for OpenMesh types
2018-10-25 17:05:21 +02:00
Sébastien Loriot 72acbee3f5 fix warnings 2018-10-24 11:12:55 +02:00
Guillaume Damiand ae5b6e00ad Bug fix in basic viewers when using EPEK.
For polyhedron, surface mesh and LCC viewers, we compute face and vertex normals in the basic viewers. These normals should be computed in a Vector_3 of a non exact kernel.
2018-10-15 14:58:52 +02:00
Andreas Fabri 0dc1cf2aeb Dón't use CGAL_TEST_SUITE as travis and even me are not the testsuite 2018-10-12 10:25:42 +02:00
Andreas Fabri 992294f79f Add a testcase for Surface_mesh::join() 2018-10-10 10:43:22 +02:00
Simon Lopez 3622f1cfec Proposal to fix issue #3375 2018-10-10 10:43:22 +02:00
Mael Rouxel-Labbé d18e21cfe7 Merge branch 'PMP-Filter_degenerate_polygon_soup_input-GF-old' into PMP-Filter_degenerate_polygon_soup_input-GF 2018-10-08 16:19:26 +02:00
Sébastien Loriot 2f9408f867 rename link name to match package name 2018-10-08 10:28:55 +02:00
Sébastien Loriot ea240cfac5 use \PkgXXX instead of \PkgXXXSummary 2018-10-08 10:28:44 +02:00
Guillaume Damiand 2273762e7e Remove debug message 2018-09-10 14:11:36 +02:00
Guillaume Damiand ddd7f8fa3b Add an option to disable viewer when running ctest. 2018-09-07 13:29:38 +02:00
Guillaume Damiand 2c8af2ebcc Update all draw_XXX functions to use specialized version, allowing to use different draw in a same program. 2018-09-06 18:43:32 +02:00
Sébastien Loriot 376bc42716 update URL and use https 2018-09-04 13:29:51 +02:00
Maxime Gimeno 8d0a67095f Merge branch 'master' into IntrinsicFaceGraph-V2 2018-08-01 15:40:36 +02:00
Mael Rouxel-Labbé 16a9bc4d7c Fixed some links / concepts related to sgi.com and cppreference 2018-07-26 16:27:58 +02:00
Sébastien Loriot 82ef11845f fix constness issues 2018-07-18 14:31:14 +02:00
Sébastien Loriot a31753df4a handle const graph for face dynamic tag 2018-07-18 09:12:05 +02:00
Laurent Rineau 5023020809 Merge pull request #3126 from sgiraudot/Classification-Clusters_and_meshes-GF
Classification 2.0
2018-07-12 11:37:13 +02:00
Sébastien Loriot cf91f7037e Merge branch 'cgal/releases/CGAL-4.12-branch' 2018-07-09 09:26:24 +02:00
Sébastien Loriot 73e3e86980 make the test compiles.
@afabri This shows what I meant in https://github.com/CGAL/cgal/issues/3138
Here the fix is only minimal, but it should be done consistently for all
simplex type of Surface_mesh, and also probably for OpenMesh types
2018-07-06 09:13:02 +02:00
Simon Giraudot e1da290f13 Fix conversion warning 2018-07-05 09:08:28 +02:00
Simon Giraudot d27c5a97db Make Index_iterator of Surface_mesh really compliant to random access concept 2018-07-05 09:08:27 +02:00
Simon Giraudot b894992e8d Make Surface Mesh Index_iterator random access 2018-07-05 09:07:31 +02:00
Sébastien Loriot 6d0cca9a29 convenience function write_off uses documented one 2018-06-29 08:46:21 +02:00
Laurent Rineau 0e4e50f2e7 Merge pull request #3060 from maxGimeno/BGL-read_write_off_use_np-GF
BGL: Use Named Parameters in OFF I/O
2018-06-27 10:21:33 +02:00
Laurent Rineau 5ec1b841b7 Merge pull request #3170 from MaelRL/CGAL-Fix_some_STL_extension_namespaces-GF
STL_Extension: move CGAL::iterator and CGAL::unary/binary functions to CGAL::cpp98::
2018-06-20 17:21:01 +02:00
Mael Rouxel-Labbé 26c857a431 Moved unary/binary_function to CGAL::cpp98 2018-06-13 15:58:19 +02:00
Guillaume Damiand f6fd8cae4c Remove a warning; when using test suite, compile all the code but run nothing. 2018-06-13 09:14:18 +02:00
Guillaume Damiand 59f797f066 Update the 5 basic viewers to remove factorized functions, and to define different versions in order to remove default template parameters. 2018-06-11 13:09:50 +02:00
Maxime Gimeno 10c277ea2d Use special args if running testsuite to avoid execution errors. 2018-06-07 13:35:28 +02:00
Maxime Gimeno ee94efc76e Fix Surface_mesh example 2018-05-29 12:00:30 +02:00
Andreas Fabri 4b14990209 Fix warnings; Remove typename in non-template code 2018-05-29 11:11:50 +02:00
Guillaume Damiand c62fb2b01e Move include iostream. 2018-05-29 11:11:49 +02:00
Guillaume Damiand b361e78a99 Add missing include 2018-05-29 11:11:49 +02:00
Guillaume Damiand 39de8ac459 Add licence includes 2018-05-29 11:11:49 +02:00
Guillaume Damiand d8a62aa2c8 Update licence headers of new files. 2018-05-29 11:11:49 +02:00
Guillaume Damiand 23426e70c4 Remove macro modified. 2018-05-29 11:11:49 +02:00
Guillaume Damiand dba44f48a1 Harmonize the 5 basic viewers. 2018-05-29 11:11:49 +02:00
Guillaume Damiand 6e83b034dc Rename file for basic viewers. 2018-05-29 11:06:07 +02:00
Guillaume Damiand 73905ce8dd Avoid to run the viewer for the CGAL test suite. 2018-05-29 11:06:07 +02:00
Guillaume Damiand 5d375eff74 Update all basic viewers to have the correct behavior when CGAL_USE_BASIC_VIEWER is not defined. 2018-05-29 11:06:07 +02:00
Guillaume Damiand 5e5a9611db Protect the code of the basic viewers; rename display into draw; add a draw function that display an error message if the basic viewer is not defined. 2018-05-29 11:04:57 +02:00
Guillaume Damiand a59c5f6398 Update all basic viewers to allow to have a color functor as parameter. 2018-05-29 11:04:57 +02:00
Guillaume Damiand d881a203e2 Update LCC, Polyhedron and Surface mesh viewers to follow last modification of basic viewer. 2018-05-29 11:02:00 +02:00
Guillaume Damiand f70c6fed86 Update basic viewer to: (1) use a generic class that can maybe be used also in demos; (2) use same name to add mono/colored objects. 2018-05-29 11:02:00 +02:00
Guillaume Damiand a899052b3b Add viewer for surface mesh. 2018-05-29 11:01:59 +02:00
Maxime Gimeno 132cf694a0 remove is_valid() from the graph_traits 2018-05-03 12:03:14 +02:00
Maxime Gimeno 7a5e821183 fixes 2018-04-27 15:28:00 +02:00
Maxime Gimeno c4da8690cb Add NamedParameters to the off IO functions. 2018-04-26 14:00:06 +02:00
Laurent Rineau 2df75cb8ef Merge pull request #2995 from MaelRL/Doc-Fix_minor_issues-GF
Doc: fix minor issues in Surface_mesh and SMP
2018-04-06 18:12:15 +02:00
Mael Rouxel-Labbé 5ff2a0d315 Fixed minor doc issues in Surface_mesh 2018-04-06 11:48:13 +02:00
Laurent Rineau 237735ab73 Merge pull request #2946 from afabri/CGAL-dependencies-GF
Move properties from Mesh_3 to BGL, Polyhedron_3 and Surface_mesh
2018-03-27 10:35:23 +02:00
Laurent Rineau 3c70f8bad0 Fix dependencies by moving files 2018-03-23 14:17:24 +01:00
Laurent Rineau c504ea3e9f Fixes
- cleanup
- be careful not to add things to the documentation
2018-03-22 17:23:28 +01:00
Andreas Fabri 8c41669fb7 move properties from Mesh_3 to BGL, Polyhedron_3 and Surface_mesh 2018-03-22 16:37:37 +01:00
Laurent Rineau 182239d6b6
Merge branch 'master' into CGAL-remove_SCL_SECURE_NO_DEPRECATE-GF 2018-03-06 16:49:30 +01:00
Andreas Fabri f7ba8ff4df Fix Box_intersection_d, Minkowski_sum_2, Nef_3, Surface_mesh, Straight_skeleton, Triangulation_3 2018-02-23 11:35:58 +00:00
Laurent Rineau 78e7060525 Merge pull request #2712 from afabri/CGAL-VC+warnlevel_4-GF
Deal with VC++ warnings of level /W4
2018-02-19 14:27:06 +01:00
Laurent Rineau 9d227d0fba Merge pull request #2758 from maxGimeno/BGL-Document_graph_has_property-GF
BGL: Document graph_has_property
2018-02-19 14:26:33 +01:00
Sébastien Loriot 483f69728e Refresh branch 2018-02-12 22:21:38 +01:00
Andreas Fabri d37792b4e0 fix doc warning 2018-01-24 10:23:55 +00:00
Simon Giraudot 6269309d86 Use CGAL include for boost counting/transform iterators everywhere 2018-01-23 11:09:52 +01:00
Andreas Fabri 6438ade98a fixes after the first testsuite 2018-01-23 09:38:03 +00:00
Maxime Gimeno c3215b9331 Move graph_has_property from namespace boost to namespace CGAL and provide some doc for it. 2018-01-22 12:43:29 +01:00
Andreas Fabri 5e3889127f Surface_mesh 2018-01-17 17:07:36 +00:00
Andreas Fabri ed621299b5 Merge branch 'BGL-generic_property_map-GF' of github.com:afabri/cgal into BGL-generic_property_map-GF 2017-12-20 15:44:29 +00:00
Andreas Fabri 3fe2e280aa Use sstream instead of lexical_cast 2017-12-20 15:03:21 +00:00
Sébastien Loriot 456222aa81 add comment 2017-12-19 14:51:12 +01:00
Sébastien Loriot a9a85b37e6 fix compilation issues and warnings 2017-12-19 14:43:30 +01:00
Andreas Fabri ee8c0fad5d Changes after @sloriot's review 2017-12-14 10:49:02 +00:00
Laurent Rineau 7df26c594b
Merge branch 'master' into BGL-generic_property_map-GF 2017-12-14 09:46:01 +01:00
Andreas Fabri 91539a1ae1
Merge branch 'master' into BGL-fix_doc-GF 2017-12-01 12:04:15 +01:00
Andreas Fabri 2806377564 Fix Issue #2629 2017-11-30 18:17:26 +00:00
Andreas Fabri 1f8849dfea Make dynamic property API similar to the non dynamic case 2017-11-29 08:28:16 +00:00
Jane Tournois 2feb79a16b Add example for dynamic_property_map 2017-11-27 16:35:30 +00:00
Sébastien Loriot 8cdfad0d08 add missing URL and Id tags 2017-11-15 22:58:57 +01:00
Sébastien Loriot ff26773f7b remove include directive for checking GPL compliance in LGPL headers 2017-11-12 10:21:35 +01:00
Sébastien Loriot ee57fc2d6c add SPDX identifier for files under the GPL-3+ license 2017-11-12 10:17:51 +01:00
Sébastien Loriot 0698f79aff add SPDX identifier for files under the LGPL-3+ license 2017-11-12 10:17:50 +01:00
Laurent Rineau b26201f5ac Merge pull request #2535 from MaelRL/SM-Missing_explicit-GF
Surface_mesh: Added missing 'explicit' on SM_Edge_index constructor
2017-10-17 15:20:32 +02:00
Laurent Rineau 5bb1bbcb79 Merge branch 'releases/CGAL-4.10-branch' into releases/CGAL-4.11-branch 2017-10-17 15:20:04 +02:00
Mael Rouxel-Labbé b4c87b7b9c Added missing 'explicit' on SM_Edge_index constructor 2017-10-12 18:06:38 +02:00
Laurent Rineau 7e9f756935 Replace all std::unary_function by CGAL::unary_function 2017-10-04 15:57:09 +02:00
Volodymyr Boichentsov 778546c54f Cherry-pick pull request #2441 from 3D4Medical/master
Fix for compilation conflict on macOS.
2017-09-20 11:16:52 +02:00
Volodymyr Boichentsov 0189c1f0b3 Fix for compilation conflict on macOS. Error was appearing in case Surface_mesh.h was included in *.mm file 2017-09-19 10:52:53 +01:00
Laurent Rineau cef2f82bce Merge pull request #2386 from afabri/Surface_mesh-fix_doc-GF
Document breaking change
2017-09-07 17:19:34 +02:00
Andreas Fabri 1af69b33f9 Document that the mesh is no longer cleared in operator>>(istream, Surface_mesh) 2017-09-04 13:34:02 +01:00
Simon Giraudot 1b61b35c28 Reset properties when adding a new simplex 2017-08-22 14:25:04 +02:00
Simon Giraudot 484d09bec2 Add reset methods to reinitialize all properties of a specific element 2017-08-22 14:24:49 +02:00
Simon Giraudot f95b84eec4 Surface mesh: reinit connectivies when reusing garbage memory 2017-08-22 12:06:23 +02:00
Laurent Rineau fefcaa1cdd Merge pull request #2265 from afabri/Surface_mesh_set_istream_failbit-GF
Surface_mesh: Set the failbit instead of writing a warning message to std::cout
2017-07-21 10:45:41 +02:00
Laurent Rineau f8760d591b Merge pull request #2136 from afabri/Polygon_mesh_processing-accelerate_isotropic_remeshing-GF
Polygon_mesh_processing: Accelerate Isotropic_remeshing
2017-07-21 10:45:32 +02:00
Andreas Fabri 99725e77a6 fix doc 2017-07-18 17:13:18 +02:00
Andreas Fabri e6e0c11a17 Set the failbit instead of writing a warning message to std::cout 2017-07-17 16:59:06 +02:00
Laurent Rineau 4594430aac Merge pull request #2138 from sgiraudot/Point_set_processing-Las_IO-GF
Point set processing: LAS I/O
2017-07-17 12:45:24 +02:00
Laurent Rineau 89acad2d14 Merge pull request #2101 from afabri/BGL-read_write_off-GF
BGL: Add generic functions read_off() and write_off()
2017-07-17 12:45:07 +02:00
Andreas Fabri 70b13af39c Do not pollute the boost namespace 2017-07-12 12:11:34 +02:00
Andreas Fabri 886bd840cf Make the dynamic property map an implementation detail 2017-07-11 20:32:23 +02:00
Andreas Fabri c35a018135 Move add and remove of property maps in namespace internal (realizing that it is wrong to claim that it works for any FaceGraph 2017-07-11 20:31:34 +02:00
Andreas Fabri 19f3f23d25 handcrafted surface_mesh::degree() function 2017-07-11 20:31:30 +02:00
Andreas Fabri be45f81fc8 Add support for halfedges 2017-07-11 20:31:27 +02:00
Andreas Fabri 5e5a3d9e97 Add generic property map for Polyhedron_3 2017-07-11 20:31:27 +02:00
Andreas Fabri 4ff981de70 Add generic vertex/edge/face propertymap for Surface_mesh and OpenMesh 2017-07-11 20:31:27 +02:00
Simon Giraudot 09c11ca84a Add second missing :: 2017-07-11 11:58:54 +02:00
Maxime Gimeno 99b87e9839 Fix warning 2017-07-10 16:03:12 +02:00
Andreas Fabri 94d05c2af7 Make polyhedron_stitching_plugin work for Surface_mesh 2017-07-10 16:03:05 +02:00
Laurent Rineau dc2cef5f3e Merge pull request #2210 from maxGimeno/Save_as_for_SM_item-GF
Polyhedron_demo: 'Save as' for Surface_mesh items
2017-07-10 14:59:57 +02:00
Maxime Gimeno 838693d0ba Add misisng :: 2017-07-03 17:21:13 +02:00
Andreas Fabri fbe43b49a9 fix operator<<(ostream,Surface_mesh) 2017-06-30 18:13:42 +02:00
Andreas Fabri 388a7678e6 Add an undocumented manipulator which allows operator<< to dispatch OFF, PLY, etc 2017-06-30 18:13:40 +02:00
Andreas Fabri 64a7f4b66a Improve read_off fir Surface_mesh. Thank you @gdamiandgit diff 2017-06-30 18:13:40 +02:00
Andreas Fabri 232106a39d cleanup 2017-06-30 18:12:16 +02:00
Andreas Fabri d94d386f59 fix the testsuite 2017-06-30 18:12:14 +02:00
Andreas Fabri a2ed66d8ce read_off(istream&, Surface_mesh) now appends 2017-06-30 18:12:14 +02:00
Andreas Fabri f9827278a2 Document read_off(), and write_off() for Polyhedron_3 and Surface_mesh 2017-06-30 18:12:14 +02:00
Andreas Fabri 3e3c33bcf0 Add generic functions read_off() and write_off() 2017-06-30 18:12:13 +02:00
Maxime Gimeno 0111db6173 Add color writing for OFF format. Fixes Vertex_color display. 2017-06-26 16:57:01 +02:00
Mael Rouxel-Labbé 052cbc6bff Revert "Added boost::hash overloads for the other Surface_mesh index-based classes"
This reverts commit 13caf25037daff13072570bc7f54ea70c2f6f907.

Doesn't seem to actually be required...
2017-06-22 16:17:13 +02:00
Mael Rouxel-Labbé 358e438505 Fixed a mistake while rebasing 2017-06-22 16:17:13 +02:00
Mael Rouxel-Labbé 8b464899d7 Added boost::hash overloads for the other Surface_mesh index-based classes 2017-06-22 16:14:55 +02:00
Andreas Fabri f6f52e01b0 cleanup and fix of Simple_parameterization.cpp 2017-06-22 16:12:26 +02:00
Laurent Rineau 01fc5c3b33 Merge branch 'releases/CGAL-4.10-branch' 2017-06-16 11:45:45 +02:00
Laurent Rineau bececa63df Merge branch 'releases/CGAL-4.9-branch' into releases/CGAL-4.10-branch 2017-06-16 11:43:08 +02:00
Laurent Rineau 01504b06e6 Add missing headers 2017-06-08 09:49:40 +02:00
Andreas Fabri d6816a7368 Move Mesh_3 specific properties to Mesh_3 2017-05-31 16:08:26 +02:00
Andreas Fabri 4d27ea1cc5 Move selection properties to the Polyhedron demo directory as it is demo specific 2017-05-31 16:05:24 +02:00
Maxime Gimeno e379ad8524 Fix after rebase 2017-05-29 14:35:17 +02:00
Maxime Gimeno 360031a14a Restore the PMP_properties_Surface_mesh.h and remove the private copy constructor of Gwdwg to let the default one be used, as it does not allow memory. This allows Surface only meshing to work with surface_mesh. 2017-05-29 13:24:08 +02:00
Maxime Gimeno 1330777a31 Make property maps for PMP and Surface_mesh generic
Conflicts:
	Polyhedron/demo/Polyhedron/Plugins/PMP/Detect_sharp_edges_plugin.cpp
	Polyhedron/demo/Polyhedron/Scene_surface_mesh_item.h
2017-05-29 13:22:37 +02:00
Maxime Gimeno 880b6e21a2 Fixes and Clean-up.
- Move the new properties in a file in PMP and remove them from the namespace boost.
- Move the surface mesh properties from properties_Surface_mesh.h to Scene_surface_mesh_item.h
2017-05-29 13:20:39 +02:00
Maxime Gimeno 278c5b6154 Fix missing typename and template 2017-05-29 13:20:39 +02:00
Andreas Fabri b5212bd83b Make surface mesh simplification plugin work for Surface_mesh 2017-05-29 13:20:38 +02:00
Laurent Rineau 72cd1785cd Merge pull request #2086 from afabri/BGL-cgal_style_doc-GF
BGL:  doxygen doc for concepts
2017-05-29 11:16:40 +02:00
Laurent Rineau cc40bf46e4 Merge pull request #1899 from maxGimeno/Clean_up_Surface_mesh_doc-GF
Clean-up Surface_mesh doc
2017-05-11 16:05:46 +02:00
Andreas Fabri 86bc36abe1 Complete documentation 2017-04-28 11:45:16 +02:00
Andreas Fabri 8e5df1efe9 An isolated point IS a border point 2017-03-29 19:10:47 +02:00
Andreas Fabri a890b3f221 Fix #1949 2017-03-06 08:55:51 +01:00
Maxime Gimeno 3bc4308abb Remove useless doc. 2017-02-10 12:00:11 +01:00
Laurent Rineau f55950601f Merge pull request #1890 from lrineau/Surface_mesh-fix_Property_map-GF
Fix <CGAL/Surface_mesh/Properties.h> introduced by #1791
2017-02-08 17:32:35 +01:00
Laurent Rineau 13e420732c Merge pull request #1840 from afabri/BGL-reserve-GF
BGL: Add helper function reserve(G,nv,ne,nf)
2017-02-08 17:32:22 +01:00
Laurent Rineau 7b2a150e84 Fix <CGAL/Surface_mesh/Properties.h> and its uses
The PR #1791 introduced `CGAL::Point_set_3`, and factorized the
`Property_map` implementation of `Surface_mesh` into a new class
template `CGAL::Properties::Property_map<Key, T>`.

The backward compatibility was supposed to be ensured by the fact that
`Surface_mesh<Point>::Property_map<Key,T>` had
`Properties::Property_map<Key, T>` as base class. But that compatibility
was only partial, and there could be ambiguities in the calls to `get`
and `put` with those property maps.

This commit/PR renamed `Properties::Property_map` to
`Properties::Property_map_base`, and added a third parameter, used as
the `Derived` class in the CRTP used by `boost::put_get_helper`. That
way, the `get` and `put` functions are defined directory on the real
class `Surface_mesh::Property_map<Key, T>` and not on its base class.

The same has been modified in `CGAL::Point_set_3`.

That makes the use of `Property_base_base` and `Property_container` a
little trickier, but that removes several ugly non-portable hacks, like
the `reinterpret_cast` that were used to convert a pointer to base class
of the pmap to the pointer the real pmap. Now that is a lot cleaner.

I have verified that the documentation is not modified. Actually, the
PR #1791 did modify the documentation of `Surface_mesh` (see the member
method `add_property_map` for example), and this PR fixes the situation:
the documentation of `Surface_mesh` is put back to the version in
CGAL-4.9.
2017-02-08 14:33:18 +01:00
Sébastien Loriot 50510c05ea add include directive for license of all GPL header files
done using:
ack-grep "^GPL" */package_info/*/license.txt -l | awk -F "/" '{print $1}' > /tmp/gpl_packages
for i in `cat /tmp/gpl_packages | \
          grep -v Operations_on_polyhedra | \
          grep -v Algebraic_kernel_for_circles | \
          grep -v Algebraic_kernel_for_spheres | \
          grep -v Polyhedron_IO`;
do
  echo $i
  python Scripts/developer_scripts/add_license_in_pkg_header.py $i
done
python Scripts/developer_scripts/add_license_in_pkg_header.py Operations_on_polyhedra Polygon_mesh_processing
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_circles Circular_kernel_2
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_spheres Circular_kernel_3
python Scripts/developer_scripts/add_license_in_pkg_header.py Polyhedron_IO Polyhedron
2017-01-19 15:20:25 +01:00
Sébastien Loriot 6926578b15 add reserve to MutableFaceGraph 2017-01-18 18:19:25 +01:00
Simon Giraudot 1beb340550 Merge branch 'Point_set_3-GF-old' into Point_set_3-GF 2017-01-03 15:23:23 +01:00
Sébastien Loriot fe5e925367 Merge pull request #1701 from afabri/Convex_hull_3-FaceGraph-GF
Convex_hull_3: Switch to FaceGraph
2016-12-30 15:14:34 +01:00
Andreas Fabri 55c53d53f3 Surface_mesh: The get/put functions are not templated 2016-12-05 17:05:23 +01:00
Andreas Fabri d968e123ea Make indices work with Unique_hash_map 2016-11-22 12:26:26 +01:00
Simon Giraudot 22f0b2c1f8 Merge branch 'Point_set_3-GF-old' into Point_set_3-GF 2016-10-24 15:17:38 +02:00
Simon Giraudot a694c34ff2 Properties: fix types (use std::size_t everywhere it should be used) 2016-10-21 10:28:41 +02:00
Laurent Rineau 9865f19a4d Back-compatibility of Surface_mesh::Property_map 2016-10-21 10:28:40 +02:00
Simon Giraudot f80bbf517c Bugfix: creation of pmap should return false if pmap already exists 2016-10-21 10:28:40 +02:00
Simon Giraudot 7f4044bb2e Recover property values as strings + fix get to check type in addition of name 2016-10-21 10:28:39 +02:00
Simon Giraudot a1ef348e66 Revert unfortunate change in Surface_mesh 2016-10-21 10:28:39 +02:00
Simon Giraudot 1ff9ebf0e9 Return boolean instead of void to make sure property is removed 2016-10-21 10:28:39 +02:00
Simon Giraudot 1b37cbcb35 Add missing const 2016-10-21 10:28:39 +02:00
Simon Giraudot dc82631685 Update namespaces 2016-10-21 10:28:39 +02:00
Simon Giraudot 0cc14d6738 Add iterator and related methods begin() and end() 2016-10-21 10:28:38 +02:00
Simon Giraudot 1343ade651 Remove Surface_mesh as a friend class (useless) 2016-10-21 10:28:38 +02:00
Simon Giraudot 8e6dbf0e03 Reset Properties to initial state in Surface_mesh 2016-10-21 10:28:38 +02:00
Simon Giraudot a5bb805d31 Propagate namespace change in BGL 2016-10-21 10:28:38 +02:00
Simon Giraudot 6429dde647 Revert now useless modifications of Surface_mesh 2016-10-21 10:28:37 +02:00
Simon Giraudot 8e73580e3e Update change of namespace in Surface_mesh/IO.h 2016-10-21 10:28:37 +02:00
Simon Giraudot a4aaf392e6 Move properties out of Surface_mesh and update namespaces 2016-10-21 10:28:37 +02:00
Simon Giraudot de35c285b5 Update Properties.h with needed functions 2016-10-21 10:28:37 +02:00
Simon Giraudot 287d334051 Some changes in surface_mesh needed by point_set_3 2016-10-21 10:28:37 +02:00
Simon Giraudot 751b407895 Properties: fix types (use std::size_t everywhere it should be used) 2016-10-14 11:33:54 +02:00
Simon Giraudot 47a6e268a7 Add method to swap contents of 2 property containers 2016-10-11 09:08:48 +02:00
Simon Giraudot 62578b554c Update doc with latest review 2016-10-11 08:54:27 +02:00
Laurent Rineau 51f5697d3d Add missing #include 2016-09-30 15:23:14 +02:00
Andreas Fabri 40e9c6f735 Move specializations of graph_traits the packages that are concerned 2016-09-30 15:22:29 +02:00
Simon Giraudot 05d171c5b3 Bugfix: creation of pmap should return false if pmap already exists 2016-09-30 10:35:25 +02:00
Simon Giraudot bb78bbaa54 Revert "Add methods to get property values as strings"
This reverts commit 487d17f973.
2016-09-30 09:59:51 +02:00
Simon Giraudot fa1f2aab52 Recover property values as strings + fix get to check type in addition of name 2016-09-28 10:50:55 +02:00
Simon Giraudot 487d17f973 Add methods to get property values as strings 2016-09-27 15:37:41 +02:00
Simon Giraudot 0f3abe1ce6 Revert unfortunate change in Surface_mesh 2016-09-26 15:36:40 +02:00
Simon Giraudot a24834656c Return boolean instead of void to make sure property is removed 2016-09-14 17:53:19 +02:00
Simon Giraudot ba192cda54 Add missing const 2016-09-13 17:13:27 +02:00
Simon Giraudot 15915106b3 Update namespaces 2016-09-09 14:28:34 +02:00
Simon Giraudot 1e985f5ecd Merge branch 'Point_set_processing_3-Point_set_3-GF-old' into Point_set_processing_3-Point_set_3-GF 2016-09-08 12:58:25 +02:00
Sébastien Loriot ff1b240a37 replace assert by CGAL_assertion in CGAL code 2016-08-25 11:12:17 +02:00
Andreas Fabri bb6ac49dbb Make constructor SM_Edge_index(SM_Halfedge_index) explicit 2016-06-13 16:03:06 +02:00
Sebastien Loriot 1127725c11 Merge pull request #1013 from maxGimeno/Polyhedron_demo-OFF_with_color-GF
Polyhedron demo : OFF with colors
2016-05-23 11:28:19 +02:00
Sébastien Loriot 5b826d5a2b clean up 2016-05-23 11:26:04 +02:00
Sébastien Loriot 827c9cf2e1 Merge remote-tracking branch 'cgal/releases/CGAL-4.8-branch' 2016-05-23 11:14:59 +02:00
Andreas Fabri b5534be59a Cast constness of this away as the function Surface_mesh::properties() is const 2016-05-18 12:40:31 +02:00
Maxime Gimeno 26721fa626 add test for colored OFF
# Veuillez saisir le message de validation pour vos modifications. Les lignes
2016-05-12 17:11:28 +02:00
Maxime Gimeno 6761dcae8e Fix tellg/seekg errors 2016-05-12 17:11:28 +02:00
Maxime Gimeno c14c5b9129 Clean up 2016-05-12 17:11:27 +02:00
Maxime Gimeno f3de4dfe01 Clean up 2016-05-12 17:11:27 +02:00
Maxime Gimeno 128adc4c32 Addition of a color management of the not oriented OFF with colors 2016-05-12 17:11:26 +02:00
Maxime Gimeno 511f3f187f Code optimization and parser fix 2016-05-12 17:09:44 +02:00
Maxime Gimeno 3fdff7e831 Addition of the facet colors. 2016-05-12 17:09:44 +02:00
Maxime Gimeno f04a6f98ce Finished the management of the per-vertex color 2016-05-12 17:09:44 +02:00
Maxime Gimeno a1dbe23e7d Replaced color_index management by RGBcolor (float and int) management 2016-05-12 17:09:44 +02:00
Maxime Gimeno fe612feb9b Addition of a test colormap 2016-05-12 17:09:43 +02:00
Simon Giraudot b1cbf5279b Add iterator and related methods begin() and end() 2016-05-03 09:27:10 +02:00
Simon Giraudot bb43dc6cfc Remove Surface_mesh as a friend class (useless) 2016-05-03 08:19:49 +02:00
Simon Giraudot 1c0043f21f Reset Properties to initial state in Surface_mesh 2016-05-03 07:54:43 +02:00
Simon Giraudot a1c8ec9c3f Merge branch 'Polyhedron_demo-Enhance_point_set_properties-GF-old-old' into Polyhedron_demo-Enhance_point_set_properties-GF-old 2016-04-25 17:35:25 +02:00
Andreas Fabri eb90e8e3e1 Include consistently <CGAL/property_map.h> 2016-02-24 12:09:36 +01:00
Simon Giraudot ccb63c2afd Revert now useless modifications of Surface_mesh 2016-02-10 13:51:17 +01:00
Simon Giraudot d0430481a7 Update change of namespace in Surface_mesh/IO.h 2016-02-10 13:40:49 +01:00
Simon Giraudot 66c9b18012 WIP: use directly Properties instead of Surface_mesh in Point_set_3 2016-02-09 14:46:05 +01:00
Sébastien Loriot f5aae4e8cb add comments 2016-02-04 16:19:30 +01:00
Simon Giraudot 5f0793d1c1 Bugfix: add dummy iterator traits to SM_Halfedge_index 2016-02-03 15:21:15 +01:00
Simon Giraudot eb43dd0e2d Move properties out of Surface_mesh and update namespaces 2016-01-29 15:18:03 +01:00
Simon Giraudot 06b87f0a14 Update Properties.h with needed functions 2016-01-29 15:17:38 +01:00
Simon Giraudot 1eaadb00b7 Some changes in surface_mesh needed by point_set_3 2016-01-28 07:20:19 +01:00
Andreas Fabri 3ef9aea5eb fix indentation as it is really misleading 2016-01-21 09:24:02 +01:00
Andreas Fabri 7764bd3bdc Added Surface_mesh::swap(Vertex_index, Vertex_index) that also swaps properties 2016-01-20 14:17:39 +01:00
Sébastien Loriot 54ca52b538 Merge branch 'BGL-SurfaceMesh2SurfaceMesh-GF' into Polygon_mesh_processing-local_remeshing-GF 2015-11-05 19:25:00 +01:00
Laurent Rineau 7ddefbdcc8 Merge pull request #297 from afabri/CGAL-assert-GF
assert() should not be used in CGAL headers!
2015-09-07 10:58:20 +02:00
Jane Tournois ce54198aa7 Merge branch 'Polygon_mesh_processing-local_remeshing-GF-old' into Polygon_mesh_processing-local_remeshing-GF 2015-09-02 15:57:23 +02:00
Andreas Fabri 06bac198dc endl -> '\n' 2015-09-02 15:33:03 +02:00
Andreas Fabri 1e2ff1131e assert -> CGAL_assertion 2015-08-27 16:51:55 +02:00
Laurent Rineau 0fd6f2fa59 Merge pull request #288 from afabri/CGAL-add_hash-GF
No longer forward declare struct std:hash

Fixes issues #287 and #274.
2015-08-27 15:41:50 +02:00
Andreas Fabri bf975ead95 No longer forward declare struct std:hash 2015-08-23 14:30:54 +02:00
Philipp Möller 6d1d3f04ba Fix compilation errors for VS
Note that removing the "template" keyword may break compilation
for other compilers
2015-07-30 14:16:46 +02:00
Philipp Möller 0b5e682985 Clean up some includes 2015-07-30 14:16:26 +02:00
Philipp Möller 3533e77dfe Remove Boost.Fusion dependency
Boost.Fusion in 1.57 fails to compile on gcc 4.4 + std=c++0x (see
https://svn.boost.org/trac/boost/ticket/10190). Since we want support
for that platform, the fusion map is replaced by a specialized class
template Property_selector.
2015-07-30 14:16:12 +02:00
Laurent Rineau 08666dce25 Merge pull request #179 from afabri/CGAL-add_hash-GF
Add boost::hash and std::hash

https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/hash

Conflicts:
	Installation/changes.html
2015-07-17 15:39:18 +02:00
Sébastien Loriot 5d2c892dbe Merge pull request #149 'lrineau/Polygon_mesh_processing-GF'
Add various functions to manipulate polygon meshes
2015-07-17 14:50:56 +02:00
Laurent Rineau 2a9b9330c3 Revert "Merge pull request #143 from bo0ts/Surface_mesh-gcc44_fixes-pmoeller"
This reverts commit 8cffc8be58, reversing
changes made to c1a0afd97a.

Philipp (@bo0ts) will open a new pull-request so solve the issue.
2015-07-14 18:29:43 +02:00
Sébastien Loriot c616df7196 Merge branch 'old/Polygon_mesh_processing-GF' into Polygon_mesh_processing-GF
Conflicts:
	Documentation/biblio/cgal_manual.bib
	Installation/changes.html
2015-07-13 08:16:59 +02:00
Andreas Fabri 2dea6db3bb Merge branch 'CGAL-add_hash-GF-old' into CGAL-add_hash-GF
Conflicts:
	Surface_mesh/include/CGAL/Surface_mesh/Surface_mesh.h
2015-07-06 10:51:23 +02:00
Andreas Fabri 20c1b1a1f6 Merge branch 'Polygon_mesh_processing-GF-old' into Polygon_mesh_processing-GF
Conflicts:
	BGL/include/CGAL/boost/graph/Euler_operations.h
	BGL/include/CGAL/boost/graph/iterator.h
	Documentation/doc/Documentation/Doxyfile.in
	Documentation/doc/Documentation/dependencies
	Polyhedron/demo/Polyhedron/Polyhedron_demo_point_inside_polyhedron_plugin.cpp
	Polyhedron/demo/Polyhedron/Scene_polygon_soup_item.cpp
	Polyhedron/demo/Polyhedron/Selection_widget.ui
2015-07-01 13:52:44 +02:00
Jane Tournois 2c6b6a9ee9 reintroduce template keyword
msvc seems to be ok with it
2015-07-01 13:04:36 +02:00
Jane Tournois 631a60ea85 fix compilation errors for visual studio
note that removing the "template" keyword may break compilation
for other compilers
2015-07-01 12:48:05 +02:00
Philipp Möller 0cda240dd1 Clean up some includes 2015-06-29 13:13:09 +02:00
Philipp Möller 1e62e6b197 Remove Boost.Fusion dependency
Boost.Fusion in 1.57 fails to compile on gcc 4.4 + std=c++0x (see
https://svn.boost.org/trac/boost/ticket/10190). Since we want support
for that platform, the fusion map is replaced by a specialized class
template Property_selector.
2015-06-29 13:12:51 +02:00
Andreas Fabri c48bf3a3e6 more tests; small fixes 2015-06-25 09:17:08 +02:00
Andreas Fabri 92a647b1af add example for unordered_set 2015-06-22 12:31:48 +02:00
Andreas Fabri b197a3402f do not document hash_value as it is an implementation detail 2015-06-22 12:16:46 +02:00
Andreas Fabri dadb129147 g++ needs a forward declaration for std::hash 2015-06-02 08:46:20 +02:00
Andreas Fabri b6850d35c0 #include <functional> and suppress struct/class warning for VC10 2015-06-01 10:42:52 +02:00
Andreas Fabri 425cdf0b0c derive from unary_function; Add #define switch to hash underlying pointer 2015-05-27 12:19:55 +02:00
Andreas Fabri 3491e73509 remove debug output 2015-05-27 11:29:58 +02:00
Laurent Rineau 2bfdee92c7 Merge pull request #67 from afabri/Surface_mesh-join-GF
Add join operation to Surface_mesh
2015-05-18 11:04:48 +02:00
Andreas Fabri 915d1e6fdb do not document an internal function 2015-04-27 17:53:04 +02:00
Andreas Fabri 18ee1199e7 replace -1 by a variable to avoid warning 2015-04-25 15:54:00 +02:00
Andreas Fabri 6dbdea0429 The results on this version with VC11 boost 1_55 are:
$ ./build/hm.exe data/iphi.off
3165798 items

Surface_mesh  std::map
BOOST_FOREACH boost::iterator_range r = vertices(g))
  0.53 sec.
BOOST_FOREACH CGAL::Iterator_range r = vertices(g))
  0.13 sec.
BOOST_FOREACH vertices(g))
  1.49 sec.
for vertices(g))
  0.18 sec.
v = 0 0 0  2004454762201200
2015-04-21 13:44:26 +02:00
Andreas Fabri e9766c0ffd slight change of Index_iterator::increment 2015-04-21 13:24:10 +02:00
Andreas Fabri 0c2a568d73 better coverage of the combinations of mesh and map classes 2015-04-20 10:40:03 +02:00
Sébastien Loriot d36593eb72 add missing const and remove debug output 2015-04-17 17:22:26 +02:00
Andreas Fabri 832208d815 simplifications 2015-04-17 15:49:21 +02:00
Andreas Fabri 205a594a77 add specializations of hash and add tests 2015-04-17 10:21:14 +02:00
Andreas Fabri 821ccc3373 move Face_index and add fake unordered set 2015-04-16 13:38:37 +02:00
Andreas Fabri 0a2e3f8a8b move Halfedge_index 2015-04-16 13:31:40 +02:00
Andreas Fabri 144e4772c1 move Vertex_index 2015-04-16 13:27:38 +02:00
Andreas Fabri a3a9a9c873 move Index out of the class and rename it to SM_Index 2015-04-16 13:23:38 +02:00
Andreas Fabri c2871c92e6 Move the Index class back into Suface_mesh; Add doc 2015-04-15 19:15:34 +02:00
Jane Tournois 4f93dc07b0 use add_face(vertex range) from euler operations in Surface_mesh 2015-04-10 11:29:29 +02:00
Andreas Fabri 962ef07812 Add hash_value for Compact_container, Inplace_list, Index 2015-03-12 16:21:56 +01:00
Andreas Fabri ae8f32511f improve doc 2015-02-03 14:26:43 +01:00
Andreas Fabri ec19e1ca12 improve doc 2015-02-03 14:19:09 +01:00
Andreas Fabri cdf00e7532 concatenate freelists in case the meshes have garbage 2015-02-03 12:51:09 +01:00
Andreas Fabri e57073baed transfer property from rhs if the property exists on lhs 2015-02-03 11:25:34 +01:00
Andreas Fabri d65c0a0add find corresponding property arrays 2015-02-03 10:42:13 +01:00
Andreas Fabri 095cb4b2dc deal also with invalid surface meshes 2015-02-02 16:33:10 +01:00
Andreas Fabri ca23f7b4e2 Add operator+=(Surface_mesh&, const Surface_mesh&) 2015-02-02 15:40:20 +01:00
Andreas Fabri 8e64f50a0b chmod -x and fixes of license headers 2015-01-07 18:38:45 +01:00
Andreas Fabri f85b635ce5 add missing typename 2015-01-06 09:31:18 +01:00
Andreas Fabri fea4eed94a less unsigned/signed warnings 2015-01-04 11:31:29 +01:00
Andreas Fabri 0140ab6479 do not compare with -1 directly 2015-01-01 19:36:33 +01:00
Andreas Fabri f631dc01d7 change unsigned int to boost::uint32_t 2014-12-31 12:51:55 +01:00
Andreas Fabri 471396d821 change Surface_mesh::size_type to unsigned int 2014-12-31 12:38:10 +01:00
Andreas Fabri 1e9f07711e %n in a scanf reads the number of characters read, and must be an int 2014-12-30 10:53:13 +01:00
Andreas Fabri be632d39f5 use the size type of the graph 2014-12-29 14:47:14 +01:00
Andreas Fabri fb5ed5c0bb size_t -> int 2014-12-23 14:25:54 +01:00
Andreas Fabri 891b951e6b fix license headers 2014-12-22 18:10:26 +01:00
Sébastien Loriot 7e0b5a3fe6 skip comments while reading off files 2014-12-18 08:42:49 +01:00
Sébastien Loriot 5c135e0d30 fix bool for add_property 2014-12-18 08:11:08 +01:00
Sébastien Loriot ad1954afc4 fix warnings and compilation issues 2014-12-10 17:34:51 +01:00
Andreas Fabri d5f74fd542 fix surface_mesh_test.cpp 2014-11-25 18:28:50 +01:00
Andreas Fabri 06c4164df7 fix benchmarks and add surfacem mesh simplification 2014-11-13 15:00:17 +01:00
Andreas Fabri 9ecdad5a76 Add a segmentation example for the Surface_mesh 2014-11-12 17:58:44 +01:00
Andreas Fabri 896add20d3 fix implementation of number_of.. 2014-11-12 17:03:54 +01:00
Andreas Fabri cc20bf42a8 bug fixes 2014-11-12 15:42:21 +01:00
Andreas Fabri 95aa725b00 cleanup 2014-11-06 15:53:57 +01:00
Andreas Fabri 9cb623630b include Michael's remarks. The complete table of equivalences is missing yet 2014-11-06 15:40:41 +01:00
Andreas Fabri 06d4111ed7 num_removed_xx -> number_of_removed_xx 2014-11-05 14:10:44 +01:00
Andreas Fabri 37257b38ec Document add_edge and add_face 2014-11-05 12:29:12 +01:00
Andreas Fabri 9f34625a53 conceptually hafedges and edges are different, so we have to list both in clear and collect_garbage 2014-11-05 12:02:25 +01:00
Andreas Fabri 475b8c3783 remove get_or_add_property_map() 2014-11-05 11:54:07 +01:00
Andreas Fabri c2b235adeb integrate many, not yet all remarks of Guillaume and Serbastien's reviews 2014-11-04 18:27:47 +01:00
Andreas Fabri a2308a8e7d operator << and >> do not support normals or textures 2014-10-07 14:37:22 +02:00
Andreas Fabri 1d3f1d5545 Add implementation for operator << and >> (without normal) 2014-10-06 21:36:55 +02:00
Andreas Fabri 9097a6931e next ccw -> previous cw 2014-10-06 16:42:10 +02:00
Andreas Fabri 6089badfcc Add next/prev around source 2014-10-06 16:42:09 +02:00
Andreas Fabri 293c5c51ba code follows manual and compiles again 2014-10-06 16:42:08 +02:00
Sébastien Loriot 681696952a typo 2014-10-06 14:23:02 +02:00
Sébastien Loriot 688d9792be remove todo 2014-10-06 14:22:25 +02:00
Andreas Fabri 34a9d85575 adress some remarks of the reviews 2014-10-06 12:44:24 +02:00
Andreas Fabri b70d6d60fc iterator_range -> Iterator_range 2014-10-03 17:13:26 +02:00
Andreas Fabri 1fc44743cf Cleanup of the properties API 2014-10-03 12:03:46 +02:00
Andreas Fabri 45092fa571 cleanup in the is_border API 2014-10-03 11:37:06 +02:00
Andreas Fabri 05038ebdd0 typos 2014-10-02 10:30:58 +02:00
Andreas Fabri 0f82ce4b5a change container to range in add_face 2014-10-01 15:55:31 +02:00
Andreas Fabri 8b4171ec75 split example for iterators and circultors in two 2014-10-01 15:20:55 +02:00
Andreas Fabri 1979820571 cleanup 2014-10-01 12:27:20 +02:00
Andreas Fabri 7c545c3ec4 Simplify the API for get/add property map 2014-09-30 18:58:01 +02:00
Andreas Fabri a32ecad18c Make Property_map<I,T> a nested class again. 2014-09-30 15:04:59 +02:00
Andreas Fabri 5cee5c6348 Remove the typedefs for the iterators as we offer ranges
Remove the free functions for accessing properties
2014-09-30 11:28:45 +02:00
Andreas Fabri 00eb71e4d1 descriptor -> index
Add a section on garbage collection where we keep num_vertices()
2014-09-29 15:11:42 +02:00
Andreas Fabri 08a033ffb4 Integrate remarks from the review by Michael and Guillaume.
Switch from pair of iterators to a range class
2014-09-26 16:53:37 +02:00
Andreas Fabri d8d9eb605b Add concept Index and change Vertex_descriptor to Vertex_index 2014-09-25 15:51:40 +02:00
Sébastien Loriot 8bf04d7909 fix compilation issues 2014-09-09 16:50:55 +02:00
Andreas Fabri 293ca48f5c no need for call of set_prev_only 2014-09-09 15:53:39 +02:00
Andreas Fabri 1a9ba0f03d incremental builder compiles but has a runtime bug 2014-09-08 17:42:10 +02:00
Andreas Fabri d2a672ef9a Add incremental builder 2014-09-08 15:12:05 +02:00
Sébastien Loriot a158d13647 initial version of Surface_mesh package 2014-07-15 12:08:51 +02:00