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
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
c3beef6091
added NextNotFaux function
2014-09-11 20:43:41 +00:00
Nico Pietroni
0a91defac8
templated the function VertexClamp wrt input scalar type
2014-09-11 20:42:30 +00:00
Luigi Malomo
e5ca4bf8c7
added option to copy adjacency for mesh copy function
2014-09-10 00:50:10 +00:00
Paolo Cignoni
053b649ed2
Added perturbation to the voronoi seed relaxing
2014-09-07 21:36:30 +00:00
Luigi Malomo
a78ac53814
added edge mesh support to OBJ importer
...
corrected a type to avoid clang compiler issues
2014-09-06 11:06:23 +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
d80980155f
- per face principal directions get functions return now T::CoordType (changes have been validated by Fabio Ganovelli)
2014-08-21 16:23:49 +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
Paolo Cignoni
181cef32fa
Refactored a bit to allow the conversion of shot and cameras from float to double (added the notoriuous vcg style Construct)
2014-08-10 00:30:20 +00:00
Luigi Malomo
bb49f1c657
fixed types in OrientedDisk function
2014-08-09 17:10:19 +00:00
granzuglia
f2efb48a3c
rect_packer.h:
...
- removed Visual Studio warnings
2014-08-09 10:10:03 +00:00
granzuglia
26541cfeae
simplex/vertex/component_ocf.h:
...
- removed Visual Studio warnings
2014-08-09 10:08:15 +00:00
granzuglia
654a41aaf8
simplex/face/component_ocf.h:
...
- removed Visual Studio warnings
2014-08-09 10:07:30 +00:00
granzuglia
cb015f4a5c
matrix44.h:
...
- removed Visual Studio warnings
2014-08-09 10:06:34 +00:00
granzuglia
b806f2c7d9
simple_temporary_data.h:
...
- removed Visual Studio warnings
2014-08-09 10:05:20 +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
3784295ac6
comment cleaning up
2014-08-09 00:16:50 +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
3b38917e95
corrected the ImportData of the curvature type.
2014-08-09 00:11:32 +00:00
Paolo Cignoni
352d386a53
Just a few other size_t vs int clarifications
2014-08-09 00:02:52 +00:00
Paolo Cignoni
35d099384f
added a MaxCoeffId utility function that was missing...
2014-08-09 00:01:41 +00:00
Paolo Cignoni
d89f934e3e
Removed unused local variable. (harmless gcc warning)
2014-08-08 22:06:12 +00:00
Nico Pietroni
ad69d7d893
chenged GridDoRay to GridDoRay2D.. corrected one bug in the initial #define
2014-08-08 21:32:50 +00:00
Nico Pietroni
b06ff095a1
corrected some minor warning
2014-08-01 00:25:26 +00:00
Nico Pietroni
48bca62885
corrected some minor warning
2014-08-01 00:24:55 +00:00
Nico Pietroni
2134c8f064
corrected some minor warning
2014-08-01 00:24:21 +00:00
Nico Pietroni
3dfce75a37
2014-08-01 00:18:43 +00:00
Nico Pietroni
3c6625d060
added DoRay and Closest Point queries
2014-08-01 00:17:06 +00:00
Nico Pietroni
8909e9205a
removed one commented line
2014-08-01 00:16:23 +00:00
Nico Pietroni
2c2b5b1319
added constructor with center and radius
2014-08-01 00:15:51 +00:00
Nico Pietroni
433d070691
added RayBoxIntersection function and RaySegmentIntersectionFunctor
2014-08-01 00:15:14 +00:00
Nico Pietroni
565308c80d
corrected one bug in closest point
2014-08-01 00:14:25 +00:00
Nico Pietroni
cd83a42ea6
added PointSegment2DEPFunctor
2014-08-01 00:13:25 +00:00
Nico Pietroni
6902670e48
indented and remove include of triangle3
2014-08-01 00:12:49 +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
4547c0ee01
Fixed "rad" bug in RotationMatrix
2014-07-17 17:45:47 +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
76b91b9957
added import in the importdata members to support of different types of curvature (float/double)
2014-07-12 21:09:27 +00:00
Paolo Cignoni
88a648822a
a forgotten int to size_t conversion in append/remap
2014-07-12 21:08:15 +00:00
Paolo Cignoni
d879f84302
Converted the remap structure of the append class to keep indexes as size_t element instead of int
2014-07-12 11:43:01 +00:00
Paolo Cignoni
4cb1fbaaf8
Raised the upper limit of the template derivation chain for face
2014-07-12 10:52:59 +00:00
Paolo Cignoni
ac49d75519
Corrected a typename override again on CurVecType vs VecType
2014-07-12 05:51:54 +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
Paolo Cignoni
c2f98a8595
Added missing standard vcg header comment
2014-07-12 05:49:07 +00:00
Paolo Cignoni
d520fe2f0e
Corrected small clang typename issues
2014-07-11 13:00:44 +00:00
Gianpaolo Palma
31fb567321
Thread-safe refactoring of the class KdTree.
...
Removed methods:
void setMaxNofNeighbors(unsigned int k);
inline int getNofFoundNeighbors(void);
inline const VectorType& getNeighbor(int i);
inline unsigned int getNeighborId(int i);
inline float getNeighborSquaredDistance(int i);
Added methods:
void doQueryDist(const VectorType& queryPoint, float dist, std::vector<unsigned int>& points, std::vector<Scalar>& sqrareDists);
void doQueryClosest(const VectorType& queryPoint, unsigned int& index, Scalar& dist);
Changed methods:
void doQueryK(const VectorType& queryPoint, int k, PriorityQueue& mNeighborQueue);
2014-07-11 11:52:52 +00:00
Gianpaolo Palma
0491ceedeb
Added method "sort(bool)" to sort the element of the queue in ascending or descending order
2014-07-11 11:35:15 +00:00
Paolo Cignoni
65336cfe7b
Trying to solve int / size_t issues. Added a error guard to avoid inclusion of append.
2014-07-07 10:09:25 +00:00
granzuglia
30a9c6c2fb
- a lot of int variables converted into size_t ones
...
- vectors contained inside Remap class converted from std::vector<int> into std::vector<size_t>
2014-07-07 07:09:07 +00:00
granzuglia
991aa707d9
- added int cast in order to avoid annoying warnings
2014-07-07 06:58:08 +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
Paolo Cignoni
afc802107a
Made uniform the use of size_t instead of int in the vast majority of the allocate.h functions
2014-07-03 20:57:26 +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
5e910a0058
Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType
2014-07-01 10:08:30 +00:00
Paolo Cignoni
cf856d0a6b
Reasonable but harmless clang warning cleanup
2014-07-01 10:08:00 +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
f576d96d39
Templated the IPiToPf and IPfToPf function to allow volumes with scalar type different from the one of the meshes
2014-06-24 08:47:34 +00:00