Commit Graph

106513 Commits

Author SHA1 Message Date
Sebastien Loriot caecbe29c7
Replace boost::mpl (#7813)
- `boost::mpl::if_` --> `std::conditional`
- `boost::enable_if` -> `std::enable_if`
- `boost::mpl::and_` -> `&&`
- `boost::mpl::or_` -> `||`
- `boost::constant::bool_` -> `std::bool_constant`
- ...
2023-12-26 17:33:36 +01:00
Sebastien Loriot 1a934524ba
CGAL Lab: Transformation of point normals (#7935)
## Summary of Changes

Affine transformation transforms points, but didn't transform their
normals. This PR takes care of normal transformation of point sets.

## Release Management

* Affected package(s): Polyhedron Demo
2023-12-26 17:30:00 +01:00
Sébastien Loriot 6eff89bbc8 Merge pull request #7614 from sloriot/PMP-BF_autorefine
Add autorefine for triangle soup
2023-12-26 12:11:04 +01:00
Sébastien Loriot 15aa810876 Merge remote-tracking branch 'cgal/5.6.x-branch' 2023-12-22 17:16:49 +01:00
Sebastien Loriot eb659137e6
Mesh_3 - `edge_min_size` may cause hanging (#7863)
## Summary of Changes

When the criterion `edge_min_size` is set, the graph of features is
likely to be invalid or at least inconsistent with the input graph.
Checking its topology does not make any sense and could lead to hanging
when trying to compute polyline feature lengths (because it's trying to
walk on different curves, jumping from one to the other, etc).

This PR disables the check-features-after-protect step when
`edge_min_size` is used, since we anyway do not expect the feature graph
to be exactly matching the one of the input.

## Release Management

* Affected package(s): Mesh_3
* License and copyright ownership: unchanged
2023-12-22 17:15:37 +01:00
Sébastien Loriot 47e728f2ef Merge remote-tracking branch 'cgal/5.5.x-branch' 2023-12-22 17:14:12 +01:00
Sebastien Loriot cef517a9c9
Add a switch to get rid of QP_Solver dependency (#7941) 2023-12-22 17:13:10 +01:00
Sebastien Loriot 339441a137
Surface_sweep_2: Handle new overlap on the right of an event that is interior to a curve (#7243)
Handle case of overlapping curve starting on a non start/end event.

@efifogel I don't like the fact that I'm adding some geometric tests. I
think I should check if there are overlapping curves on the right of the
event and check if the originating curves are in the status line (using
the stored hint). What do you think?

Fixes #7235
2023-12-22 17:11:47 +01:00
Sébastien Loriot bd98f389b1 update for qt6 2023-12-22 15:09:29 +01:00
Laurent Rineau 0b58c21b11 improve the script
[skip ci]
2023-12-21 15:45:39 +01:00
Sébastien Loriot c36f0ac091 add a switch to get rid of QP_Solver dependency 2023-12-19 14:42:02 +01:00
Sven Oesau 4fe88f8b49 added transformation of normals 2023-12-18 15:35:25 +01:00
Sébastien Loriot 5d61c35a64 fix warning 2023-12-18 15:20:10 +01:00
Sébastien Loriot aee0c1557e Revert "Ported test_sweep_conic to test_sweep and fixed the conic test cases"
This reverts commit 2e99b211b0.
2023-12-18 15:14:26 +01:00
Sébastien Loriot 03ea4c3df5 Revert "fix warnings"
This reverts commit 8cc75d642c.
2023-12-18 15:14:09 +01:00
Sébastien Loriot 89d3d74865 Merge remote-tracking branch 'cgal/5.6.x-branch' 2023-12-18 13:31:48 +01:00
Sébastien Loriot ee1fa58406 Merge remote-tracking branch 'cgal/5.5.x-branch' 2023-12-18 13:31:06 +01:00
Sebastien Loriot ec9de37b61
Tetrahedral remeshing - move sliver peeling to its own header file (#7930)
## Summary of Changes

This PR moves the "sliver peeling" function to its own internal header
file.

## Release Management

* Affected package(s): Tetrahedral remeshing
* License and copyright ownership: unchanged
2023-12-18 13:29:37 +01:00
Sebastien Loriot a578b40b42
Tetrahedral remeshing - deal with c3t3 complex edges (#7909)
## Summary of Changes

For a mesh generated by Mesh_3, that has complex edges that do not lie
at the intersection of surface patches, automatic detection of these
features is impossible from the input triangulation.
This PR introduces a new named parameter `edge_is_constrained_map` to
`convert_to_triangulation_3()` that sets the edges constrained status
corresponding to their `is_in_complex()` status.

This pmap can then be used straight away in
`tetrahedral_isotropic_remeshing()`.

## Release Management

* Affected package(s): Tetrahedral_remeshing
* License and copyright ownership: unchanged
2023-12-18 13:29:21 +01:00
Sebastien Loriot 023840c5bd
Increase precision of the intersection of 3 planes (#7913)
Addresses #6267
2023-12-18 13:27:17 +01:00
Sebastien Loriot f798df19a5
document the thread-safety requirement of output iterators (#7924) 2023-12-18 13:25:56 +01:00
Sebastien Loriot 00f0c85499
Kernel_23: Deal with concurrent executions and IO (#7921)
## Summary of Changes

Write and read back in a `std::stringstream` to avoid simultaneous IO on
the same file name.
Error seen in this
[testsuite](https://cgal.geometryfactory.com/CGAL/testsuite/CGAL-6.0-Ic-124/Circular_kernel_2/TestReport_gimeno_ArchLinux-clang-CXX17-Release.gz).

## Release Management

* Affected package(s):  Kernel_23, Circular_kernel_2
* License and copyright ownership: unchanged
2023-12-18 13:25:36 +01:00
Sebastien Loriot cadc6ed343
Add a convenience IO header (#7929)
## Summary of Changes

There is:

```
CGAL/boost/graph/IO/polygon_mesh_io.h
CGAL/PMP/IO/polygon_mesh_io.h
CGAL/IO/polygon_soup_io.h
```

The first one is a bit awkward to remember, so this PR adds a
convenience header at `CGAL/IO/polygon_mesh_io.h`.

## Release Management

* Affected package(s): `BGL`
* Issue(s) solved (if any): -
* Feature/Small Feature (if any):
* Link to compiled documentation (obligatory for small feature) [*wrong
link name to be changed*](httpssss://wrong_URL_to_be_changed/Manual/Pkg)
* License and copyright ownership:
2023-12-18 13:22:46 +01:00
Sebastien Loriot b9696c2f86
Polyhedron Demo: Add sampling plugin (#7910)
## Summary of Changes

Add a plugin that samples meshes and polygon soups

### Todo

- [x] Add dialog for the various parameters of the sampling function
- [x] Check that the input is triangular.

## Release Management

* Affected package(s): Polyhedron
* License and copyright ownership: unchanged
2023-12-18 13:21:01 +01:00
Sebastien Loriot 1787da400b
Stream_support: Add read_VTK() (#7826)
## Summary of Changes

Add `read_VTK()` so that we can also read non-xml   *.vtk files.

- [x] Document it correctly

## Release Management

* Affected package(s): Stream_support 
* Feature/Small Feature (if any):
* Link to compiled documentation:
[overview](https://cgal.github.io/7826/v0/Stream_support/IOStreamSupportedFileFormats.html#IOStreamVTK)
and
[function](https://cgal.github.io/7826/v0/Stream_support/group__PkgStreamSupportIoFuncsVTK.html#gaad7f1c5c10e8700a4a6de88294c5a620)

* License and copyright ownership:
2023-12-18 13:15:31 +01:00
Jane Tournois a66e78a672 when curves topology is valid, use curve_segment_length 2023-12-15 15:52:02 +01:00
Jane Tournois 3ef2ce9163 check_and_repopulate_edges() reactivated with minimal size
disabling it may give too bad results
change the arc_length computation when minimal size is used, instead,
by approximating it by the segment length
2023-12-15 14:44:33 +01:00
Efi Fogel 5b66d54cb8 Used new conic construction interface 2023-12-15 13:50:10 +02:00
Efi Fogel 35fe1d7037 Merge branch 'master' into Ss_2-test_conics-efif 2023-12-15 13:19:27 +02:00
Jane Tournois 7fa2db8dfc add helper function minimal_weight() 2023-12-14 19:01:57 +01:00
Jane Tournois 85b8da120d constify more 2023-12-14 15:36:57 +01:00
Jane Tournois 54677b388c set default minimal_size_ to -1 and add helper function to check if it is set 2023-12-14 15:35:06 +01:00
Sébastien Loriot be9c8c8ff2 Merge remote-tracking branch 'cgal/5.6.x-branch' 2023-12-14 15:27:22 +01:00
Sébastien Loriot 32da8399fb Merge remote-tracking branch 'cgal/5.5.x-branch' into HEAD 2023-12-14 15:26:44 +01:00
Sebastien Loriot 2aea89ff03
Hide forward declaration to doxygen (#7928) 2023-12-14 15:25:23 +01:00
Sébastien Loriot 7935bcf42b fix mismatching cond/endcode
remove useless previous patches
2023-12-14 10:10:17 +01:00
Sébastien Loriot 93ba75b8a1 add missing not 2023-12-14 08:47:54 +01:00
Laurent Rineau 9a944e563c Merge remote-tracking branch 'cgal/master' into PMP-BF_autorefine
# Conflicts:
#	Installation/CHANGES.md
#	Polygon_mesh_processing/examples/Polygon_mesh_processing/CMakeLists.txt
2023-12-13 15:57:30 +01:00
Andreas Fabri b1195233fa Add CGAL::IO:: for linking 2023-12-13 10:45:08 +00:00
Andreas Fabri 2713fe3c41 give \link a try for linking 2023-12-13 10:00:44 +00:00
Andreas Fabri fd8e6372c7 Add CGAL::IO:: for linking 2023-12-13 09:31:25 +00:00
Andreas Fabri 74c47e6222 Add CGAL::IO:: for linking 2023-12-13 09:21:16 +00:00
Mael Rouxel-Labbé 61ad28c80c Swap the contents of CGAL/IO/polygon_mesh_io.h and CGAL/BGL/IO/polygon_mesh_io.h 2023-12-13 09:58:06 +01:00
Andreas Fabri 0f9e446219 static_cast<int> 2023-12-13 08:57:24 +00:00
Andreas Fabri a701dbc21c Deal with LAS.h 2023-12-13 08:36:46 +00:00
Andreas Fabri ee1d222d45 double -> int 2023-12-13 07:35:53 +00:00
Jane Tournois f241f4b6ef rename example with shorter name
error on windows testsuites :
"The fully qualified file name must be less than 260 characters."
2023-12-12 17:41:37 +01:00
Sébastien Loriot dac26de5c3 update test
cc @efifogel
2023-12-12 17:09:57 +01:00
Jane Tournois fa052c3d84 move sliver peeling to its own header file
# Conflicts:
#	Tetrahedral_remeshing/include/CGAL/Tetrahedral_remeshing/internal/tetrahedral_adaptive_remeshing_impl.h
2023-12-12 16:09:54 +01:00
Sébastien Loriot 8cc75d642c fix warnings 2023-12-12 15:27:00 +01:00