Commit Graph

522 Commits

Author SHA1 Message Date
Paolo Cignoni 2fe129645b Rolled back 2011-10-05 15:04:40 +00:00
Paolo Cignoni 57c5e617dc Another change due to the recent SimpleTempDataBase changes... 2011-06-03 09:02:48 +00:00
Paolo Cignoni 60618323bd changed the use of SimpleTempData in VMI 2011-06-03 08:38:13 +00:00
Nico Pietroni b483d00bd8 corrected a bug on writing per Wedge textcoords.. 2011-04-20 16:49:58 +00:00
granzuglia f3969b8774 remove crash when all vertices and faces have been marked as deleted but the are still in the vert/face vectors 2011-04-15 08:46:43 +00:00
granzuglia f49691377c added missing include file and namespace prefix 2011-04-13 12:29:21 +00:00
Federico Ponchio a4af30479c added missing includes. 2011-04-11 16:48:13 +00:00
Paolo Cignoni 477dd698bd Ongoing corrections of include paths to comply the new folder arrangement 2011-04-03 22:50:10 +00:00
Paolo Cignoni 4b0fb8bb2e Ongoing corrections of include paths to comply the new folder arrangement 2011-04-03 20:55:22 +00:00
matteodelle 0d98d0216e Added import/export of color per vertex (only for triangular meshes for now) 2011-03-23 21:00:40 +00:00
Federico Ponchio bee287603e added minimal doc on Open. 2011-03-21 17:20:38 +00:00
granzuglia d95b28dff4 removed no faces crash 2011-03-15 16:40:08 +00:00
granzuglia 81bca52d1b added 64-bit compatibility (unsigned int -> void*) 2011-03-14 11:18:16 +00:00
Paolo Cignoni 3eb92cbe8a harmless gcc warnings 2011-02-17 11:38:01 +00:00
Paolo Cignoni 7037098822 Added to BitQuad Support a Generic quad triangulation function and used in OFF importer.
It takes in input 4 vertex pointrs and rotate them so that a simple fan triangulation is Ok.
  It uses geometric criteria for avoiding bad shaped triangles, and folds
  and it use an internal set of already created diagonal to avoid the creation of non manifold situations.
2011-01-27 15:49:21 +00:00
granzuglia b75a2c77a0 removed crashes when a not well-formed mtl file has been opened. 2011-01-25 09:10:34 +00:00
Paolo Cignoni 423fce1321 automatically detect the color format (integer between 0 and 255 or
floats between 0 and 1)
2011-01-17 10:06:15 +00:00
Paolo Cignoni dfba841714 add support for vertex per color with OBJ files (read/write) 2011-01-13 18:04:32 +00:00
granzuglia 811396f854 removed old m.hasPerSomething() with tri::hasPerSomething(m) 2010-12-21 19:23:55 +00:00
Paolo Cignoni 377333e805 cleaned up useless parameters in off loading 2010-12-21 15:04:14 +00:00
Paolo Cignoni aeea62cfd0 New version of PTX importer. Added support of direct point cloud loading 2010-11-08 15:06:21 +00:00
Paolo Cignoni c6d3aee778 improved support of per face colored off 2010-10-21 17:45:14 +00:00
Paolo Cignoni f646abea7b added support of ply files saved by the plywrite package of matlab, that strangely enough use char (!) as a type for vertex indexes... 2010-10-20 12:25:13 +00:00
Marco Di Benedetto 421ae17fb4 changed some asserts in explicit error checks. 2010-10-13 12:53:30 +00:00
Paolo Cignoni bc23a049bd removed harmless gcc warnings (unsigned vs signed int) 2010-06-23 14:26:52 +00:00
ganovelli 212c15b77b update calls to Append<..>::Mesh(..) 2010-06-18 08:35:36 +00:00
ganovelli 9834a6dc5c 3 --> (*fi).VN() 2010-06-18 08:30:50 +00:00
Paolo Cignoni 168953b768 added missing initialization of tex coord. 2010-06-16 12:04:55 +00:00
Paolo Cignoni 2e22f9b51d added initialization of mask in LoadFaceOcfMask 2010-06-01 08:11:20 +00:00
Marco Di Benedetto 0fc8a49a51 2010-05-22 19:47:43 +00:00
granzuglia 42265b4893 added \ 2010-05-04 10:10:29 +00:00
granzuglia 9508892e4c added \usepackage{hyperref} reference 2010-05-04 09:59:38 +00:00
granzuglia 9ca3dc0855 fixed cast bug for 64bit architectures. 2010-04-30 17:34:59 +00:00
Paolo Cignoni 691ff07eb4 more robust parsing of malformed off (should not crash!) 2010-04-19 12:20:56 +00:00
Paolo Cignoni a184a620e4 corrected the vertical orientation of texture to be consistent with per wedge tex coords 2010-04-08 16:49:50 +00:00
Paolo Cignoni 51534c9ce9 converted to the new UsedTypes syntax 2010-03-18 11:26:44 +00:00
Paolo Cignoni 4ee60382b0 put qt debug code inside guards 2010-03-18 10:20:08 +00:00
mtarini 54ca153009 mini-changes at various importer exporters, to maximize compatibility 2010-03-13 00:52:17 +00:00
Paolo Cignoni 56bde62d80 removed old 'uber' access to component members 2010-03-03 15:57:58 +00:00
Paolo Cignoni 96d770c828 corrected bug in the exporting of the texture file name (removed extra space) (thnx to anonymous bug submitter) 2010-02-26 16:14:20 +00:00
Paolo Cignoni bb75099c5d corrected a wrong bbox type (mismatched between a fixed box3f and the mesh bbox type) 2010-02-23 16:50:47 +00:00
Paolo Cignoni 319a87d5c0 Changed all the m.HasPerVertexXXX into the more safe HasPerVertexXXX(m) (it caused a bug in the saving of per-vertex tex coords) 2010-02-23 16:48:02 +00:00
Paolo Cignoni 866abb0921 improved the support of per vertex texture data. Now it is correctly handled in OFF and PLY 2010-02-23 01:51:25 +00:00
Paolo Cignoni de93d3d941 Yet another bunch of missing typenames; corrected a signature mismatch between LoadMask and GetHeader 2010-02-20 00:59:40 +00:00
ganovelli 9057e1dcd6 added bbox in the header, added missing typenames 2010-02-19 17:34:38 +00:00
Paolo Cignoni 87599e519f added a minimal support for failing and reporting errors 2010-02-18 23:33:56 +00:00
Paolo Cignoni 14850843c6 Better triangulation of quad into two triangles. 2010-01-16 14:59:40 +00:00
Paolo Cignoni 49bbc55cac removed harmless gcc warnings 2010-01-03 01:57:39 +00:00
Paolo Cignoni 73ed783085 Significant change. Now obj with non-convex polygonal faces are correctly managed (and faux edges are supported too). Warning it requires GLU because it relies on glu tessellation. 2009-12-17 17:49:51 +00:00
Paolo Cignoni f4d71c746d added simple printout in debug of degenerate faces when found. 2009-12-07 08:31:44 +00:00
Marco Di Benedetto 08f9b6a4b3 prevented cast/unused/uninitialized warnings and some indentation work. 2009-12-01 17:37:45 +00:00
Paolo Cignoni 1532b46428 Slightly change the interface of the collada parsing stuff to avoid allocation hassles 2009-11-24 10:21:29 +00:00
Marco Di Benedetto 8e9062b12b 1) fixed token parsing : SplitToken() should take the original IO mask and not the clamped (with mesh attributes) one.
2) some indentation work.
2009-11-22 19:09:53 +00:00
Paolo Cignoni 302a7725fa removed harmless warnings 2009-11-17 23:34:46 +00:00
mtarini 420af788a6 fixed bug importing s,t per vert (in blender-flavour plys) 2009-11-05 12:55:31 +00:00
ganovelli 8fdf56d4a4 added include to wrap/callback.h 2009-10-30 23:56:56 +00:00
ganovelli 1ea77adee6 changed name of template param of LoadFaceOcf (it was the same as the tesmplate name of the class) 2009-10-30 23:43:09 +00:00
ganovelli 513be1d83b changed errormsg names for conflicts with already defined names 2009-10-30 17:51:40 +00:00
granzuglia 1e4b72e69c added parameters to Open (fabio ganovelli) 2009-10-30 17:44:35 +00:00
ganovelli 2749e06329 functions moved inside the classes to avoid linking errors 2009-10-30 14:50:50 +00:00
ganovelli 1bdd02fe37 added LoadMask (updated header info to do so) 2009-10-30 14:07:51 +00:00
ganovelli 69daec04a0 added LoadMask 2009-10-30 14:06:33 +00:00
Paolo Cignoni 6f2aa86c56 changed, in vmi importer, return type from bool to int and added human readable error messages 2009-10-30 11:49:06 +00:00
Paolo Cignoni 3850a66151 removed some useless warning 2009-10-30 10:55:16 +00:00
Paolo Cignoni ed82effec9 a few of missing typenames 2009-10-29 17:23:47 +00:00
Paolo Cignoni 987d9df418 added the inclusion of the component_ocf files for the type definitions 2009-10-29 17:22:34 +00:00
Paolo Cignoni 6247e5efdc added VMI to the importer class (a bit risky) 2009-10-29 17:18:46 +00:00
Paolo Cignoni 7ef26b5a25 Improved support for loading meshes with per vertex texture coords (as saved by blender) 2009-10-27 23:55:44 +00:00
Marco Di Benedetto f6d9f4de7c save texture file names if vertex texcoord bit is set. 2009-10-23 20:24:10 +00:00
Marco Di Benedetto 1994b5b493 removed implicit cast warning. 2009-10-21 18:43:51 +00:00
ganovelli 290804071b removed ambiguous Write*/Read* classes 2009-10-09 13:48:52 +00:00
ganovelli 4fa2f2a557 changes to compile with gcc 4.3.3-5 2009-10-09 10:17:24 +00:00
ganovelli 4ea077e7c2 extended support to dump vertex and face Ocf components (compiled only .net) 2009-10-08 15:44:59 +00:00
ganovelli a1bc068e34 extended support to dump attributes
It was only for vertices, now it is also for faces and mesh attributes.
Compiled gcc and .net. Tested only on toy exmaples
2009-10-07 12:45:49 +00:00
ganovelli 71f0c204d9 extended support to dump attributes
It was only for vertices, now it is also for faces and mesh attributes.
Compiled gcc and .net. Tested only on toy exmaples
2009-10-07 12:45:21 +00:00
Paolo Cignoni d3b6444cb4 added polygonal bit mask setting 2009-10-01 15:46:54 +00:00
Paolo Cignoni 5373661f74 improved robustness of loading of files ending with \r on non windows machines and improved the management of bit-polygonal meshes 2009-09-28 00:01:12 +00:00
Nico Pietroni be706b8d6e corrected 1 bug in ExporterOFF 2009-09-27 15:49:35 +00:00
Paolo Cignoni 8be83c0e45 Added support of reading QOBJ variant of obj files (just quads) 2009-09-23 15:09:05 +00:00
Paolo Cignoni 02ccdd90ec small changed to improve the parsing of collada files that has a lot of line breaks inside 2009-09-12 05:22:51 +00:00
Paolo Cignoni d9a064764a Added typename for gcc compliance 2009-09-04 11:56:13 +00:00
Paolo Cignoni f44a3cfa78 Added support to additional per-face data in stl files. Code patch initially contributed by Tommy Odom (thanks!) 2009-08-23 07:16:49 +00:00
Paolo Cignoni 4c778ca971 removed small bug that caused the duplicate loading of the last vertex of a asc file 2009-08-18 00:01:47 +00:00
ganovelli 2c26fa34d4 missing test on cb==NULL added 2009-07-29 13:47:04 +00:00
ganovelli 8484f4522e added support for vertex attributes
experimental. next: test / factorize / extend to faces and edges
2009-07-29 13:44:00 +00:00
Paolo Cignoni 3e6ced9eae Added management of both confidence and intensity in ply storing range maps 2009-07-17 14:43:57 +00:00
Paolo Cignoni abf6773153 corrected a small bug in the progress bar of large files 2009-07-14 08:58:48 +00:00
Marco Di Benedetto 25e9776404 removed unused vertex which caused errors in ocf meshes. 2009-07-06 11:23:08 +00:00
Marco Di Benedetto ace0fba493 changed checks for quality and color (now using specialized templates working with ocf). 2009-06-28 22:42:42 +00:00
Paolo Cignoni d05cc1a41e made more robust the case of saving polygonal meshes 2009-06-26 23:19:52 +00:00
Paolo Cignoni 0d4225a65a added bit polygonal to the saving masks 2009-06-26 23:17:06 +00:00
Marco Di Benedetto b09343bbc4 added missing clean.h header, missing std namespace for vector declaration and fixed signed/unsigned warning. 2009-06-26 18:26:54 +00:00
mtarini 2c8ecf8180 2009-06-26 12:50:55 +00:00
Paolo Cignoni b9959ee7a6 Corrected bug that prevented the loading of x y z raw ascii files (only x, y, z, files were supported) 2009-06-25 14:06:50 +00:00
Marco Di Benedetto e3f40f6c36 added checks for components before accessing them. 2009-06-22 16:53:40 +00:00
ganovelli 52be070545 patch to the previous commit, shot loading/saving
was not to be removed (fixed)
2009-06-16 16:51:13 +00:00
ganovelli 1d0385eb0a removed camera and shot from trimesh
(all .vmi files produced before this change now invalid)
2009-06-16 14:55:12 +00:00
Marco Di Benedetto 87d8294391 fixed uninitialized variable. 2009-05-29 18:33:19 +00:00
Marco Di Benedetto 8b9f17d14c removed some warnings and added return statement. 2009-05-29 16:29:14 +00:00
granzuglia cb7b4db79c added IO_CAMERA in GetExportMaskCapability 2009-05-22 12:43:35 +00:00
granzuglia 2e06ebc183 added GPL incipit 2009-05-18 14:15:15 +00:00
granzuglia f8cb7fc554 final u3d version 2009-05-15 13:47:41 +00:00
granzuglia 39ab4b2540 added support for color per face (WARNING! if both color per face and color per vertex are checked only color per vertex will be saved!) 2009-05-14 09:06:02 +00:00
Paolo Cignoni fd35606087 added missing include file. 2009-05-14 07:38:50 +00:00
granzuglia be047e9a82 fixed little bug in color index 2009-05-13 17:08:40 +00:00
granzuglia 2af46da74c added color per face rather than color per vertex 2009-05-13 16:35:04 +00:00
granzuglia e19de27332 added color per face rather than color per vertex 2009-05-13 16:34:29 +00:00
granzuglia d0ec7cad96 removed previous patch 2009-05-12 14:03:48 +00:00
granzuglia bc210a9db7 patch for mac texture loading 2009-05-11 15:25:06 +00:00
granzuglia 09ef413e51 from ofstream to QFile for a problem with Vista 2009-05-08 09:54:35 +00:00
Marco Di Benedetto 60041df5b4 initialized material texture index to -1. 2009-04-27 10:00:53 +00:00
granzuglia 17d5caeed1 fixed compiler's errors 2009-04-21 05:58:08 +00:00
mtarini 241d058c92 Changed importers (off ply obj raw) to tag edges inside polygonal faces as "faux" 2009-04-20 22:59:08 +00:00
Paolo Cignoni 3745e4db1f changed the main strategy, now the loading is done internally in a custom typed mesh, that at the end is appended to the input one. 2009-04-05 23:30:29 +00:00
Paolo Cignoni 03eb1cfadb Improved management of collada meshes composed by polylistmesh 2009-04-04 17:25:57 +00:00
ganovelli d016806729 added case vertSize or faceSize are 0 2009-03-31 13:36:32 +00:00
Marco Di Benedetto 8a454d266c added detection of wedge normal in LoadMask. 2009-03-24 17:14:54 +00:00
Paolo Cignoni c5ad3694bd Corrected small bug inserted during the add of pervertexradius ply elements 2009-03-19 10:29:24 +00:00
Paolo Cignoni 666b0996ff Added support for PLY saving and reading of the radius property (useful for point clouds) 2009-03-18 14:39:02 +00:00
Paolo Cignoni 90d7a087bc added possibility of skipping header 2009-03-03 23:41:00 +00:00
Paolo Cignoni 1a4c19c69f removed harmless warnings 2009-03-03 23:39:27 +00:00
Paolo Cignoni 06dbbfec33 Added support for the Stanford range map ply repository (that are raw gridded range maps) 2009-02-16 01:03:11 +00:00
Paolo Cignoni 3d14df75e4 corrected small bug that prevented the loading of tristripped ply files 2009-01-07 14:54:22 +00:00
Paolo Cignoni 6f533063ae uint are not a standard type... 2009-01-07 08:58:00 +00:00
Paolo Cignoni 28c13b2037 removed harmless gcc warnings 2009-01-03 22:44:49 +00:00
Paolo Cignoni fe715961f3 added support of binaries ply files with indices stored as short 2009-01-03 22:42:22 +00:00
Paolo Cignoni 5e1ccc4cfc added missing std:: 2008-12-19 15:52:20 +00:00
ganovelli 70ea5c2057 added support for loading directly polygon meshes.
If you are not using polygon mesh this commit does not change anything.
2008-12-18 18:02:44 +00:00
Paolo Cignoni f644a496ec Removed harmless warnings 2008-12-11 13:56:09 +00:00
ganovelli 7b64489526 added Alloc to support polygon meshes 2008-11-26 17:59:29 +00:00
Paolo Cignoni b5d3a085a8 removed references to a MeshModel type that was leaked here from meshlab... 2008-11-13 10:45:39 +00:00
Paolo Cignoni e587581275 add transposeInPlace and duplicate V(int) 2008-10-29 11:17:11 +00:00
Paolo Cignoni 7befff7bec make point2 derived Eigen's Matrix, and a set of minimal fixes to make meshlab compile
with both old and new version. The fixes include:
- dot product: vec0 * vec1 => vec0.dot(vec1) (I added .dot() to the old Point classes too)
- Transpose: Transpose is an Eigen type, so we cannot keep it if Eigen is used. Therefore
  I added a .tranpose() to old matrix classes, and modified most of the Transpose() to transpose()
  both in vcg and meshlab. In fact, transpose() are free with Eigen, it simply returns a transpose
  expression without copies. On the other be carefull:  m = m.transpose() won't work as expected,
  here me must evaluate to a temporary: m = m.transpose().eval(); However, this operation in very
  rarely needed: you transpose at the same sime you set m, or you use m.transpose() directly.
- the last issue is Normalize which both modifies *this and return a ref to it. This behavior
  don't make sense anymore when using expression template, e.g., in (a+b).Normalize(), the type
  of a+b if not a Point (or whatever Vector types), it an expression of the addition of 2 points,
  so we cannot modify the value of *this, since there is no value. Therefore I've already changed
  all those .Normalize() of expressions to the Eigen's version .normalized().
- Finally I've changed the Zero to SetZero in the old Point classes too.
2008-10-28 00:59:46 +00:00
Paolo Cignoni ab200fc950 Port to eigen2: state of the mess:
* curently nothing change if you don't define VCG_USE_EIGEN
* make Matrix*, Point3 and Point4 derive Eigen::Matrix (still ugly)
* now catching all the dot products to replace them by .dot()
  note that most of meshlab already compile
2008-10-27 19:35:17 +00:00
Massimiliano Corsini e98422ee49 fix tokenizeNextLine 2008-10-27 15:19:28 +00:00
Paolo Cignoni 3c79fae752 Improved robustness of parsing of malformed off 2008-10-16 14:32:37 +00:00
Paolo Cignoni 64ce68dac0 * make EmptyRadius::HasRadius returns false
* make gl/Shader and gl/Program* a bit easier to use:
 - automatic object creation
 - add Uniform() overloads for vcg::Point*f types
2008-10-15 08:02:14 +00:00
Paolo Cignoni fc98a34972 Add an optional per vertex radius property in occ, ocf, and IO mask.
Extend derivation_chain from 10 to 12
2008-10-14 14:58:09 +00:00
Paolo Cignoni a7a400b40e Changed an old FaceType::HasFaceQuality() into the tempory aware version HasPerFaceQuality(mesh) 2008-10-14 06:39:04 +00:00
Paolo Cignoni d944271c2a Removed a few warnings 2008-10-09 16:16:49 +00:00
Paolo Cignoni 40a149964f made the absence of faces in a ply file a "non critical" error. 2008-10-02 21:46:29 +00:00
ganovelli 8acc6a4e2c Removed Similarity from Shot
Problem: Shot was using similarity merely to store
rotation and translation. 
There was an incompatibility in that Similarity::ToMatrix
gives scale*rotation*translation while in Shot
the translation stores the viewpoint and the rotation the orientation of the Shot.

In this version, a small class ReferenceFrame was done to play the role of similarity and MultMatrix and MultSimilarity functions were added to transform the frame by multiplying it for a Matrix44 (or applying a similarity).

NOTE: the file export_ply.ply and import_ply.h must also be updated.

-- only compiled with .net ---
2008-09-26 17:05:49 +00:00
ganovelli c69c140e0a minor changes for gcc compiler 2008-08-04 14:49:02 +00:00
ganovelli cff47a9ac3 Extended comment, changed load and save replacing dangerous write and read of the object mesh as whole with saving of its few members 2008-08-01 10:03:05 +00:00
Marco Callieri 74be2a6f67 revised PTX importer, lot of unused code deleted. new import paramenter structure 2008-07-22 10:00:12 +00:00
Paolo Cignoni ce62053b9c Added correct management of binding material in controller nodes 2008-07-21 13:25:32 +00:00
Paolo Cignoni 0b6af20c93 Corrected texture loading. Now symbolic material binding are respected during the traversal. Still to be cleaned up. 2008-07-20 21:25:09 +00:00
Paolo Cignoni 966d98da5a added management of optional quality 2008-07-19 05:25:55 +00:00
Paolo Cignoni c1c51913d3 Started the restructuring of the Collada parser. Now it is correctly recursive and it is able to get geometry also from controller. 2008-07-15 07:27:08 +00:00
Paolo Cignoni 86c16f8245 Added missing license information 2008-07-12 06:12:46 +00:00