Commit Graph

3727 Commits

Author SHA1 Message Date
Paolo Cignoni a690c99fee Updated copyright disclaimer of the mc lookup table file after the explicit copyright transfer allowed by the original author of the file (Thomas Lewiner) 2016-06-13 05:28:31 +00:00
Paolo Cignoni 05f1e10d19 Removed unsupported emc 2016-06-13 05:23:20 +00:00
Paolo Cignoni 7cea7b7bfc small refactoring 2016-06-13 04:53:48 +00:00
Paolo Cignoni f250e7fcd7 Improved distance field volume reconstruction. 2016-06-13 04:48:23 +00:00
Paolo Cignoni 47334c555d Small change to make the bbox function in segment equal to the other vcg object (getbbox instead of bbox) 2016-06-12 21:10:46 +00:00
Paolo Cignoni 682586d0fa small change to refactor the use of viewpoint for normal disambiguation 2016-06-12 21:09:13 +00:00
mtarini 9c310f6ab4 Made AllocateEdge correctly compute per-edge border flag (whenever edges have flags) 2016-06-09 14:32:40 +00:00
Nico Pietroni aeffdc1090 minor changes on defaults parameters 2016-06-09 12:13:11 +00:00
Nico Pietroni 1d477515c0 Changed the epsilon value for Identity transformation in function RotationMatrix 2016-06-09 12:11:34 +00:00
Nico Pietroni c87a7105d6 changed DifferenceLineField to measeure the angle instead of the dot product 2016-06-09 12:10:41 +00:00
Nico Pietroni ae92d06e4e minor warning resolved 2016-06-09 12:09:12 +00:00
Paolo Cignoni 751a4ae261 corrected syntax error in use fo IsValidPointer 2016-05-11 10:55:28 +00:00
granzuglia a5f3b19d9d fixed compiler error (added a double cast) 2016-05-06 09:13:09 +00:00
granzuglia 673be536c4 added missing include 2016-05-06 02:16:24 +00:00
granzuglia 8cd4278c45 removed compiler error on sqrt 2016-05-06 02:14:54 +00:00
granzuglia ff360e8cbb removed warning int -> size_t 2016-05-06 02:13:27 +00:00
Nico Pietroni d3bb5d09e0 changed Segment2DSegment2DDistance to return the 2 closest points 2016-05-01 15:35:57 +00:00
Nico Pietroni 15cd436f90 Added the possibility of smoothing the Quality 2016-05-01 15:34:53 +00:00
Nico Pietroni e091e22735 indented and minor changes 2016-05-01 15:34:32 +00:00
Nico Pietroni 97a0879676 added operator < 2016-05-01 15:33:34 +00:00
Nico Pietroni d91e861ab5 changed float to ScalarType in VertexSaturate function 2016-05-01 15:32:57 +00:00
Gianpaolo Palma 694ffd7cb0 Bug Fixed in the function doQueryK if the point cloud contains less than k points 2016-04-28 10:48:19 +00:00
Paolo Cignoni eac3243375 Added comments and MaxCountInRange function to get the max bucket count in the specified range 2016-04-20 22:05:28 +00:00
mtarini 5c37e87b06 SetQasDistorsion now: (1) returns the total per-mesh distortion, properly aggregated (2) can compute L2 and L-inf energies 2016-04-13 11:46:38 +00:00
mtarini 480af9d03d fixed compile-time compatibility toward meshes without Tangent Dirs 2016-04-13 11:33:59 +00:00
Paolo Cignoni e4fce70f35 Temporary Commit. Still to be improved the CurveOnManifold framework... 2016-04-12 08:35:21 +00:00
Paolo Cignoni a8bfaef6b6 corrected/completed some HasVEAdjacency HasEEAdjacency etc 2016-04-11 21:12:26 +00:00
Paolo Cignoni b15c84c753 Added missing IsVEInititialized and VEClear 2016-04-11 20:41:34 +00:00
Paolo Cignoni 45881efd75 Added TestVertexEdge to check correctness of vertex edge adjacency relation 2016-04-11 20:37:05 +00:00
Paolo Cignoni 71ae65fde7 Modified according to the changes of edge::VVStarVE 2016-04-11 20:34:56 +00:00
Paolo Cignoni 7d3175573a edge::VVStarVE now is templated on VertexType instead of EdgeType to avoid useless explicit template specialization 2016-04-11 20:34:18 +00:00
Paolo Cignoni 6f0d5cb168 Added very useful "IsValidPointer" functions that check that a given pointer is within the reasonable bounds for a given mesh (eg. given a vertex pointer it checks that it is between begin and end of the vertex vector) 2016-04-11 20:31:56 +00:00
Paolo Cignoni 298714ccea Refactored and commented. Now can also cut along non faux edges 2016-04-02 08:30:24 +00:00
Paolo Cignoni a989737e26 Changed DihedralAngleRad to do not use precomputed per face normal (it already did for part of the computations) 2016-04-02 05:47:20 +00:00
Paolo Cignoni 9720d0c5a6 better comments 2016-04-02 05:42:28 +00:00
Paolo Cignoni c5095c6e1b Added 0-1 clamping to setgray 2016-04-02 05:42:05 +00:00
Paolo Cignoni f4686b3e0f Added Parula-like color map
removed bug on un-clamped set gray
2016-03-31 13:48:45 +00:00
Paolo Cignoni 73b0576edf Significantly refactored. Renamed a bunch of variables, removed useless parameters. Corrected various minor bugs. Changed the semantics of quality weighting (was bugged!) 2016-03-24 14:17:34 +00:00
Paolo Cignoni a58040cf9c Switched to eigen to find the optimal position for quadric. Removed old unused funcitons. Commented. 2016-03-24 14:15:55 +00:00
Luigi Malomo 0aec75be39 added option for computing biharmonic field 2016-03-23 17:08:22 +00:00
giorgiomarcias 24fe5cb6a0 Deallocating a dynamically allocated array of data must be done with delete[] instead of delete 2016-03-23 13:02:35 +00:00
Luigi Malomo bef4835ca2 added static identity function to matrix33 2016-03-21 15:16:50 +00:00
Paolo Cignoni 7b89a1f125 Refactored a bit SuperQuadric functions (suggestion of David Cattermole) 2016-03-08 18:50:26 +00:00
Paolo Cignoni 247177a584 Corrected missing return value in SplitSelectedVertexOnEdgeMesh (thanks to David Cattermole) 2016-03-08 18:49:49 +00:00
Paolo Cignoni 4867a33379 corrected error in the formula of supertoroid: wrong radii usage 2016-02-17 11:11:19 +00:00
giorgiomarcias b7694288e5 Corrected vertex reference assignment for second triangle in AddQuadFace for the case of two triangles with faux flags 2016-02-14 06:56:26 +00:00
Paolo Cignoni b035dc8ba7 corrected surface orientation of supertoroid 2016-02-12 22:40:15 +00:00
Paolo Cignoni 3e1fdd802d Re-oriented torus so that it is created as expected on the xy plane and with the z axis symmetry 2016-02-12 07:02:44 +00:00
Paolo Cignoni a03703e2e6 Factorized better the volume creation part 2016-02-12 06:55:09 +00:00
Paolo Cignoni 98f1a78882 harmless clang warning 2016-02-12 06:54:20 +00:00
Paolo Cignoni 13951475e9 Added SuperEllipsoid and SuperToroid functions
Thanks to Antonio Nicoletti
2016-02-11 15:47:06 +00:00
Paolo Cignoni 8ee0aafb6e Added Sgn function
added hack for missing is_nan in mingw 
Thanks to Antonio Nicoletti
2016-02-11 15:43:20 +00:00
Paolo Cignoni 9edf3201b2 Added surface edge extraction to voronoi edges 2016-02-11 14:55:23 +00:00
Paolo Cignoni b2203ab96a harmless clang warning 2016-02-11 06:09:31 +00:00
Paolo Cignoni c8d5931584 better comments in ransac 2016-02-09 12:13:57 +00:00
Paolo Cignoni cbcc40a8e2 Improved ransac. 2016-02-09 09:35:43 +00:00
Nico Pietroni 83f0deca4d added functionalities to evaluate distortion wrt a cross field 2016-02-08 13:42:29 +00:00
Nico Pietroni 46f8492f05 added check on number of borders 2016-02-08 13:41:33 +00:00
Paolo Cignoni de041d732b first templated version of the ransac framework 2016-02-08 07:01:53 +00:00
Paolo Cignoni 831e3f9036 fine tuning of the voronoi scaffolding engine 2016-02-04 18:18:53 +00:00
Paolo Cignoni 61fa57f561 added missing component to the internal mesh class of voronoi atlas 2016-02-02 15:10:49 +00:00
Paolo Cignoni cc388bebfe moved Redetail sampler class from meshlab to here. 2016-02-02 15:09:54 +00:00
Paolo Cignoni 9412d27833 Significant changes and improvements to the voronoi volumetric sampling framework. Thickness evaluation is almost usable... 2016-02-02 15:06:40 +00:00
Paolo Cignoni fd9cb58466 Commented out unused variable 2016-01-30 23:36:10 +00:00
Paolo Cignoni ceaa1c7ffb Added ComputeMeshVolume to the Stat<> class 2016-01-30 23:09:05 +00:00
Paolo Cignoni e8c27766a7 Added two methods for point cloud smoothing of quality (median and average) 2016-01-30 23:08:17 +00:00
Paolo Cignoni 3330625ba6 Added a simple IsWaterTight method 2016-01-30 23:05:51 +00:00
Paolo Cignoni 5394d354f9 Minor changes to improve robustness of voronoi retriangulation 2016-01-28 06:47:47 +00:00
Paolo Cignoni 8b9efe576d Added a TrivialMidPoint Refine that always works and do not need any topology... 2016-01-27 22:46:12 +00:00
Paolo Cignoni a437952298 last changes to curve_on_manifold 2016-01-11 15:06:35 +00:00
Marco Callieri 32d500be36 corrected a bug: a pushback of normal was missing in the case (qH[m.face[i].V(j)] == 0) 2016-01-05 10:27:50 +00:00
Marco Callieri d32b8eb287 added a function for calculating the barycenter of a pointcloud mesh (with uniform weight, or using vertex quality as vertex weight). 2016-01-04 13:53:15 +00:00
Paolo Cignoni 1f22183b90 better comments (After some curses...) 2015-12-31 11:47:57 +00:00
Paolo Cignoni 79c9b988e7 better comments (After some curses...) 2015-12-31 11:47:37 +00:00
Paolo Cignoni eb6db70c6b heavy restructuring now start to really work 2015-12-31 11:47:13 +00:00
Paolo Cignoni 399e4b204d added a require per face mark 2015-12-31 11:46:51 +00:00
Paolo Cignoni a6ba20c338 First version of the Curve On Manifold managment class. 2015-12-29 07:22:13 +00:00
Paolo Cignoni 952913c1de correced the point-edge distance functor and added a pair of templated helper functions for edges (lenght and center) 2015-12-29 07:21:30 +00:00
Paolo Cignoni 37716e73e5 removed a useless typedef (clang warning) 2015-12-29 07:19:41 +00:00
Paolo Cignoni 132334f878 Significant refactoring of the update selection class. Added many comments. Added to almost all reasonable functions the possibility of preserving/updating the current selection status. 2015-12-29 07:19:02 +00:00
Paolo Cignoni 6e7b2363bc Added many Vertex-Edge adjacency helper functions. Needed for simpler 1-manifold edge mesh processing
Degree, Edge-Collapse, Manifold testing, Detach/Append
2015-12-29 07:16:14 +00:00
Nico Pietroni ff69fec423 added inclusion of "vcg/complex/allocate.h" and other minor changes 2015-12-24 10:57:33 +00:00
Nico Pietroni 303be4bbd0 templated FibonacciPt function on ScalarType 2015-12-24 10:55:48 +00:00
Nico Pietroni 8bc9d1a195 templated ComputePerFaceQualityDistribution on mesh scalar type 2015-12-24 10:53:18 +00:00
Nico Pietroni 04095c6f19 Added CrossFieldToAngles and AnglesToCrossField functions 2015-12-24 10:52:33 +00:00
Paolo Cignoni e878336450 Renamed VertexTMark into EmptyMark to reflect its nature (do nothing) and be easier to be used in other context (e.g. as a dummy marker functor for edges) 2015-12-03 22:59:13 +00:00
Paolo Cignoni 1cd0321916 Renamed VertexTMark into EmptyMark to reflect its nature (do nothing) and be easier to be used in other context (e.g. as a dummy marker functor for edges) 2015-12-03 22:58:23 +00:00
Paolo Cignoni 13b1a8f1d9 Renamed VertexTMark into EmptyMark to reflect its nature (do nothing) and be easier to be used in other context (e.g. as a dummy marker functor for edges) 2015-12-03 22:58:08 +00:00
Paolo Cignoni 75aeed8d04 Added scalar type definition in the edgetype once the vertexref is defined. 2015-12-03 22:53:16 +00:00
Paolo Cignoni a52a1484e6 Corrected bug in the VVExtendedStarVF . 2015-12-03 22:51:56 +00:00
Paolo Cignoni d628c95688 harmless clang warnings 2015-11-26 22:02:43 +00:00
Paolo Cignoni bc683209eb Working version of volumetric voronoi/poisson sampler 2015-11-26 12:16:36 +00:00
Paolo Cignoni 31289ce372 cleaning harmless clang warning 2015-11-26 12:16:05 +00:00
Paolo Cignoni fc04c15046 Renamed the anonymous Build() functions to something more meaningful 2015-11-26 12:15:09 +00:00
Nico Pietroni c0bc236482 added PerEdgeQualityRamp function 2015-11-23 23:40:47 +00:00
Nico Pietroni 2b367da917 added ComputePerEdgeQualityMinMax 2015-11-23 23:39:32 +00:00
Luigi Malomo 35ed4897f6 uniform edge resampling: added option to force inter-sample distance to be less than the radius 2015-11-06 17:32:29 +00:00
Paolo Cignoni 757039f2b8 Made the midpoint refine operator order independent 2015-11-06 09:44:40 +00:00
Luigi Malomo f7365a3c10 added VertexSetS function 2015-11-05 23:36:09 +00:00
Luigi Malomo 62b7955f22 fixed uniform resampling of edge mesh 2015-11-05 23:35:44 +00:00