Commit Graph

1749 Commits

Author SHA1 Message Date
Paolo Cignoni e99ae117de Harmless warning (unsigned vs signed int) 2014-02-25 17:40:36 +00:00
Paolo Cignoni ce9c2c1661 Updated the use of eigen sparse matrix to the current official version (was using the old experimental branch) 2014-02-25 17:39:51 +00:00
Luigi Malomo a472e201a3 added algorithm to compute harmonic fields. 2014-02-21 14:37:20 +00:00
Paolo Cignoni 7cfd407a2f Refactored Smooth::FaceNormalLaplacianVF 2014-02-19 15:27:01 +00:00
Paolo Cignoni 2e18e0650a Added a RequireTriangularMesh 2014-02-19 14:39:30 +00:00
Paolo Cignoni 18c0ac1681 Refactored selection face from vertices algorithms and added requiremnts for triangular mesh for the algorithm selecting vertices starting from face border flag 2014-02-19 14:38:54 +00:00
Paolo Cignoni 85c5274965 Harmless warning (unused parameter) 2014-02-19 13:21:31 +00:00
Paolo Cignoni b2e97b9134 added RequireTriangularMesh guard and corresponding exception 2014-02-19 11:58:01 +00:00
giorgiomarcias 4cc8a7c919 Corrected a wrong behavior in case of a polychord having singularities on one side and a regular (ring) border on the other, which must not be collapsed. 2014-02-19 09:32:35 +00:00
Paolo Cignoni 6f7e2872af Removed useless include 2014-02-18 20:18:13 +00:00
Paolo Cignoni 998312b65e PolygonalMesh Debugging: corrected importFaceAdj bug 2014-02-18 20:17:28 +00:00
Paolo Cignoni 3d676586a7 callback is part of the default inclusion now. 2014-02-18 20:16:26 +00:00
Paolo Cignoni 6292a8a0af Added IsEmpty member to base mesh 2014-02-18 20:16:03 +00:00
Paolo Cignoni 614f49c053 PolygonalMesh Debugging: Added another missing Alloc 2014-02-18 14:12:08 +00:00
Paolo Cignoni d07b9b0c91 PolygonalMesh Debugging: corrected typo in the name of the polychord class 2014-02-18 11:03:42 +00:00
Paolo Cignoni 00d326ed76 Improved comments and harmless refactoring 2014-02-18 11:03:01 +00:00
Paolo Cignoni f896e9bd3e PolygonalMesh Debugging: corrected typo in the name of the polychord class 2014-02-18 11:01:15 +00:00
Paolo Cignoni 0d6c673a9b PolygonalMesh Debugging: Improved Allocator robustness. Better allocation/deallocation of polyigonal elements 2014-02-18 10:56:16 +00:00
Nico Pietroni 30fb536c78 added initial Nrosy interpolation functions 2014-02-16 16:36:22 +00:00
giorgiomarcias 22a3e51d1a Corrected some updating selection functions to manage polygonal faces instead of just triangular ones. 2014-02-15 20:56:36 +00:00
giorgiomarcias 628fc52a42 Removed debugging printings in polycoord collapse. 2014-02-15 17:10:56 +00:00
giorgiomarcias b15e3285c2 Some bug fixes in case of meshes with borders. 2014-02-14 10:36:12 +00:00
Paolo Cignoni f831ec8b77 small change to remove useless annoying warnings. 2014-02-13 17:31:43 +00:00
Paolo Cignoni 7600fc3ffb removed a couple of forgotted debug ply exporting calls 2014-02-13 16:30:41 +00:00
Paolo Cignoni 6efdd91ecc Many small changes to remove useless annoying warnings. 2014-02-13 15:52:17 +00:00
giorgiomarcias 7b1cdcdeb4 Implemented Polycoord Collapse for polygonal meshes (only strips of quads are effectively collapsed). 2014-02-12 12:43:02 +00:00
giorgiomarcias 4260535fa6 Corrected two wrong indexes on the access to the vertexes of a face while compacting the face vector: just a typo mistake. 2014-02-12 12:15:42 +00:00
Paolo Cignoni 7747e6097f Corrected a few allocating and copyng functions to manage polygonal meshes instead of simple triangular ones. 2014-02-12 10:59:37 +00:00
Paolo Cignoni d00d1b90e0 removed useless mesh parameter in FFLinkCondition 2014-02-12 10:58:38 +00:00
Paolo Cignoni 9e28c7b1e1 simple change of the template name from MESH_TYPE to MeshType to standardize 2014-02-10 10:57:12 +00:00
Nico Pietroni 3bd4213984 solved minor compilation issues 2014-02-07 11:06:49 +00:00
Marco Callieri 0ba814697c Poisson sampling was ignoring the DELETED flag, so when a part of a mesh was deleted but still in memory, would sample it. added a couple of if(!(*vi).IsD()) tests in [InitSpatialHashTable], [ComputePoissonSampleRadii] and [PoissonDiskPruning].
Seems to work, but please test it. 
Beware: there could be more places where this is needed; I only checked poisson.
2014-01-21 14:59:45 +00:00
Marco Callieri 17ed6bdac4 in the function used to compute normals for pointclouds, added a check during consensus propagation to avoid flipping normals backface w.r.t. the specified wiewposition.
It does seem redundant, but it may happen, by mere chance, that the starting point used for consensus propagation, forces other points to flip even if the resulting flip places them backface w.r.t. the specified wiewposition
--to be tested--
2014-01-10 13:00:09 +00:00
Paolo Cignoni e4311e9d5a Added comment to voronoi parameter 2013-12-20 11:46:50 +00:00
Paolo Cignoni 2df9b39d16 Further clean up of the voronoi relaxation framework. changed the old VoronoiClustering to ConvertToDelaunayTriangulation (for coherence with the other function) and rewrote its code. 2013-12-20 11:44:18 +00:00
Paolo Cignoni ab5869f6c3 Added the possibility of constraining the movement of some seeds onto a specific domain. Now during relaxation you can for example fix some seeds and constrain some other seeds over linear features defined as subset of vertices. 2013-12-20 02:33:36 +00:00
Paolo Cignoni d1a5d53a89 added VertexBorder sampling algorithm that simply collect all the vertexes on the boundary. 2013-12-20 02:27:09 +00:00
Paolo Cignoni 2acd02f102 Added RequireCompactness to the basic exception throwing requirements that you can write at the beginning of an algorithm 2013-12-20 02:24:22 +00:00
Paolo Cignoni 4897d75026 Added MissingCompactnessException to the basic vcg exceptions 2013-12-20 02:23:24 +00:00
Nico Pietroni 45c93e47f0 corrected 1 warning 2013-12-16 12:07:54 +00:00
Nico Pietroni c1403e2fef - added FaceSaturate function
- corrected vertex from face quality copy
2013-12-16 12:07:26 +00:00
Paolo Cignoni 43b738796d Significantly improved documentation. Refactored a bit some of the Add* for better readability 2013-12-12 20:35:27 +00:00
Paolo Cignoni 6c883d3cf3 Added a few assert to prevent the spread to trash data during voronoi relaxation 2013-12-05 22:35:25 +00:00
Gianpaolo Palma 89039d6658 Inverted face orientation for the Box 2013-12-05 17:43:36 +00:00
Paolo Cignoni 85ac0b3c4b removed a spurious debug exportply 2013-12-04 17:37:41 +00:00
Paolo Cignoni fd09d6fee2 Added standard heading comment to the newly added file. 2013-11-28 23:39:45 +00:00
Paolo Cignoni 6762cdbacb First version of the cylinder clipping procedure.
Now it cut the mesh (the cap part is still lacking...

See the app/trimesh_cylclip example
2013-11-28 23:30:35 +00:00
Paolo Cignoni 993a9a2c5b Tricky Change to the refine interface. Now the edge and midpoint predicate are passed as reference so if you need you can make predicate with state. This is useful when the edge and midpoint predicate share a lot of common information and you want exploit the computation done in the edge predicate (e.g. sometimes when you decide if an edge has to be split you already know where the vertex should be placed). 2013-11-28 23:29:06 +00:00
Paolo Cignoni 74749469e1 Added distance based relaxation option instead of the standard geodesic relaxation 2013-11-27 17:24:04 +00:00
Paolo Cignoni 1c20f47552 added OrientedCylinder to primitive creating functions 2013-11-26 11:49:47 +00:00
Paolo Cignoni bc218b8201 Include header cleaning and reordering. 2013-11-25 12:47:20 +00:00
Paolo Cignoni 51424a7896 committed a small change to the Geodesic::Visit
Now it can start from a set of seeds that are not at zero distance.
2013-11-25 12:46:30 +00:00
Paolo Cignoni cbc36cf147 Include header cleaning and reordering. 2013-11-25 10:40:33 +00:00
Paolo Cignoni ae18013dd2 Updated to a change of interface of VoronoiProcessing<VoroMesh>::VoronoiColoring 2013-11-25 10:39:48 +00:00
Paolo Cignoni 54b288611a Include header cleaning and reordering. 2013-11-25 10:38:17 +00:00
Paolo Cignoni 85ae6fe034 Updated to the change of interface of VFOrderedStarFF 2013-11-25 10:37:42 +00:00
Paolo Cignoni 7c0f42c4d7 Include header cleaning and reordering. 2013-11-25 10:35:39 +00:00
Paolo Cignoni cc72b3e3e1 Include header cleaning and reordering. 2013-11-25 10:32:41 +00:00
Paolo Cignoni 84c80a1972 Include header cleaning and reordering. 2013-11-25 10:01:24 +00:00
Paolo Cignoni 25e6561f60 Changed the access to a segment endpoint according to the recent change P(x) -> Lerp(x) in the segment3 interface 2013-11-07 22:35:32 +00:00
granzuglia d4cbf8b65d - fixed heap bug 2013-10-18 15:32:04 +00:00
granzuglia d59e519e8f - added missing "#include" 2013-10-16 08:36:05 +00:00
Paolo Cignoni a1471cea44 Cleaned up a bit naming and comments and some interfaces of some bitquad functions 2013-10-10 16:02:27 +00:00
Paolo Cignoni b8769bd3e6 updated the voronoi atlas parametrization to the new geodesic api 2013-10-10 10:36:39 +00:00
Paolo Cignoni afec01ce96 corrected order of include files (face/topology.h must go after complex.h) 2013-10-09 09:18:08 +00:00
Paolo Cignoni 4cf6f3d6e8 Added edge collapse of short edges and triangulation of voronoi regions 2013-10-09 08:49:13 +00:00
Paolo Cignoni 2a552f8976 Corrected a wrong call to GetAreaAndFrontier that I forgot to update after the api change... 2013-10-07 08:07:16 +00:00
Paolo Cignoni 97a8cb9238 Removed the missing face bug and the wrong orientation bug. 2013-10-03 21:09:28 +00:00
Paolo Cignoni bf17b1b9f8 Heavylly change. Rewrote the voronoi to mesh converter. Added option for locking vertices 2013-10-03 14:32:53 +00:00
Paolo Cignoni 607e048265 added a few assert in the newly added AddFace shortcut 2013-10-03 14:32:01 +00:00
Paolo Cignoni 41bced16bd Added VertexBorderCorner sampling function (that returns all the vertices over the boundary and that are corners... 2013-10-03 10:00:53 +00:00
Paolo Cignoni 97f8b30adf changed a type of the Build wrapper to override a weird compiler error (form int[3] to point3i) 2013-10-03 09:59:11 +00:00
Paolo Cignoni ad17f61dc0 added a simple wrapper to add a single vertex to a mesh given its coords 2013-10-03 09:57:45 +00:00
Nico Pietroni 97d14f173f added clear V flag at the beginning of ImportFromTriMesh function 2013-10-03 08:21:08 +00:00
Nico Pietroni 7c08094a50 corrected AnisotropicDistance 2013-09-21 00:54:21 +00:00
Nico Pietroni affa165543 added explicit cast to ScalarType , line 286 2013-09-21 00:53:36 +00:00
Nico Pietroni afef24633f added #include <vcg/container/simple_temporary_data.h> 2013-09-21 00:52:24 +00:00
Paolo Cignoni 58471132ba Cleaned up a bit for better handling of point clouds 2013-09-11 11:11:10 +00:00
Paolo Cignoni 80467d1f41 minor changes (component check in the sampler class) 2013-09-11 11:09:29 +00:00
Paolo Cignoni 0263e6df9d Small changes in comments 2013-09-10 14:21:48 +00:00
Paolo Cignoni d974bf2770 Further tuning of poisson disk sampling pruning. Now we check also if the Spatial Hash Index is not over filled, 2013-09-10 13:41:16 +00:00
Paolo Cignoni 46dc55fb3c Refactored code to use the AddFace of the Allocator that add and fill a face with three vertex pointers. 2013-09-10 10:51:15 +00:00
Paolo Cignoni 4fdfb1d62b Parameter Tuning for the PoissonDisk sampling using the getBestPrecomputedMontecarloSample heuristic. Now there is a better default and another param exposed. 2013-09-10 10:50:10 +00:00
Paolo Cignoni b849524274 Added Requirements. Refactored some funcs and uniformed naming of functions... 2013-09-10 10:49:01 +00:00
Paolo Cignoni b49b2ce1e8 Added PerVertexBasicRadialCrossField for the creation of sample cross field 2013-07-26 12:21:40 +00:00
Paolo Cignoni 05d262ba9b Added conversion to polygonal mesh and to edge mesh of the generated voronoi diagram.
Improved behavior for biased distance diagrams
2013-07-26 12:20:40 +00:00
Paolo Cignoni a2b05e1f66 Added isotropic distance and anisotropic distance functor for biasing the geodesic computation. 2013-07-26 12:13:45 +00:00
Paolo Cignoni c5549f607a Cleaned up the edge allocator and added two small wrapper for adding and initializing a single face or edge with the vertex pointers 2013-07-26 09:34:41 +00:00
Paolo Cignoni f85ce4e334 Removed all references to the useless old vcg::math::Swap 2013-07-26 07:35:02 +00:00
Paolo Cignoni f9db54196b Significant Change.
Removed old quality from geodesic function. Use the Geodesic class that has a singleCall wrapper doing the same in a eventually better way. 
Added a number of RequireXXX at the beginning. To be completed...
2013-07-24 12:00:47 +00:00
Nico Pietroni f22b8bef25 uncommented some code to find which vertex fix on poisson solving 2013-07-23 11:22:06 +00:00
Nico Pietroni fe7565ad2a commented the part that set as border the non manifold vertex 2013-07-23 11:20:44 +00:00
Paolo Cignoni c5fcfd94c1 Added a MeshSampler Class to the framework as a simple example of the sampling procedure
Added another wrapper for montecarlo sampling of points 
Improved the basic wrapper of poisson disk sampling to include variable disk radius sampling
2013-07-23 07:32:12 +00:00
Paolo Cignoni 99440c4e62 #ifndef NO_QT -> #ifdef QT_VERSION 2013-07-16 15:44:52 +00:00
Paolo Cignoni 42da29417b cleaned up a bit the interface and formatting of the code of the voronoiclustering alg 2013-07-05 14:46:48 +00:00
Paolo Cignoni 7b8f21ba7a Excluded from the computation of the mass intergrals the faces with an area that is <= std num limits <scalar>::min() 2013-07-03 21:44:39 +00:00
Paolo Cignoni 1655f806df removed M_PI_2 constant. (not more supported by vs2010 on) 2013-07-03 21:12:08 +00:00
Paolo Cignoni 29b3c4e1ec Added VertexCrease, EdgeMontecarlo sampling methdo
Improved PoissondDisk sampling algorithm with the bestSampleChoiceFlag parameter
2013-06-24 10:51:53 +00:00
Paolo Cignoni 98e49178ba Added IsCoherentlyOrientedMesh and cleaned up a bit the self intersection 2013-06-24 10:50:14 +00:00
Paolo Cignoni 9acdf598a1 removed harmless gcc warning 2013-06-24 09:36:46 +00:00
Paolo Cignoni 388435d15a Added a default value to the optional cb parameter in the pointcloud normal generation function 2013-06-24 08:36:08 +00:00
Paolo Cignoni 49d759af2a Added EdgeBarycentricToFaceBarycentric to convert an edge position into a face barycentric position 2013-06-24 07:31:11 +00:00
Paolo Cignoni 5049407069 Added FaceFauxSignedCrease that Marks feature edges according to two signed dihedral angles. 2013-06-24 06:56:15 +00:00
Paolo Cignoni efe6379b4b Added updating of the bbox for generic mesh build
Added build for point clouds
Added Clear at the beginning of the Build(m)
2013-06-24 06:49:51 +00:00
Nico Pietroni 5f59f1fa5a corrected some non templated type on SplitNonManifoldVertex function 2013-05-08 09:05:58 +00:00
Nico Pietroni a52a4d0ad3 added ClearCreases function..
corrected setting B for non manifold in VertexBorderFromNone
2013-04-24 14:22:43 +00:00
Nico Pietroni 04bca27a7e erased first assert of RemoveDuplicateEdge function 2013-04-20 15:13:49 +00:00
Paolo Cignoni cbba83d17c added Annulus and OrientedAnnulus to mesh creation helpers 2013-04-15 20:14:27 +00:00
Paolo Cignoni 371ff46282 added a missing RequireVFAdjacency and corrected a bug into the RequireXX for a couple of other adjacency... 2013-04-12 09:16:49 +00:00
Paolo Cignoni eeddfe6a90 Updated to include better control of the voronoi parametrization. Changed packer (warning it requires qt...) 2013-04-03 10:07:29 +00:00
Paolo Cignoni 135f5f9ecb added Outline2VecBBox method 2013-04-03 10:02:19 +00:00
Nico Pietroni 01c0681291 added #include <vcg/complex/exception.h> 2013-03-30 15:31:57 +00:00
Nico Pietroni 8454fb5fc9 removed some commented part and changed FixDefaultVertices 2013-03-30 15:30:18 +00:00
Paolo Cignoni 9bd9f9fdc7 Further cleaning up and factorization of the stuff for the raster outline packer 2013-03-26 11:25:47 +00:00
Paolo Cignoni 4fa516b8d7 Added first version of the outlinesupport.h to manage various interaction between meshes, borders and outlines 2013-03-25 13:09:15 +00:00
Paolo Cignoni 668bf05a1d Refactored a bit CountConnectedComponents (added requiremens) 2013-03-25 10:33:22 +00:00
granzuglia 5bcce6a3d5 //static_cast<VertexPointer>(NULL) has been introduced just to avoid an error in the MSVS2010's compiler confusing pointer with int. You could use nullptr to avoid it, but it's not supported by all compilers.
//The error should have been removed from MSVS2012				
std::pair<float,VertexPointer> zz(0.0f,static_cast<VertexPointer>(NULL));
2013-03-24 16:33:50 +00:00
Paolo Cignoni 1fef63b1da improved a bit the basic step of the voronoi clustering 2013-03-22 17:07:55 +00:00
Paolo Cignoni e94cfb5a43 Refactored a bit the extended marching cube core. Cleaned up a bit the trivial walker to be used by both of them. Updated the sample for marching cube. 2013-03-22 17:06:41 +00:00
Paolo Cignoni 3a9a72c098 removed a useless template specialization to a few std::make_pair 2013-03-22 16:53:42 +00:00
Paolo Cignoni 12543d68a2 Removed also from this file the deprecated dependencies from linalg. NOW EVERY PIECE OF THE VCG relies on eigen for linalgebra. 2013-03-20 08:32:53 +00:00
Paolo Cignoni 72d67f4a11 Added parenthesis to clearly disambiguate if/then/else 2013-03-20 08:28:30 +00:00
Paolo Cignoni 5aaa6f4720 harmless small refactoring 2013-03-13 14:59:34 +00:00
Paolo Cignoni f62e07ee66 Corrected the behavoiour of the allocate::Compact when managing uninitialized and null element in adjacency 2013-03-13 14:33:09 +00:00
Paolo Cignoni 6950be4594 Improved comment/documentation. Changed throws in require 2013-03-13 14:00:29 +00:00
Paolo Cignoni 8446dbc168 corrected a wrong interface to poisson pruning (left after recent changes) 2013-03-13 00:16:51 +00:00
Paolo Cignoni 8f45cb352e Added a simpler CompactEveryVector to allocate to compact face edge and vertices... 2013-03-13 00:15:13 +00:00
ganovelli 4253c2f3b6 corrected bug on appending perFace and perEdge attributes
(thanks to Minghua Nie for pointing it out).
2013-03-11 11:53:26 +00:00
Paolo Cignoni d61c5c24a1 Slight change of the PoissonDiskPruning interface. Removed a useless parameter (the original surface mesh) 2013-03-01 08:34:33 +00:00
Paolo Cignoni 0f34456c92 further cleaning up and commenting 2013-02-28 15:51:38 +00:00
Paolo Cignoni 391e376be7 Cleaned up a bit. Only a bit. 2013-02-28 07:02:20 +00:00
Paolo Cignoni 26392a560b Corrected a small bug in the Poisson disk sampling: as an unwanted side effect invoking the sampling will change the size of the bbox of the mesh. Mostly harmless but weird. 2013-02-23 05:50:27 +00:00
Nico Pietroni 4799f4c4bc minor changes 2013-02-19 13:54:14 +00:00
Nico Pietroni 1f91e92f9a changed the strategy to find point to fix in an automatic way, and some minor changes in comments 2013-02-19 13:53:33 +00:00
Paolo Cignoni 0839617d99 Corrected a small bug in the simpler wrapper for the generation of a poisson disk distribution over a mesh 2013-01-31 10:50:19 +00:00
ganovelli 8c998ccd11 vcg::tri::Allocate<MESH>::Get*Attribute(m,name);
has CHANGED!

Before it was returning a valid handle to the attribute
IF it existed, otherwise the handle was invalid.
 
Now it always returns a valid handle to the attribute,
by creating the attribute name if it did not exist or returning
the handle to it if it was already there.

ALl the code using Get*Attribute  has been changed accordingly.
2013-01-30 17:18:55 +00:00
ganovelli 512da45bf7 updated to new GetPer*Attribute 2013-01-30 17:14:47 +00:00
Paolo Cignoni 2b9a9f2be2 removed a useless loop in the update cycle of the heap of the edges to be collapesed. Stupid bug pointed out by Enrico (thanks!) 2013-01-28 15:42:24 +00:00
Paolo Cignoni 69ca459335 Restructured Extrude.h in order to allow the easy separation of the side and top/bottom components 2013-01-23 08:35:23 +00:00
Nico Pietroni e633317b58 added include matrix44.h 2013-01-22 10:51:56 +00:00
Nico Pietroni 37e8a2118b changed tri::RequirePerEdgeFlags to RequirePerEdgeFlags 2013-01-22 10:50:40 +00:00
Nico Pietroni cb13855328 corrected 1 compilation error SetVertCrossVectorFromFace 2013-01-22 09:58:20 +00:00
Paolo Cignoni c3dc8316bb added a missing RequireEEAdjacency 2013-01-02 09:56:21 +00:00
Paolo Cignoni fba830b353 removed harmless gcc warning 2013-01-02 09:24:22 +00:00
Paolo Cignoni 1991e2e74f Changed a bunch of assert(hasXXX) into requireXXXX 2013-01-02 09:22:47 +00:00
Nico Pietroni e1481b34ac corrected bug on FollowDirection 2012-12-31 16:20:23 +00:00
Nico Pietroni a3a542edf2 added stop on target vertex for VertexDijkstra propagation 2012-12-31 16:19:36 +00:00
Nico Pietroni ec693dd06a added Target Faces to possibly stop the PerFaceDijsktraCompute
added selected vertex to avoid passing trought in PerVertexDijsktraCompute
2012-12-26 18:47:55 +00:00
Paolo Cignoni 0e61819cb7 Added PerFaceDijsktraCompute and PerVertexDijsktraCompute that compute straighforwar robust face-face and vertex-vertex geodesic shortest path tree 2012-12-21 15:36:52 +00:00
Paolo Cignoni dcda89eac1 added a correct import data for managing the data of the newly refined faces. 2012-12-17 15:31:28 +00:00
Nico Pietroni 98a28f8b46 added function static int FollowDirection 2012-12-12 16:03:08 +00:00
Luigi Malomo 8165152573 added UpdateFlags::EdgeSet function 2012-12-11 12:15:16 +00:00
Nico Pietroni f1233c24f3 changed IntersectionPlaneMesh to deal with different ScalarType rather then just floats 2012-12-10 17:15:55 +00:00
Paolo Cignoni fd54ab7183 Disambiguated the names of VertexFromGaussianCurvature for case when you have the full curvatures or just the HK values 2012-12-10 09:41:53 +00:00
Paolo Cignoni e9a0913eee Added edge selection management in edge selection stack 2012-12-10 09:39:44 +00:00
Paolo Cignoni c0d0599781 reformatted for allowing a breakpoint in the exception 2012-12-10 09:10:19 +00:00
Nico Pietroni bf3837e4d2 added function FollowLineDirection 2012-12-09 16:08:35 +00:00
Paolo Cignoni d29c7489ec mismatch syntax error in a require VF vs FF 2012-12-06 16:36:38 +00:00
Paolo Cignoni 7f789119a8 Forgot one due change face::HasFaceColor() -> face::HasColor()
(uniform to vertex)
2012-12-06 11:06:01 +00:00
Paolo Cignoni 63e5ef9763 changed to the new RequireXXXX syntax for type reflections 2012-12-06 11:00:37 +00:00
Paolo Cignoni c5d8479003 Refactored the complex.h file into a include manager and a base.h file
Due to a inclusion conflict order between pieces of old complex h and append/allocate
2012-12-06 10:59:18 +00:00
Paolo Cignoni 3b466514b3 Added Standard exception throwing functions to claim requirements in the mesh algorithmic functions (Te Deum!)
for example, now at the beginning of a function requiring FFAdjacency you should just write:

RequireFFAdjacency(mesh); 

No more assert please.
2012-12-06 10:34:08 +00:00
Marco Di Benedetto b9406fad93 call to qDebug() commented out (it assumed the qt framework). 2012-12-05 17:43:27 +00:00
Paolo Cignoni 7a205ecad6 removed harmless warnings 2012-12-02 15:07:17 +00:00
Paolo Cignoni e04a37bf60 removed harmless warnings 2012-12-02 14:57:08 +00:00
Paolo Cignoni d946a6c390 Changed the intersection plane quality to use an attribute. Renamed to cover the old unstable function and renamed the old one with an OLD suffix 2012-12-02 14:51:34 +00:00
Paolo Cignoni 75ca1eabfc Uniformed the rarely used per mesh color to the const/reference notation standard of the components 2012-11-28 11:13:46 +00:00
Paolo Cignoni bf3ee42337 corrected use of point matching 2012-11-27 23:31:09 +00:00
Paolo Cignoni a7fb3e540b Added another topological check to the ear capping procedure of hole filling 2012-11-27 12:22:18 +00:00
Paolo Cignoni 387b0fb857 refactored a small piece of code (the update of even vertex in refine during a debug session) 2012-11-27 12:19:09 +00:00
Paolo Cignoni fca284d27c corrected box assignment between different types in append::MeshCopy 2012-11-27 11:52:17 +00:00
Paolo Cignoni 049fae96c0 Improved comments with notes on what version of the intersection plane mesh should be used 2012-11-26 09:18:04 +00:00
Paolo Cignoni 26fc41faf5 Added a small wrapper for montecarlo sampling of a mesh surface 2012-11-22 23:28:40 +00:00
Nico Pietroni a95eb5af08 added function EdgeSetV 2012-11-18 18:05:39 +00:00
Paolo Cignoni 8f079de515 Added a bunch of 'c' to component members to clarify constant access 2012-11-15 19:14:29 +00:00
Paolo Cignoni 8b4d04be7a Added a bunch of 'c' to component members to clarify constant access 2012-11-15 19:11:28 +00:00
Paolo Cignoni 51fe0fb938 Added a bunch of 'c' to component members to clarify constant access 2012-11-15 19:07:34 +00:00
Paolo Cignoni 41e7a19fd1 Substituted grid with kdtree in the ballpivoting... 2012-11-14 12:48:35 +00:00
Paolo Cignoni eaf97c0bf3 Great speed improvement of ball pivoting (40x on a 100k vert mesh) 2012-11-14 08:28:42 +00:00
Paolo Cignoni e268e69ad3 Commenting and cleaning up the ball pivoting/ advancing front framework 2012-11-14 06:17:15 +00:00
Luigi Malomo 5aa4e3a489 warnings removed fo CrossField::IsSingularByCross() function 2012-11-12 12:40:56 +00:00
Luigi Malomo 8dc138cf27 fixed CrossField::IsSingularByCross() function 2012-11-12 12:38:20 +00:00
Paolo Cignoni ed6042e502 Committed temporary version of the cleaned up curvature computation files 2012-11-12 11:15:21 +00:00
Paolo Cignoni 9cea19e537 Cleaned up the UpdateFlags class. Assert into throw... 2012-11-10 16:33:38 +00:00
Paolo Cignoni 586d800c66 added missing edge reflection functions (HasEdgeXXXX etc) 2012-11-10 14:57:53 +00:00
Paolo Cignoni 9900cfd4cc Added comments and requirements (exception throwing) 2012-11-10 14:41:35 +00:00
Paolo Cignoni 2a21d5fb8e simple comments and re-indentation for better reading 2012-11-10 14:36:54 +00:00
Paolo Cignoni a1e4341c98 assert->trhow and first version of the allocateEdge 2012-11-10 06:45:58 +00:00
Paolo Cignoni 6b48acfa9f Added all the missing component exceptions for colors 2012-11-09 10:52:35 +00:00
Paolo Cignoni d4cf2019bf Disambiguated a ComputeNormal() 2012-11-08 18:44:35 +00:00
Paolo Cignoni e1fb5617ff assert -> throw exception 2012-11-08 18:37:10 +00:00
Paolo Cignoni c367bf93fa Improved the VertexNormalPointCloud smoothing algorithm (it can re use a kdtree) 2012-11-08 18:33:55 +00:00
Paolo Cignoni 1d092cf736 Added a couple of missing Flags->cFlags 2012-11-08 18:31:13 +00:00
Paolo Cignoni 51a65af2c0 Added new version of algorithm for computing normals for point clouds. Approx 8 times faster and works for clouds of a few millions of points... 2012-11-08 15:33:32 +00:00
Paolo Cignoni a97119dde3 Name Cleanup VertexVectorHasPerFaceVFAdjacency -> VertexVectorHasVFAdjacency 2012-11-07 22:51:16 +00:00
Paolo Cignoni e88379c8c6 Added VertexNormalPointCloud to smooth the normals of a point cloud by using the kdtree instead of the octree... 2012-11-07 22:49:46 +00:00
Paolo Cignoni 5e6d0fe221 corrected use of constant flags method 2012-11-07 15:43:38 +00:00
Paolo Cignoni bb4f118a03 Small bug in the time computation of Poisson sampling 2012-11-07 01:14:27 +00:00
Paolo Cignoni 4e6a97770b Significant changes to the Geodesic computation class
- Cleaned: removed useless wrapper
- Documented
- Removed the automatic computation of the farthest vertex NOBODY never ever used it in all our basecode (but every one declared a useless var for that...)
- Changed the name of the class to something meaningful (Geodesic::Compute instead of Geo::FarthestVertex)
2012-11-07 01:07:08 +00:00
Paolo Cignoni b6d198362c Small changes to the compactVector (added a check on empty vectors) and improved the sample on allocation. 2012-10-31 06:58:08 +00:00