Commit Graph

3576 Commits

Author SHA1 Message Date
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 d8a7e0069f added parameters in GetPolyTemplatePos to force isotropy 2015-07-03 09:54:40 +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 2b8a829099 added NextCrease function to follows creases 2015-05-24 14:51:22 +00:00
Nico Pietroni 7aef00fb33 minor change in VFOrderedStarFF , the Pos is passed as const parameter 2015-05-24 14:50:47 +00:00
Nico Pietroni d58ac7ca03 templated parameter on VertexConstant function 2015-05-12 09:05:52 +00:00
Gianpaolo Palma 2eac2ef672 Bug fixed with offset from a base data address bigger than 2GB 2015-05-11 14:41:43 +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
Luigi Malomo c2b6ba2390 fixed VertexRef component types for edge. 2015-03-25 15:25:07 +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 68eb3bce7b Fixed TriMesh Clear function. The function resets the mesh as if it was just created. 2015-03-17 09:56:59 +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
ganovelli 8ac85892e3 replaced segmentsegmentintersection implementation 2015-01-19 15:57:44 +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 5085477562 Made constant some parameters, where possible. 2015-01-05 14:58:30 +00:00
Nico Pietroni 94d9a3dbdd * fixed several bugs
* added several functions to compute the quality of a polygonal meshing
* added the template polygon computation as in "Static Aware Grid Shells" by Pietroni et Al.
2015-01-05 12:57:16 +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 ee3177b1d9 included missing header. 2014-12-17 19:11:45 +00:00
Nico Pietroni 48b7365ba4 corrected one error in Interpolationparameters 2014-12-17 17:17:47 +00:00
giorgiomarcias 882d54d6ae Fixed some memory leaks when using polygonal component for faces. Deallocations more stable and clear for each component, using also local dynamic memory deallocs. Changed Clear() method of TriMesh which guarantees perfect deallocations of faces' components. Fixed also CompactFaceVector which now deallocates faces before resizing the vector. In DeleteFace, not only the flag is set, but also the face's components are deallocated. 2014-12-15 15:36:37 +00:00
Luigi Malomo c722cedeaa Fixed bug in VertexBorderFromFaceBorder function. 2014-12-10 00:55:37 +00:00
Luigi Malomo efaabde8d0 Types fixed to avoid clang compiler issues. 2014-12-10 00:54:10 +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
Nico Pietroni 472373efbe minor changes for compilation with Clang 2014-12-08 15:11:01 +00:00
Paolo Cignoni a5ea80d9df Corrected EFi function as vcg/bugs/43/ 2014-12-06 23:36:42 +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
giorgiomarcias 7e212f1d60 Function VInd() declared const so that it can be used also with a constant face::Pos. 2014-11-15 17:50:19 +00:00
Paolo Cignoni 8959e68790 Small change still related to the normal -> trianglenormal renaming 2014-11-14 23:01:21 +00:00
Paolo Cignoni 40aedda6b0 Added also a NormalizedTriangleNormal. Too much practical... 2014-11-14 23:00:36 +00:00
Paolo Cignoni 828dc5f404 Added a resize() method to the basic attribute handle class to allow the definition of templated functions that can indifferently take an attribute or a vector as a parameter (like the ones in MeshToMatrix) 2014-11-14 22:03:58 +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 62af567808 Updated to reflect the Normal() -> TriangleNormal() change 2014-11-12 00:19:46 +00:00
Paolo Cignoni 6458dd30ad Added some practical typedefs for simpler use of attributes 2014-11-12 00:19:18 +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
Paolo Cignoni b1b3068ba9 Removed the ComputeNormal functions from the face. Almost never used and superfluous 2014-11-12 00:05:45 +00:00
Paolo Cignoni 16f4795588 CRITICAL CHANGE: the commonly used function Normal() used to compute the normal of a triangle has been changed into TriangleNormal() 2014-11-12 00:04:26 +00:00
Paolo Cignoni 3bc278c224 renamed polygon.h to polygon3.h for coherence... 2014-11-12 00:03:01 +00:00
Paolo Cignoni 144c3ce295 Added file for containing polygon based functions (just like triangle) 2014-11-12 00:01:32 +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
granzuglia af5f31d4f7 - added default constructor to VFAdjType
- removed compile time error on Av.reserve function call
2014-11-06 23:21:04 +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 0a42a15d35 improved documentation, remove extra ';' and useless const 2014-11-03 15:05:34 +00:00
Paolo Cignoni c7b6bd26bf Significantly improved documentation of the components.
Added IsNull to the VF vertex component and coherent initialization of the vf adjacency.
2014-11-03 15:01:27 +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
Luigi Malomo 79f4c6ac94 Added VN() function to triangle3. 2014-11-01 16:58:53 +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
giorgiomarcias bc1975ad43 Added "const" keyword to IsEmpty(). 2014-10-16 09:42:48 +00:00
Massimiliano Corsini 708463311e fix GetBBOx changes 2014-10-13 08:36:01 +00:00
Massimiliano Corsini 0fd22c536b fix include path 2014-10-13 08:35:29 +00:00
ganovelli 918cec664a fixed includes to new files position (also in app2/sample/hashing_2D) 2014-10-09 14:10:27 +00:00
ganovelli 578f4ae72e changed names to avoid troubles with OS oblivious to letter case 2014-10-09 14:04:09 +00:00
ganovelli d5d50503c7 changed the filnenames to avoid possible trouble with OS oblivious to letter case 2014-10-09 14:02:56 +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
ganovelli 5249736918 completed renaming to lowercase of space/index/index2d and hashing_test2d 2014-10-09 12:32:03 +00:00
ganovelli 1b833f40a9 renaming to lower case (continued) 2014-10-09 12:25:30 +00:00
ganovelli 0c7c9db51a renaming to lowercase 2014-10-09 12:23:46 +00:00
ganovelli d78ad96d9a files renaming to lowercase 2014-10-09 12:22:31 +00:00
Luigi Malomo 81bdd19245 temp fix of include directive. file naming should be fixed for coherency. 2014-09-29 16:52:05 +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