Sébastien Loriot
ab32dd2a28
update polyhedron clipping function to work with new code
2016-12-01 17:08:10 +01:00
Sébastien Loriot
1e2ec91906
add a namespace to avoid ambiguity with PMP functions
2016-12-01 15:16:56 +01:00
Sébastien Loriot
bc719ad192
fix copy-paste error
2016-11-23 15:52:50 +01:00
Sébastien Loriot
ddaf6cd90b
avoid reporting several time the same node per edge and face
...
This happens only in the case of coplanar triangles and can
be avoided by only reporting the node when it is first
created
2016-11-10 09:23:02 +01:00
Sébastien Loriot
ca4e71a1aa
remove trailing whitespaces
2016-11-08 11:10:42 +01:00
Sébastien Loriot
1ed98a7d9a
simply the detection of coplanar faces
...
coplanar faces are made of 3 intersection edges and each of its vertex
has a node-id != -1
2016-11-03 14:31:20 +01:00
Sébastien Loriot
cab2634387
bug fix in the detection of intersection edges in the middle of a coplanar patch
...
do not remove the edges from the intersection map while we are still using them
2016-11-03 14:18:12 +01:00
Sébastien Loriot
8390e569b7
Correctly handle tangencies of input model
...
this handle the case of identical models (even differently meshed)
and model that are tangent only at vertices
2016-11-03 10:31:57 +01:00
Sébastien Loriot
d84def1b44
fix compilation issue
2016-09-30 17:12:15 +02:00
Sébastien Loriot
1bb8b69f17
fix compilation errors
2016-09-30 17:06:10 +02:00
Sébastien Loriot
d172f12316
apply changes from f30a97d8
2016-09-30 15:51:40 +02:00
Sébastien Loriot
6713621ae3
Update branch with master
2016-09-30 15:43:06 +02:00
Sébastien Loriot
7dd6b4cfb9
fix a copy-paste error P->Q
2016-09-02 15:50:09 +02:00
Sébastien Loriot
c6fbc450e6
update after graph_type change
...
follow up of 830a977c73d3b1952bd2ca712ca8bad81917c2ca
2016-09-02 15:50:09 +02:00
Sébastien Loriot
f30a97d808
use the lastest CMap API
...
this was responsible for bugs in the demo plugin where the cmap
is created in a library and used in another one
2016-07-21 11:29:08 +02:00
Sébastien Loriot
2d4153fc3d
update Polyhedra_corefinement-enhancements-sloriot from master
2016-06-24 14:54:33 +02:00
Sébastien Loriot
5d0c508458
replace a map by two bitsets for polyline creation
2016-06-15 11:47:04 +02:00
Sébastien Loriot
be17f39e27
make any operation invalid when an intersection polyline is inside a patch
2016-05-24 15:43:21 +02:00
Sébastien Loriot
5057337bf8
remove useless while loop
2016-05-19 15:11:56 +02:00
Sébastien Loriot
edc84dce2a
fix the selection of the patch border halfedge to update
...
the halfedge is not necessarily the next one
2016-05-13 16:46:04 +02:00
Sébastien Loriot
85c45af54c
fix the import of patches having mesh border halfedges not on the intersection
2016-05-12 11:37:29 +02:00
Sébastien Loriot
d2862852ac
fix the setting of the vertex pointer of a halfedge incident ...
...
... to a vertex on an intersection polyline, in case the patch have
mesh border vertices
2016-05-12 11:13:37 +02:00
Sébastien Loriot
345799f227
fix the identification of border vertices of patches in mesh with borders
2016-05-12 10:39:05 +02:00
Sébastien Loriot
788cf463b2
increase iterator before continuing
2016-05-12 10:32:53 +02:00
Sebastien Loriot
7630d2a6fc
Merge pull request #875 from sloriot/Triangulation_2_and_PMP-fix_Triangulation_2_projection_traits_3
...
PMP: make triangulate_faces works with non filtered kernels
2016-05-05 14:55:11 +02:00
Sébastien Loriot
26e6388930
fix a todo and update comment to be clearer
2016-05-04 11:51:24 +02:00
Sébastien Loriot
b34c55f8d2
try removing unused polylines only when needed
2016-05-04 10:05:42 +02:00
Sébastien Loriot
205ad31e77
fix the reversal of meshes with polylines
2016-05-03 18:26:38 +02:00
Sébastien Loriot
f0ce7f7bfd
the removal of unused polylines can also happen without coplanar patches
...
see cube.off and with_cube.off
2016-05-03 14:39:22 +02:00
Sébastien Loriot
7bf3458ae9
add a bitset for polylines not used per polyhedron
2016-05-03 10:49:28 +02:00
Sébastien Loriot
c97fc8287a
allow the use of patches from P for two inplace operations
...
before the code was only working when patches used for the operation
in P were not used for the operation in Q
2016-04-22 17:30:12 +02:00
Sébastien Loriot
7abde9cde2
handle polylines not used by a boolean operations with coplanar patches
...
a polyline that is incident to a coplanar patch might not
always be part of the result. Thus some edges might have been
imported or not deleted while they should not have.
2016-04-21 12:41:34 +02:00
Sébastien Loriot
d75298fff8
fix classification of patches near coplanar patches
2016-04-20 11:55:25 +02:00
Sébastien Loriot
abf2411392
fix patches used in coplanar cases
2016-04-18 17:04:23 +02:00
Sébastien Loriot
1669224fc5
reverse the orientation of patches before the appending of new patches
...
this avoid reversing the orientation of patches just appended
2016-04-14 17:09:49 +02:00
Sébastien Loriot
324134aa4e
first version without restriction on where the outputs will be stored
...
more testing needed
2016-04-13 17:12:44 +02:00
Sébastien Loriot
bd7b702281
precompute the patches to be used for the different operations
2016-04-13 11:03:01 +02:00
Sébastien Loriot
f8580183e3
only remove patches if the output was requested
2016-04-12 16:24:03 +02:00
Sébastien Loriot
db66f1063c
rename two variables and remove unused code
2016-04-05 12:18:35 +02:00
Sébastien Loriot
f8bbee52b7
Merge branch 'Polyhedra_corefinement-enhancements-sloriot' into HEAD
2016-04-04 12:09:24 +02:00
Sébastien Loriot
2aa72bd6fd
mark also halfedges in newly created polyhedra
2016-04-04 12:04:14 +02:00
Maxime Gimeno
32a43ad3e0
Addition of a split feature
2016-03-21 15:59:30 +01:00
Sébastien Loriot
d7e9261d58
hide the filtered projection traits behind the projection traits
...
the selection of the base class is done using Kernel::Has_filtered_predicates
2016-03-02 21:57:54 +01:00
Andreas Fabri
875a21f9e1
not compute bbox with empty polyhedron
2016-02-16 16:56:16 +01:00
Sébastien Loriot
8cee2ef1dd
Merge pull request #686 from afabri/Kernel_fix-warnings-GF
...
Fix warnings concerning indentation and unused parameter
2016-02-03 09:49:54 +01:00
Sébastien Loriot
960b996e4c
make use of the ppmap for self intersection tests
2016-02-02 15:14:43 +01:00
Sébastien Loriot
8f7dd2b678
try removing an uninitialized variable warning
2016-01-28 13:55:18 +01:00
Sébastien Loriot
acba778a9e
Merge branch 'Polyhedra_corefinement-enhancements-sloriot' into HEAD
2016-01-21 11:06:59 +01:00
Laurent Rineau
b913c0ba5f
Fix in intersection_of_Polyhedra_3: CMap default-constructor is not thread-safe
...
When `do_not_build_cmap_` is `true`, avoid even to construct the
default-constructed CMap, because that operation is not thread-safe.
2016-01-20 18:10:40 +01:00
Sébastien Loriot
7779aa1eee
add flag to first test for self-intersection facets involved in the intersection
2016-01-18 12:46:42 +01:00