Commit Graph

844 Commits

Author SHA1 Message Date
Nico Pietroni e091e22735 indented and minor changes 2016-05-01 15:34:32 +00:00
Nico Pietroni d91e861ab5 changed float to ScalarType in VertexSaturate function 2016-05-01 15:32:57 +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 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 298714ccea Refactored and commented. Now can also cut along non faux edges 2016-04-02 08:30:24 +00:00
Paolo Cignoni 9720d0c5a6 better comments 2016-04-02 05:42:28 +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
Luigi Malomo 0aec75be39 added option for computing biharmonic field 2016-03-23 17:08:22 +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
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 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 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 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 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
Nico Pietroni ff69fec423 added inclusion of "vcg/complex/allocate.h" and other minor changes 2015-12-24 10:57:33 +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 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
Luigi Malomo 1480d19996 commented debug printfs 2015-11-04 17:18:42 +00:00
Marco Callieri a214eb3b66 added option to add "gutter" space around planar parametrization (default is no gutter) 2015-11-04 12:32:35 +00:00
Paolo Cignoni e4d83262fe Corrected a number of int -> size_t warning 2015-10-29 22:56:11 +00:00
Marco Callieri 497a42dffe added "only on selection" to PerVertexAddNoise and PerVertexPerlinNoise functions 2015-10-29 14:26:16 +00:00
Marco Callieri 6715e4f658 - added a "only on selection" option to VertexUniform and AllVertex sampling functions
- added a "isD" check to VertexUniform sampling function

to be tested
2015-10-29 13:44:25 +00:00
Paolo Cignoni 4efdccf204 Added PerFace Normal sampling 2015-10-28 12:52:25 +00:00
Paolo Cignoni d015efca10 corrected small bug (!visited instead of visited) 2015-10-26 10:06:17 +00:00
Gianpaolo Palma ec8dde9326 Bug fixed: the algorithm sets the visited flags for all the vertices added to the convex hull. 2015-10-26 09:12:09 +00:00
Paolo Cignoni d15745b128 Corrected missing template and typename keyword and added function to just select the points 2015-10-25 23:24:23 +00:00
Paolo Cignoni 12c1495bb0 Added function for computing the visibility of a point cloud and corrected a few bugs (abs instead of fabs, and missing vertex index for the vertices of the first tetrahedron) 2015-10-23 23:00:12 +00:00
Luigi Malomo ac6d5cc362 fixed wrong function call 2015-10-22 10:45:18 +00:00
Gianpaolo Palma 6cf0410a6f Bug fixed in the definition of the PerVertexAttribute "indexInput" 2015-10-21 15:57:54 +00:00
Paolo Cignoni 9a48f16579 Added a number of 'template' and 'typename' keyword to comply clang... 2015-10-21 12:01:48 +00:00
Paolo Cignoni 3f1b4519b5 Moved Hausdorff sampler from meshlab to vcglib 2015-10-20 22:32:16 +00:00
Gianpaolo Palma c3abaf8036 Add features: to store for each vertex of the convex hull the vertex index of the original mesh 2015-10-20 11:13:11 +00:00
Gianpaolo Palma ea23077621 Add methods to detect and remove the outliers from a point cloud 2015-10-19 07:31:09 +00:00
Gianpaolo Palma e04ee78f74 Add file to compute the convex hull of a mesh using the QuickHull algorithm 2015-10-19 07:18:10 +00:00
Paolo Cignoni 874346d211 Removed unused typenames (with latest generation of compilers it become a warning as unused variables) 2015-09-24 16:41:34 +00:00
Nico Pietroni e612b0b2f8 modified PerVertexDijsktraCompute to return parent and source for each node 2015-09-14 12:05:44 +00:00
Nico Pietroni bb5288bcc0 templated SimpleVoxelWithNormal class to ScalarType 2015-09-14 12:03:47 +00:00
Nico Pietroni 0371a3c5be templated Point3 to scalar at line 355 2015-09-14 12:03:19 +00:00
Nico Pietroni b0e9f8abef used principal direction components on face for cross field instead of optional component 2015-09-14 12:02:50 +00:00
Nico Pietroni 05516b1e04 corrected GradientToCross added InitDirFromWEdgeUV function 2015-09-14 12:01:24 +00:00
Nico Pietroni cb9e276b1b added CopyWedgeVertUV 2015-09-14 12:00:33 +00:00
giorgiomarcias 3323ae51af Computing per vertex normals from current face normals works also with polygonal faces now. 2015-09-13 15:37:13 +00:00
Paolo Cignoni f0c3d52849 removed old style usage of hash map and substituted with c+11 sytle unordered set and map. 2015-09-13 06:21:17 +00:00
Paolo Cignoni ad95129d02 removed old style usage of hash map and substituted with c+11 sytle unordered set and map. 2015-09-13 06:18:26 +00:00
Paolo Cignoni b4bdd7b832 better comments 2015-09-11 05:56:59 +00:00
Paolo Cignoni 59ffba5af3 corrected bug on normal transformation (Thanks to Marco to spotting it out...) 2015-09-10 15:08:52 +00:00
granzuglia 5dcc3d257f - added missing include 2015-07-30 11:49:14 +00:00
Paolo Cignoni bc9c61a92e Added ClearFaceFace method to avoid messed topology status 2015-07-14 10:44:23 +00:00
Paolo Cignoni 06040acbb0 Corrected small bug in compacting arrays after a torus creation. Also faces must be compacted... 2015-07-12 10:44:55 +00:00
granzuglia 1dc8a067ac - removed compiler time errors 2015-07-06 02:38:32 +00:00
Gianpaolo Palma a6521a217f Bug fixed in FaceFaceFromTexCoord when the mesh has more faces mapped on the same tex coordinate 2015-07-03 14:51:40 +00:00
Gianpaolo Palma e5fbdd9e22 Added a new function (SelectFoldedFaceFromOneRingFaces) to selected the folded faces (also non self-intersected faces) using an angle threshold. 2015-07-03 12:21:54 +00:00
Nico Pietroni 5e4380ffbd added CopyVertUVWedge function 2015-06-21 01:51:28 +00:00
Nico Pietroni 470e156a19 added function AdjustDirectionsOnTangentspace ando some minor changes 2015-06-14 23:16:02 +00:00
Nico Pietroni 4283c2f651 some bug resolved on separatrix tracing 2015-06-02 11:54:39 +00:00
Nico Pietroni b952d96711 Added support for tracing separatrix from singularities 2015-05-24 14:52:50 +00:00
Nico Pietroni d58ac7ca03 templated parameter on VertexConstant function 2015-05-12 09:05:52 +00:00
Nico Pietroni 843c852523 correct template scalar type use in FaceSaturate function 2015-04-12 06:13:35 +00:00
Nico Pietroni d68f4271bc chenged SetFaceCrossVectorFromVert to take in consideration also magnitudo 2015-04-12 06:12:13 +00:00
Paolo Cignoni f2d3ff160c Added a RequirePerVertexMark to the init function of the collapse framework. 2015-03-24 17:57:40 +00:00
Paolo Cignoni 571c59c180 Removed the old stupid limitation of FF requirement for creating a sphere 2015-03-24 17:42:32 +00:00
Luigi Malomo 4d74a93851 minor changes 2015-03-18 19:48:03 +00:00
Luigi Malomo 8fe9f931c1 Fixed typo. 2015-03-16 14:31:48 +00:00
Luigi Malomo 20429b9801 Fixed wrong check for FF adj. 2015-03-16 14:06:09 +00:00
giorgiomarcias d2b0ac56c7 Fixed a small bug causing not preservation of border vertex coordinates in some cases during polychord collapse. 2015-01-08 22:49:15 +00:00
giorgiomarcias 75534804cf Using only the laplacian weight lapWeight for the matrix and 1 - lapWeight for the barycentric constraints in the implicit smoother (removed the unusefull face weight). 2015-01-07 21:22:34 +00:00
giorgiomarcias c3bfe8f269 Added the possibility of passing the weights to set in the matrix of the implicit smoother. 2014-12-23 19:47:14 +00:00
giorgiomarcias aafb13219e Changed a wrong (fortunately not used) enum value. 2014-12-19 11:32:18 +00:00
giorgiomarcias b179459e62 Fixed a weird bug that caused wrong check on self-intersections and polychord's adjacency. 2014-12-18 17:07:08 +00:00
Luigi Malomo c722cedeaa Fixed bug in VertexBorderFromFaceBorder function. 2014-12-10 00:55:37 +00:00
Nico Pietroni f7a602625f minor change to merge vertex coherently (keep the same global ordering of the vertices) 2014-12-08 15:13:32 +00:00
Nico Pietroni 9c85a56214 changed IsSingularByCross..
added OrientDirectionFaceCoherently
2014-12-08 15:12:29 +00:00
Paolo Cignoni cca512c266 Added parameters to control the cylinder refinement to the BuildCylinderVertexShell functions 2014-12-05 03:25:52 +00:00
Paolo Cignoni 90e07822e5 Added BarycentricRelaxVoronoiSamples and QuadricRelaxVoronoiSamples 2014-12-04 16:04:20 +00:00
giorgiomarcias 8f04d22bb6 Added a per-face barycentric constraints weight. Removed some annoying warnings. 2014-11-30 19:32:17 +00:00
giorgiomarcias 6ecf866467 Removed some annoying warnings. 2014-11-30 19:31:35 +00:00
giorgiomarcias ad7f96a642 Removed several unusefull asserts on polychord splitting. 2014-11-24 08:23:23 +00:00
giorgiomarcias 6e0fe4fb49 Changed the SplitPolychord method: now it handles any polychord, especially self-intersecting ones. 2014-11-15 17:55:46 +00:00
Paolo Cignoni 8959e68790 Small change still related to the normal -> trianglenormal renaming 2014-11-14 23:01:21 +00:00
Paolo Cignoni 1d79254dbc Added PerVertexArea and PerFaceArea to collect vectors of areas from a mesh 2014-11-13 22:50:39 +00:00
Nico Pietroni 137e34a44f first release version 2014-11-12 15:37:21 +00:00
Nico Pietroni b4150e3e5c 2014-11-12 15:22:09 +00:00
Nico Pietroni 5f4726ca08 2014-11-12 15:21:27 +00:00
Paolo Cignoni 9d89004760 Updated to reflect the Normal() -> TriangleNormal() change
Updated to reflect the changes to the UpdateFlags (new function names ::VertexBorderFromFaceAdj ::VertexBorderFromFaceBorder)
2014-11-12 00:14:23 +00:00
Paolo Cignoni 4b0e72293f Added ComputeValence function 2014-11-12 00:13:05 +00:00
Paolo Cignoni 6f4d33519b Updated to reflect the changes to the UpdateFlags:
new function names ::VertexBorderFromFaceAdj ::VertexBorderFromFaceBorder
2014-11-12 00:12:32 +00:00
Paolo Cignoni d6e5ff4512 Updated to reflect the changes to the UpdateFlags:
new function names ::VertexBorderFromFaceAdj ::VertexBorderFromFaceBorder
2014-11-12 00:12:10 +00:00
Paolo Cignoni 18d91de047 Updated to reflect the Normal() -> TriangleNormal() change
And added function to compute normals per polygonal faces
2014-11-12 00:09:58 +00:00
Paolo Cignoni 884795203c Added VertexBorderFromFaceAdj function (needed for managing polymesh that do not have per face border bit) 2014-11-12 00:08:59 +00:00
giorgiomarcias 1f369bbf09 Added the option for selecting polychord loops only. 2014-11-07 15:38:00 +00:00
Nico Pietroni 8c93868ca7 major modification to works with constraints 2014-11-07 12:02:24 +00:00
Nico Pietroni 06bc9ba660 generalized to polygonal faces 2014-11-07 11:42:10 +00:00
Nico Pietroni d93bfe908f changed reference to vertex function in order to compile with polygonal faces 2014-11-07 11:41:41 +00:00
Paolo Cignoni 177cf43069 Added two other meshAssert tests (quads and tris) 2014-11-06 15:10:00 +00:00
giorgiomarcias e1027dedb5 Added method to find all polychords on a mesh (returns the list of Pos's, one for each polychord start edge). 2014-11-06 11:04:19 +00:00
Nico Pietroni 66bd26ed70 minor warning corrected 2014-11-05 19:25:57 +00:00
Nico Pietroni 505fa04c73 Changed per vertex nomal computation to works with polygons 2014-11-05 19:24:46 +00:00
Nico Pietroni f115db004c major changes in UpdateSingularByCross, used the additional parameter to set if a vertex is singular or not 2014-11-05 19:23:42 +00:00
Paolo Cignoni e29b6f4a46 More refactoring of implicit smooting class 2014-11-05 17:23:13 +00:00
Paolo Cignoni eb2b5e7fa5 refactoring to remove quality 2014-11-05 16:22:06 +00:00
Paolo Cignoni d03a5a97d2 First version of the implicit smoother 2014-11-05 15:48:34 +00:00
Paolo Cignoni db53a1ff06 Cleaned up harmonic.h (added standard header, needed meshassert) 2014-11-03 15:00:06 +00:00
Paolo Cignoni e1a327e556 added a missing include callback.h 2014-11-03 14:59:07 +00:00
Paolo Cignoni b328a5f94a Added the new mechanism for run time checking of mesh adequacy to a given algorithm.
While the many RequireXXX functions allow to check the static correctness of a mesh and
have a O(1) complexity, in many cases we need to run more complex checks to be sure that
the subsequent algorithm can run without issues.
Typical cases are the fact that there are no unreferenced vertices (NoUnreferencedVertex)
or a given adjacency is correctly initialized (and not only statically present as a type component).
2014-11-03 14:50:37 +00:00
Paolo Cignoni df6865a6de Changed many explicit exception throwing for missing components into the shorthand RequireXXXX 2014-11-03 14:38:05 +00:00
Paolo Cignoni 5565647e82 Added two functions VertexFromAttributeHandle and FaceFromAttributeHandle to map a pervertex/perface scalar handle into the quality 2014-11-03 14:36:58 +00:00
Paolo Cignoni b278f29129 Changed many explicit exception throwing for missing components into the shorthand RequireXXXX 2014-11-03 14:34:35 +00:00
Paolo Cignoni 6830b4aea4 Changed many explicit exception throwing for missing components into the shorthand RequireXXXX 2014-11-03 14:33:45 +00:00
giorgiomarcias af0f42fedf "public"-ized some previously "private" static method which are useful also outside. Added a "PC_OTHER" result code for user-defined purposes. 2014-10-17 08:54:34 +00:00
ganovelli 46031c54ca added GetClosestEdgeBase from space/index/index2/closest_2d.h which is going to be removed 2014-10-09 12:53:40 +00:00
granzuglia 9f647f2460 - added missing cast causing compiler error 2014-09-25 17:11:45 +00:00
Paolo Cignoni 03fb236a82 Improved EdgeMeshUniform to sample also closed loops of edges correctly 2014-09-19 17:07:02 +00:00
Luigi Malomo 70154e50bb face border computation from FF adjacency fixed for polygon meshes 2014-09-19 10:57:05 +00:00
granzuglia 42e1ae0cfb - fixed a compatibility problem with MeshLab single precision version 2014-09-17 14:13:45 +00:00
Nico Pietroni e9ba519fa4 small change to do not insert and cycle to find polygons of size 0 2014-09-14 01:02:42 +00:00
Nico Pietroni 0a91defac8 templated the function VertexClamp wrt input scalar type 2014-09-11 20:42:30 +00:00
Paolo Cignoni 053b649ed2 Added perturbation to the voronoi seed relaxing 2014-09-07 21:36:30 +00:00
Paolo Cignoni d8293c0c05 Updated RestrictedVoronoiRelaxing to use area weighted sum of nearest vertexes to compute barycenter 2014-08-30 07:50:22 +00:00
Nico Pietroni 6d042e5200 added FaceFauxBorder function 2014-08-29 15:10:06 +00:00
Paolo Cignoni 0e15b05070 Added more control on the initialization of the random generator in the poisson sampling 2014-08-29 13:21:27 +00:00
Nico Pietroni feff81dd01 solved minor error with templated scalar type 2014-08-28 09:46:49 +00:00
Nico Pietroni ae18d9b445 added VectorFromCoord function 2014-08-28 09:46:16 +00:00
Paolo Cignoni 0337582896 Added managment of fixed vertices in the restricted voronoi relaxing 2014-08-28 09:28:39 +00:00
Paolo Cignoni 636cf7bf8a Added possibility of specifying approximation tolerance in the posson disk sampling by number 2014-08-28 09:28:14 +00:00
Paolo Cignoni c08ca27367 harmless warning 2014-08-28 01:56:28 +00:00
Paolo Cignoni fdf0b5b2ec minor aestetical changes and added edge size checking to the IsSizeConsistent function 2014-08-28 01:55:43 +00:00
Paolo Cignoni 875a7d1aac Added RestrictedVoronoiRelaxing mode to the voronoi framework 2014-08-28 01:54:32 +00:00
Paolo Cignoni b452c7a305 Changed the wrapper for poisson disk sampling to use the exact pruning option if radius is not specified.
Corrected bug in the exact pruning that failed to return radius in some cases
2014-08-28 01:53:58 +00:00
Paolo Cignoni 60ca2f2d72 Updated 4pcs to float/double independnece 2014-08-26 08:45:04 +00:00
Paolo Cignoni 967f61b2be Added EdgeMeshUniform method that generate samples over the edges of a polyline in a uniform way. 2014-08-26 01:43:04 +00:00
Paolo Cignoni c6e5015090 Added SplitSelectedVertexOnEdgeMesh that split an edge mesh along the selected vertices. Useful to decompose an edgemesh into simple manifold polylines. 2014-08-26 01:42:09 +00:00
Paolo Cignoni a9202ed7db Added method BuildFromNonFaux to build an edgemesh composed by the "non faux edges". 2014-08-26 01:40:46 +00:00
Paolo Cignoni 9682fcd27d Added to the UpdateFlags::FaceFauxSignedCrease the option to mark as non faux also the boundary edges. 2014-08-26 01:39:18 +00:00
Paolo Cignoni 331021191e cleaned up the field smoohter (includes, headers etc) 2014-08-23 01:37:18 +00:00
Paolo Cignoni 855280fc08 better comments 2014-08-23 01:36:16 +00:00
Paolo Cignoni 6ba1493e3e Small changes for float/double independence 2014-08-23 01:35:52 +00:00
Paolo Cignoni 9b519cb2b8 Added ValidCell check to manage invalid cell in the trivial_walker.
Corrected compiling error due to the derivation from a templated base class (a few "this->" required)
2014-08-23 01:35:15 +00:00
Paolo Cignoni 305ac24a23 Refactored Geodesic a bit to allow float/double independency 2014-08-23 01:33:53 +00:00
Paolo Cignoni e032901b7f updated voronoi processing stuff to manage float/double and to use the new kdtree 2014-08-23 01:32:50 +00:00
Paolo Cignoni 7285fadd53 updated the ball pivoting alg to the new kdtree 2014-08-23 01:31:16 +00:00
granzuglia 5e099ffd51 - SimpleVolume is now derived from BasicGrid<VOX_TYPE::Scalar> (change has been validated by Fabio Ganovelli) 2014-08-21 16:18:04 +00:00
Paolo Cignoni 211274ab04 Small change to the init of the simple volume class to include the correct initialization of the actual space occuped by the volume 2014-08-13 06:48:20 +00:00
Luigi Malomo bb49f1c657 fixed types in OrientedDisk function 2014-08-09 17:10:19 +00:00
granzuglia b5bfb0e438 complex/base.h:
- removed Visual Studio warnings
2014-08-09 10:01:15 +00:00
Paolo Cignoni ce65164b58 harmless header clean up 2014-08-09 00:22:21 +00:00
Paolo Cignoni 7db065556a Adapted the trivial walker of marching cube to float/double independence 2014-08-09 00:21:07 +00:00
Paolo Cignoni 03c2648af1 Strongly refactored in order to guarantee better independence between the resampled mesh an the original one 2014-08-09 00:19:48 +00:00
Paolo Cignoni 5fab3cefd1 Added namespaces, copyright and a bit of cleaning... 2014-08-09 00:15:52 +00:00
Paolo Cignoni f456e8aca3 throw exception -> RequireXXXX refactoring 2014-08-09 00:14:42 +00:00
Paolo Cignoni 352d386a53 Just a few other size_t vs int clarifications 2014-08-09 00:02:52 +00:00
Paolo Cignoni d89f934e3e Removed unused local variable. (harmless gcc warning) 2014-08-08 22:06:12 +00:00
Luigi Malomo 2e5ac741a8 added closest face function which returns also barycentric coordinates and the interpolated normal for the closest point.
fixed Inside class for checking if a point is inside a mesh
minor fixes
2014-07-26 14:44:59 +00:00
Nico Pietroni 2a389bd83d commented assert line 198 that works only for quadrilateral meshes 2014-07-26 08:41:21 +00:00
Paolo Cignoni 7b226f290c corrected a few overloading error in the execute flipping members 2014-07-13 06:23:46 +00:00
Paolo Cignoni 8f35e48f43 harmless clang warning (size_t vs int) 2014-07-12 21:29:24 +00:00
Paolo Cignoni 280a9e606b Updates pointcloud normal and smooth to the thread safe changes to the kdtree. 2014-07-12 05:50:32 +00:00
Nico Pietroni bc45cfeef4 corrected 1 compilation issue with mesh passed as const 2014-07-05 14:20:00 +00:00
Nico Pietroni c74af00fdf minor modification 2014-07-04 13:29:24 +00:00
Paolo Cignoni a743e93a70 Reasonable but harmless clang warning cleanup 2014-07-03 21:28:40 +00:00
Nico Pietroni 6b106d97fb first release version 2014-07-03 15:52:26 +00:00
Nico Pietroni 44f41b7c4c first release version 2014-07-03 15:52:05 +00:00
Nico Pietroni 8b0db14e84 reformatted and erased some commented code 2014-07-03 15:39:36 +00:00
Paolo Cignoni 2c0fa9a323 Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-07-01 10:13:18 +00:00
Paolo Cignoni 15d9307584 Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-07-01 10:12:49 +00:00
Paolo Cignoni c1d6d4e9bd Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType.
Removed also the use of an additional mesh type called spheremesh to create sphere (the method require ff adj).
2014-07-01 10:11:23 +00:00
Paolo Cignoni 073e07a309 Reasonable but harmless clang warning cleanup 2014-07-01 10:07:36 +00:00
Paolo Cignoni 26e8652a24 Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-07-01 06:20:23 +00:00
Nico Pietroni 9a5b7bdbd3 generalized ComputePerFaceQualityMinMax to use template parameters 2014-06-30 15:47:58 +00:00
Nico Pietroni af8ce3b7e2 corrected 1 bug in ImportFromPolyMesh 2014-06-30 15:47:23 +00:00
Paolo Cignoni 811ac9b940 Add managment of polygonal to tri conversion even for the case of two polygonal meshes... 2014-06-27 15:16:02 +00:00
Paolo Cignoni 87e2599d27 Added a missing ImportData in the polygon to tri converstion function in order to allow the copy of most of the data from the polygonal face to the splitted one. 2014-06-24 08:50:32 +00:00
Paolo Cignoni babd813674 Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-24 08:49:09 +00:00
Paolo Cignoni 934e5d9e3e Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-24 08:48:27 +00:00
Paolo Cignoni eb642099f1 Corrected another typeclash in the curvature types (a CurVecType definition was missing in the emptycore component) 2014-06-24 08:41:41 +00:00
Nico Pietroni c918b9097c correct 1 bug in VertexBorderCorner function 2014-06-22 12:28:56 +00:00
Nico Pietroni bcd4124282 minor compilation issues 2014-06-22 12:28:21 +00:00
Paolo Cignoni 5349e55fed Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-19 15:01:54 +00:00
Paolo Cignoni bc980f70cc Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-19 11:45:00 +00:00
Paolo Cignoni e29b18045c Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-19 10:26:13 +00:00
Paolo Cignoni 3bc58b7018 Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType
and removed a small bug (in the initialization the first ball sphere could fail for approx errors)
2014-06-19 10:25:50 +00:00
Paolo Cignoni 59779347ab Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-19 10:24:27 +00:00
Paolo Cignoni c30978903d Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-19 10:23:58 +00:00
Paolo Cignoni 4fbbfe4f86 Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 17:30:02 +00:00
Paolo Cignoni c5efcad9a2 Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 17:29:08 +00:00
Paolo Cignoni 0970bd18ca Small changes in the long long way to making meshlab and the vcglib really float/double independent
TexCoordScalarType can be different from the mesh scalar type
2014-06-18 10:52:24 +00:00
Paolo Cignoni 3808c3dbd4 Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 10:39:43 +00:00
Paolo Cignoni 225af65457 Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 10:38:52 +00:00
Paolo Cignoni 4c30ba4672 Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 10:38:15 +00:00
Paolo Cignoni b6c540f554 Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 10:37:48 +00:00
Paolo Cignoni 3edd987ef2 corrected small bug in the BuildVolumeSampling member of the voronoi volumetric sampling 2014-06-17 15:01:18 +00:00
Paolo Cignoni a90b2a79ef Wrong type cast 2014-06-17 14:48:39 +00:00
Paolo Cignoni b389e3a314 removed a few point3f and changed into coordTypes 2014-06-17 13:42:10 +00:00
Paolo Cignoni a2ba22e4fb Added BuildPrismFaceShell to convert a mesh into a set of extruded prisms (one for each face...) 2014-06-17 13:20:42 +00:00
Paolo Cignoni 28d838ca49 Corrected a small bug in the poisson sampling exact number helper. 2014-05-23 15:05:16 +00:00
Paolo Cignoni 2916ad7207 Refactored CountEdges into CountEdgeNum (now it also reports non manifold edges) 2014-05-23 15:03:15 +00:00
Paolo Cignoni b17fa09b37 Significant refactoring of the 4pcs class (uniform naming, clearer init etc) 2014-05-23 12:38:20 +00:00
Paolo Cignoni 34fb35c6c7 Again refactored and commented the ExtractPolygon 2014-05-21 13:35:54 +00:00
Paolo Cignoni 7c93452e94 Just refactored a bit the simple volume class used for example in the marching cube 2014-05-21 11:49:29 +00:00
Nico Pietroni 773e2bdb1e corrected minor warnings 2014-05-21 02:01:06 +00:00
Paolo Cignoni 8ba0e6d6aa Added method PerBitPolygonFaceNormalized for computing normals for polygonal meshes kept with fauxbit.
Added a few Require just for safety
2014-05-20 22:30:59 +00:00
Paolo Cignoni 44741d7f36 Added a few requirement of polygonal and triangular meshes to clarify usage 2014-05-20 22:29:25 +00:00
Paolo Cignoni d2131fd436 Corrected small bug in the ExtractPolygon function that collect all the tri of a polygonal face 2014-05-20 20:48:04 +00:00
giorgiomarcias 1803989930 Added two methods for computing normals of polygonal meshes. 2014-05-20 15:55:58 +00:00
Paolo Cignoni 2b3bb02be0 harmless gcc warning 2014-05-16 08:43:00 +00:00
Paolo Cignoni 48f9487eaa First draft version of the volumetric version of voronoi sampling 2014-05-15 16:49:38 +00:00
Paolo Cignoni 3b7753ef20 Many Changes to point sampling:
- Heavy refactoring (typename changes, declaration etc) for clarity and shortness
- add a reset() method to the sampler interface
- changed the way used to get a weight in the sampling process now the variance is used to map the 'metric' along 1 and <variance>; Made it uniform in poisson and montecarlo sampling.
- changed the way in which the weight is used/passed: now with attribute!
- added exact number poisson disk pruning.
- stats are always computed (no performance impact clearer code)
2014-05-15 10:35:08 +00:00
Paolo Cignoni 53dbae6626 Added the automatic fixing of the constrained vertices after the constrained relaxation. 2014-05-13 15:34:26 +00:00