Commit Graph

195 Commits

Author SHA1 Message Date
Mael Rouxel-Labbé ef6a6af122 Made STL reader compatible with SequenceContainers
It's useful to not be constrained to cpp11::arrays when the polygon soup
is to be processed through reparation functions (for example)
2018-08-03 14:21:17 +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
Maxime Gimeno 1cba5df6b6 Fix looping overload 2018-06-20 08:38:04 +02:00
Mael Rouxel-Labbé f738319cdc Fixed whitespace (no real changes) 2018-06-11 14:07:56 +02:00
Mael Rouxel-Labbé da95ade46e Added a few more difficulties to the tests 2018-06-11 14:03:31 +02:00
Mael Rouxel-Labbé abfeaf39cd Improved STL reader 2018-06-11 14:02:39 +02:00
Maxime Gimeno 911b6eb4c1 Fix error in print_polyhedron 2018-06-06 16:44:39 +02:00
Andreas Fabri 991f3847e8 Do not include graph_traits_Polyhedron.h, properties_polyhedron.h and Polyhedron_iostream.h 2018-05-03 13:23:50 +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 ed0976600b Fix dependencies 2018-03-09 10:03:58 +01:00
Laurent Rineau 0a74393dcf Commit all new dependencies files 2018-03-06 18:44:48 +01:00
Sébastien Loriot bdc9377e20 fix reading of ASCII STL with a name broken by a previous fix 2018-02-26 15:15:59 +01: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
Maxime Gimeno 688b5dd06e Move dependencies creation to package_info and add dependencies to git 2018-02-02 12:08:05 +01:00
Maxime Gimeno 8bde832931 Fix METIS headers in BGL 2018-02-02 12:08:05 +01:00
Maxime Gimeno a676d5a60e Try to fix errors in classification checks 2018-02-02 12:08:05 +01:00
Maxime Gimeno acd0a72edf Modify travis script to test dependencies 2018-02-02 12:08:05 +01:00
Maxime Gimeno ae36b452bc Add dependencies of all packages 2018-02-02 12:08:05 +01:00
Andreas Fabri 22bd2815a3 Polyhedron 2018-01-17 17:13:53 +00:00
Andreas Fabri 84be28c0d6 fix error and warning inside a test file 2017-12-13 07:04:58 +00:00
Andreas Fabri cd7f1af9c4 bug fix 2017-12-11 16:39:53 +00:00
Andreas Fabri 49128e332a Also parse headers of binary STL files starting with the keyword 'solid' 2017-12-07 14:57:39 +01:00
Laurent Rineau a9365554c9 Merge pull request #2550 from sloriot/CGAL-add_SPDX_tags
Add SPDX License Identifier
2017-11-15 16:48:27 +01:00
Laurent Rineau 3ff09bc549 Merge pull request #2580 from lrineau/CGAL-Support_CMake_3.10-GF
Renew the handle of policies, for CMake-3.10
2017-11-15 16:47:42 +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 62c70d41ca Renew the handle of policies, for CMake-3.10
Now that we require CMake>=3.1, we can forget a lot of old CMake policies.

`CMP0053` `OLD` behavior is still needed, because of a bug in Qt5 CMake files, but it will
not be set with CMake>=3.10. Let's assume that a recent CMake version means
a recent Qt5 version.
2017-11-06 14:58:36 +01:00
Laurent Rineau e73c95d4cd Do not test demos 2017-10-20 17:01:43 +02:00
Laurent Rineau fd9be189d8 Merge pull request #2536 from sloriot/Demo-add_STL_writer
Add STL writer
2017-10-17 15:20:34 +02:00
Sébastien Loriot 7c3cf02bb2 use unit_normal 2017-10-13 07:48:58 +02:00
Sébastien Loriot 8f50be14c0 add function to write triangle mesh as STL file (binary+ascii)
update IO plugin in the demo
2017-10-12 19:23:11 +02:00
Simon Giraudot d30a044018 Handle case where PLY faces property uses "vertex_index" instead of "vertex_indices" 2017-10-04 09:10:31 +02:00
Simon Giraudot 7f7bcf1511 Check if stream is not bad instead of checking if it's good (yes...) 2017-10-02 11:14:25 +02:00
Simon Giraudot 8e6e35cebd Handle both uint and int for list of indices in PLY input 2017-08-09 09:48:36 +02:00
Simon Giraudot 41f0203222 Read PLY mesh with colors 2017-08-02 14:10:44 +02:00
Simon Giraudot a0bc442741 PLY writer for FaceListGraph 2017-08-02 14:10:43 +02:00
Simon Giraudot db36c0d92c Fix constness and tag name 2017-08-02 14:10:42 +02:00
Simon Giraudot 583a700d96 First version of PLY writer for polygon soups 2017-08-02 14:10:42 +02:00
Simon Giraudot 8311c681e2 First version of PLY reader for polygon soups 2017-08-02 14:10:41 +02:00
Andreas Fabri d94d386f59 fix the testsuite 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
Maxime Gimeno 5ae96fc2aa Explicitely set the policy of CMP0053 to OLD to silent the warning when it is not found. 2017-05-23 16:12:56 +02: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 7e2ee496de update project name of cmake scripts of tests 2016-09-08 00:26:37 +02:00
Sébastien Loriot 6b338eeb1f improve the name of projects in cmake scripts of examples 2016-09-08 00:02:55 +02:00
Sebastien Loriot 162bdc67b4 Merge pull request #1151 from afabri/Polyhedron_IO-stl_reader-GF
ignore triangles with 2 or 3 identical vertices
2016-06-13 09:15:53 +02:00
Andreas Fabri ab3292caa0 ignore triangles with 2 or 3 identical vertices 2016-06-10 14:43:59 +02:00
Maxime Gimeno c2f02afee5 Enhancement
- Moved the code to read an .obj file to OBJ_reader.h
- Made it compatible with not triangle objects.
2016-06-09 16:16:18 +02:00
Sébastien Loriot 11b8eb428b Merge pull request #558 from maxGimeno/Polyhedron_demo-display_indices_of_primitives-GF
Display indices of Polyhedron_item primitives in Polyhedron_demo
2016-05-26 17:09:23 +02:00
Maxime Gimeno b8ecd34eb5 Fix facet color reading 2016-05-12 17:11:28 +02:00
Maxime Gimeno 31b9e81e6d Fix for the polyhedron readOFF with colors 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 30a12a8dca Fix for the smooth normals 2016-05-12 17:11:26 +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 92abf686b3 WIP : add color to IO_OFF 2016-05-12 17:09:14 +02:00
Maxime Gimeno dbb5c07709 Draw text done. WIP Blending 2016-04-27 14:02:27 +02:00
Sébastien Loriot 4c29bf1b44 CMAKE_SOURCE_DIR -> CMAKE_CURRENT_SOURCE_DIR 2016-03-24 16:33:46 +01:00
Sébastien Loriot 881e4d3199 request Core only in examples, tests and demos when really needed 2016-03-07 22:36:57 +01:00
Sébastien Loriot 2d191d6651 commit CMakeLists.txt for all examples and tests 2016-03-07 17:39:36 +01:00
Sébastien Loriot 6b15ec643c Merge branch 'CGAL-Qt5_support-GF' into cgal-public-dev/Polygon_mesh_processing-GF
Conflicts:
	Mesh_3/demo/Mesh_3/include/CGAL/gl_render.h
	Polyhedron/demo/Polyhedron/CMakeLists.txt
	Polyhedron/demo/Polyhedron/GlSplat/GlSplat.cpp
	Polyhedron/demo/Polyhedron/Scene_polygon_soup_item.cpp
	Polyhedron/demo/Polyhedron/Scene_polyhedron_selection_item.h
2015-07-16 16:52:53 +02:00
Laurent Rineau 15c1469a54 CGAL requires CMake>=2.8.11. 2015-07-10 17:01:42 +02:00
Laurent Rineau 3ec0c69f8f We want 2.8.10 for all demos
Previous versions are not tested by the CGAL daily test suite.
2015-07-09 17:50:22 +02:00
Laurent Rineau e5bcdc5f3e Update all CMakeLists.txt
- CMake 2.8.11 or later is now required
- GLEW is no longer used by demo/Polyhedron/
2015-07-06 18:14:34 +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
Laurent Rineau e020872989 Merge two commits forgotten in pull-request #110
https://github.com/CGAL/cgal/pull/110

Fixes issue #124.
  https://github.com/CGAL/cgal/issues/124

Merge remote-tracking branch 'cgal-dev/Polyhedron_iostream-Binary_STL_Readder-GF'
2015-06-17 10:20:28 +02:00
Laurent Rineau 5bbd4e8cdb fix permissions 2015-06-17 10:09:02 +02:00
Andreas Fabri b46abc8b02 remove argc argv 2015-06-09 08:57:10 +02:00
Andreas Fabri 9c7a335a0b char* -> const char* to avoid a warning 2015-06-09 08:54:09 +02:00
Andreas Fabri 18a4c57f34 int -> std::size_t 2015-06-08 11:29:24 +02:00
Andreas Fabri 6cf8ca0947 move stl2off.cpp to test as it uses an undocumented function 2015-06-05 16:33:53 +02:00
Andreas Fabri 087f4acb0e fix warnings 2015-06-05 16:07:04 +02:00
Sébastien Loriot 166e5e03ea more generic reader 2015-02-09 16:51:32 +01:00
Sébastien Loriot b4bd141980 move OFF reading function to a header file 2015-01-29 14:02:47 +01:00
Sébastien Loriot ccbcb8b23f remove typename 2015-01-26 08:59:47 +01:00
Sébastien Loriot 00a57be25a remove the STL reading part outside of the builder 2015-01-23 15:01:16 +01:00
Sébastien Loriot fcd2e56742 cleanup 2015-01-23 14:09:40 +01:00
Sébastien Loriot 1ee29eb3e1 int[] -> array 2015-01-23 12:17:31 +01:00
Sébastien Loriot 5c956f1ccd replace tuple by array 2015-01-23 11:47:23 +01:00
Sébastien Loriot b551c0fa55 move Polyhedron builder from STL files from demo plugin to header 2015-01-23 10:40:15 +01:00
Laurent Rineau cacb30d969 Fix the conversion to void*
LLVM libc++ does not implement std::basic_ios::operator void*, even in
C++03.
2014-02-13 11:02:51 +01:00
Laurent Rineau 269ae1ca61 Fix the uses of std::basic_ios::bad(), and use fail() instead.
bad() implies fail() but std::basic_ios::operator! is actually equivalent
to std::basic_ios::fail(), not bad().

For example,
    std::ifstream is(argv[1]);
    if (is.bad()) {
is probably wrong because, in case the file does not exist, only the failbit it set,
and not the badbit.

Other example:
   double x;
   is >> x;
If the stream 'is' does not contains a string that can represent a double,
then failbit is set (and maybe the eofbit if the stream is actually too
short), but not the badbit.

bad() can be used, in case fail() returned true, to discriminate between a
I/O error and a logical error.

See:
  http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool
  http://en.cppreference.com/w/cpp/io/ios_base/iostate
2013-12-12 16:13:40 +01:00
Laurent Rineau 008ccc5b48 Add missing #include <cassert> 2013-04-25 11:20:36 +02:00
Sébastien Loriot 9fcf46e11a replace CGAL_[kernel/qpe/triangulation/]_assertion by assert in tests
this should be the case, following our guidelines.

using:
find */test/* -name '*.[hc]*' | xargs sed -i 's/CGAL_assertion/assert/g'
2013-03-21 10:50: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 26a7e70785 New license.txt files (eol changes)
The new version 2.13.0 of licensecheck has changed the spaces at eol.
2013-02-19 16:46:39 +01:00
Andreas Fabri 13bac84716 less warnings in various packages 2013-02-01 10:27:07 +01:00
Laurent Rineau 2db4effa7e CMake: Fix the handling of cmake_policy
That is a followup-to my commit last year:
  | ------------------------------------------------------------------------
  | r63198 | lrineau | 2011-04-28 19:45:22 +0200 (Thu, 28 Apr 2011) | 5 lines
  | 
  | Try to fix my last revision about cmake_policy, with CMake-2.6.x
  | 
  | CMake gives an error if one tries to use cmake_policy(VERSION x.y.z) if
  | x.y.z is greater than the current CMake version.
  | 
  | ------------------------------------------------------------------------

The following check:
  if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" VERSION_GREATER 2.6)
is useless just after a call to:
 cmake_minimum_required(VERSION 2.6.2)



The script used to fix that was:


#!/usr/bin/env perl

$replacement=<<'END';
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_GREATER 2.8.3)
  cmake_policy(VERSION 2.8.4)
else()
  cmake_policy(VERSION 2.6)
endif()
END

while(<>) {
    if(/if\("\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}" VERSION_GREATER 2.6\)/) {
        while(<>) {
            if(/^endif\(\)/) {
                print "$replacement";
                while(<>) {
                    print;
                }
                exit 0
            }
        }
    }
    print;
}
2012-08-22 12:35:03 +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
Laurent Rineau c8a14fb91b Remove the deprecated use of Triangulation_euclidean_traits_xy_3
and use Projection_traits_xy_3 instead.
2012-06-13 09:05:33 +00:00
Philipp Möller 8f1ce2412c Removed all places where the CGAL_CFG_NO_TMPL_IN_TMPL work-around was
used. Those were mostly in Polyhedron and HalfedgeDS but some places
in Arrangement_2 used it, too. Neither of the parts of Arrangement_2
have been documented.
2012-04-13 13:13:30 +00:00
Laurent Rineau a37c74d534 Add license files, per package 2012-01-16 15:54:22 +00:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Philipp Möller 34d6ac52ec Replaced [U]Integer* with boost::[u]int*_t in Polyhedron, Polyhedron_IO and Stream_support 2011-06-10 14:51:30 +00:00
Laurent Rineau 3c02e07b23 Try to fix my last revision about cmake_policy, with CMake-2.6.x
CMake gives an error if one tries to use cmake_policy(VERSION x.y.z) if
x.y.z is greater than the current CMake version.
2011-04-28 17:45:22 +00:00
Laurent Rineau c97205f085 Global handling of CMake policies (second part)
We declare 
  cmake_minimum_required(VERSION 2.6.2)
but we also use
  cmake_policy(VERSION 2.8.4)
to declare that our CMake scripts are OK with all the defaults of CMake policies
as of CMake-2.8.4. That shuts down the warnings of CMake-2.8.4.

That way, we no longer need any declaration of specific policies.

Those two lines must be present and maintained in all our CMakeLists.txt
files (the one for the libraries, and also the one for examples and demos,
and maybe tests).
2011-04-28 10:55:56 +00:00
Laurent Rineau 0631943153 Uniform capitalization in our CMake script: use lowercase for commands 2011-04-28 10:36:18 +00:00
Laurent Rineau ca5c92e034 Global maintenance of CMakeLists.txt: CMake minimal version is -2.6.2
The documentation of CGAL says that the minimal version of CMake must be
CMake-2.6.2.
  - change cmake_minimum_required to VERSION 2.6.2
  - no longer any need for the policy CMP0003 (was for 2.4.x)
  - no longer any need for CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS (was for 2.4)
2011-04-27 17:58:27 +00:00
Sébastien Loriot 6113a8b536 remove warning 2011-02-24 16:05:50 +00:00