Commit Graph

3424 Commits

Author SHA1 Message Date
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
Paolo Cignoni 01ab3c4e68 Templated the Lerp color operator to allow use with double... 2014-06-24 08:46:49 +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 938eefd398 2014-06-23 09:47:29 +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
Gianpaolo Palma f97ccfbf56 Added destructor to HeapMaxPriorityQueue 2014-06-20 13:55:19 +00:00
Paolo Cignoni f5778fd180 Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType 2014-06-20 07:04:42 +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 4198a3bd7c Cleaned up various type name clashes. There were some components that wrongly re-defined <ScalarType> covering the real <ScalarType> of the simplex. Renamed to something less ambiguous (like CurScalarType for denoting the scalar type used inside curvature types). 2014-06-19 08:31:51 +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 e768943f3e Small changes in the long long way to making meshlab and the vcglib really float/double independent 2014-06-18 17:29:34 +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 e6e7999c6c Added an implementation of the Dave Rusin’s Disco Ball algorithm for the generation of regular points on a sphere. 2014-06-17 14:51:20 +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 d3a7e225ee added a AddEdge ( point - point) member to the Allocator Class 2014-06-17 13:05:46 +00:00
giorgiomarcias c1f34b6517 Initialize data members in default constructors (e.g. Pos<FaceType> pos; pos.IsNull() now can't be false). 2014-06-15 21:29:45 +00:00
Luigi Malomo 6ac9919471 added static member Zero() to point3 2014-05-28 22:44:08 +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 1baf0f3727 Added RequirePolygonalMesh invariant to the list of the exception throwing utility 2014-05-20 22:28:30 +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 b572187a63 added yet another wrapper for the Allocator Add face. it is quite useful to add faces just with indexes... 2014-05-15 16:31:39 +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
Paolo Cignoni 5b4357f9bb Refactored the ComputeFaceEdgeLengthDistribution function. Now it collects info about the edges also complying fauxedges and polygonal meshes. 2014-05-13 10:55:53 +00:00
Paolo Cignoni db0a706384 Added methods to Histogram and Distribution to get back the number of inserted samples and their total sum 2014-05-13 10:54:42 +00:00
Paolo Cignoni 5c7949d261 Corrected a bug in the faux edge creation for box/cube 2014-05-13 10:51:11 +00:00