Simon Giraudot
3413680a23
Bugfix: if test was inverted
2016-02-10 08:09:01 +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
Simon Giraudot
fd2e2e6395
Update namespaces with Properties moved out of Surface_mesh
2016-01-29 15:18:37 +01:00
Simon Giraudot
490b90650b
Improve readability of class Point set
2016-01-28 09:59:54 +01:00
Simon Giraudot
c9bf1e1d12
Remove useless debug display
2016-01-28 08:44:48 +01:00
Simon Giraudot
6d16b5cb12
Bugfix: use reference on pmap for points instead of copy
2016-01-28 07:20:47 +01:00
Simon Giraudot
3e09542e0e
Replace push_pmap with generalized template version
2016-01-25 15:28:32 +01:00
Simon Giraudot
262c697fb5
Fix how to access points and normals
2016-01-25 10:26:37 +01:00
Simon Giraudot
28f879eddf
Use iterator on indices as default
2016-01-25 09:54:49 +01:00
Simon Giraudot
ba40408f67
Erase function based on indices
2016-01-25 09:44:06 +01:00
Simon Giraudot
b5bbafb2f4
Add index property map + functors for back insertion and point/normal push pmap
2016-01-22 15:43:52 +01:00
Simon Giraudot
fdf3857226
Separate CGAL::Point_set_3 from Point_set_3 in polyhedron demo
2016-01-21 11:41:45 +01:00
Simon Giraudot
449ce4de7e
Bugfix: incorrect types
2016-01-21 11:24:11 +01:00
Andreas Fabri
993abde037
Add header todo: split it in just the point set and what is needed in the Polyhedron demo
2016-01-19 15:51:12 +01:00
Andreas Fabri
2b01b1763e
move Point_set_3.h
2016-01-19 15:47:29 +01:00
Andreas Fabri
d497120e5f
clean Point_set_processing
2016-01-05 17:17:10 +01:00
Sébastien Loriot
81d638341a
prevent internal namespace to be documented
2015-12-28 10:51:49 +01:00
Simon Giraudot
30c352f025
Bugfix: OFF reader should accept comments and empty lines
2015-11-25 09:18:15 +01:00
Simon Giraudot
99d4fc84bd
Merge branch 'Point_set_processing_3-IO_ply-GF-old' into Point_set_processing_3-IO_ply-GF
2015-10-15 14:27:57 +02:00
Laurent Rineau
18cac48bae
Merge pull request #367 from sgiraudot/Point_set_processing-hierarchical_clustering-sgiraudot
...
New point set processing algorithm: Hierarchical clustering
2015-10-14 10:54:37 +02:00
Clement Jamin
145131e2e6
Use Real_timer in PSP3 and T3 since the algorithms might be parallel
2015-10-08 15:34:40 +02:00
Simon Giraudot
09d2c9e5a4
Revert removal of hack to handle char properly (std::stream treats boost::int8_t as char)
2015-10-08 10:18:16 +02:00
Simon Giraudot
39eef61847
Add headers
2015-10-08 10:08:39 +02:00
Simon Giraudot
f614ce4ea1
Remove useless includes
2015-10-08 10:08:20 +02:00
Simon Giraudot
833982a32f
Use boost fixed-width integer types for portability (and remove hack for reading ASCII 'char')
2015-10-08 09:52:45 +02:00
Simon Giraudot
eb430e2397
Harmonize template indentation and remove outdated header
2015-10-08 09:24:35 +02:00
Simon Giraudot
79ca962159
Merge branch 'Point_set_processing_3-IO_ply-GF-old' into Point_set_processing_3-IO_ply-GF
2015-10-08 08:48:39 +02:00
Simon Giraudot
512273ae5f
Update doc and tests
2015-10-08 08:47:14 +02:00
Simon Giraudot
0916c32ded
Fix numeric_limits::max bug (conflict with other max)
2015-10-08 07:59:56 +02:00
Simon Giraudot
b35e34238a
Bugfix: if 2 input points are equal, avoid infinite loop and terminate non-empty cluster
2015-10-07 16:00:54 +02:00
Simon Giraudot
a068249ac5
Minor code cleaning/rewriting
2015-10-07 16:00:53 +02:00
Simon Giraudot
e6054bfdeb
Rename function and files in accordance to content
2015-10-07 16:00:53 +02:00
Simon Giraudot
20698d4dde
Make the algorithm a simplification algorithm instead of a clustering one
2015-10-07 16:00:53 +02:00
Simon Giraudot
28cf05f189
Remove duplicate code (use PCA_util.h to assemble covariance matrix)
2015-10-07 16:00:52 +02:00
Simon Giraudot
648c19b6f6
Remove unused typedef warning
2015-10-07 16:00:52 +02:00
Simon Giraudot
b16f7605d6
Enhancement: keep current cluster an only build one side instead of two
2015-10-07 16:00:52 +02:00
Simon Giraudot
cf9b7230d8
Algorithm is faster if the plane is not constructed
2015-10-07 16:00:52 +02:00
Simon Giraudot
5df527d2f0
Correct preconditions
2015-10-07 16:00:52 +02:00
Simon Giraudot
bf8d876d6d
More on user manual and reference manual
2015-10-07 16:00:51 +02:00
Simon Giraudot
e6c757f463
Begin working on reference manual
2015-10-07 16:00:51 +02:00
Simon Giraudot
14567ae261
Add variant with default diagonalize traits
2015-10-07 16:00:51 +02:00
Simon Giraudot
fea22733ee
Speed up using list instead of queue (avoid multiple copies) + bugfix
2015-10-07 16:00:51 +02:00
Simon Giraudot
5ab793531c
Bugfix: if one of the two sides is empty, only treat the non-empty side
2015-10-07 16:00:51 +02:00
Simon Giraudot
ed2d3167e2
Stack is faster than queue in this case
2015-10-07 16:00:51 +02:00
Simon Giraudot
7babff9f05
Optimizations (using splice for lists and reference for queue.front())
2015-10-07 16:00:51 +02:00
Simon Giraudot
eb7266a42d
Cleaning/reorganizing code, use diagonalize_traits and add variants with default parameters and template deduction
2015-10-07 16:00:50 +02:00
Simon Giraudot
e8dd34cb21
Implemented the efficient computation of the second centroid.
...
The hierarchical clustering algorithm gets about 15% faster
(on test Eglise Fontaine, from 91s to 76s).
2015-10-07 16:00:50 +02:00
Simon Giraudot
ee1e7ee714
Added the alternative implementation of hierarchical clustering using
...
the Eigen library.
For now, both implementations are available (switchable with a
2015-10-07 16:00:50 +02:00
Pierre Alliez
00fad8756a
Add comments in hierarchical clustering and fix indentations
2015-10-07 16:00:50 +02:00
Simon Giraudot
b87d1bbc3e
Very first version of the hierarchical clustering added (work in
...
progress).
It contains somes functions that may be more relevant in some other
package :
* 2 functions to compute the covariance matrix of a 3D point set
* 2 functions to split a point set according to a plane
Also the function of the actual hierachical clustering algorithm.
2015-10-07 16:00:50 +02:00