Commit Graph

295 Commits

Author SHA1 Message Date
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
Paolo Cignoni 637dd26b2b removed duplicated file (same file and more recent was in wrap/dae) 2008-07-12 06:11:47 +00:00
Paolo Cignoni 9ca56690ae remove harmless warnings 2008-07-02 13:31:00 +00:00
Paolo Cignoni 9135ed578c exposed binary/ascii support and added progress bar support in the save 2008-07-02 13:30:21 +00:00
Paolo Cignoni 0a712cbbcb removed harmless warnings and added better support for transp materials 2008-07-02 13:28:37 +00:00
Paolo Cignoni 700b8cd26e Removed annoying unsigned vs signed warnings.
Thanks to Alain Boyer for the kind bug submission!
2008-06-29 22:44:44 +00:00
Paolo Cignoni e5572b4f05 added support of internal edge bit for keeping track of triangulated polygonal faces 2008-06-26 08:41:11 +00:00
Paolo Cignoni bd784fabaa Corrected a small bug in the management of negative indexes of obj on non triangular faces 2008-06-14 07:29:31 +00:00
Paolo Cignoni e5857b7925 corrected a small bug causing crashes when loading bad-formed mtl files 2008-06-13 07:05:59 +00:00
Paolo Cignoni bf0e346d81 removed small nasty bug about indexes that in some cases trashed output meshes when in presence of deleted faces 2008-05-29 15:15:19 +00:00
Paolo Cignoni 25dd36a704 updated to the new temporary data structure 2008-05-16 17:44:31 +00:00
Massimiliano Corsini 28a08a4e0c set defaut callback (in save) to null 2008-04-29 11:51:28 +00:00
Paolo Cignoni 9b00cd75ef First Working Version 2008-04-24 04:45:36 +00:00
Paolo Cignoni 03609ba40b removed outdated comment 2008-04-22 14:53:53 +00:00
Paolo Cignoni c693b46f57 added yet another type of face indexes (now 8 different ways!) 2008-04-15 14:12:21 +00:00
Paolo Cignoni 0bdd7975b0 added suppor of color in OFF format. 2008-04-15 10:38:12 +00:00
Paolo Cignoni 4b769a4e8a added yet another combination of unsigned/signed elements in faces specification to comply to mathematica ply's 2008-03-22 10:24:44 +00:00
Paolo Cignoni 1d7ca87fe2 usual experiments in the u3d exporting name files management 2008-03-22 07:27:09 +00:00
Paolo Cignoni 0a8997ef8d removed vertex color and vertex normal from the capabilities of this format. They are not safe 2008-03-19 05:21:57 +00:00
Paolo Cignoni 633e7b97e4 added quality parameter 2008-03-18 11:26:45 +00:00
granzuglia 4725bc5aec added two missing include files:
1) #include <wrap/callback.h>
2) #include <wrap/io_trimesh/io_mask.h>
2008-03-13 08:48:10 +00:00
Paolo Cignoni 66eee15580 added different rules for building the command line for windows and non windows 2008-03-08 17:25:04 +00:00
Paolo Cignoni fa857d5e51 corrected creation of the command line under win 2008-03-06 10:58:40 +00:00
granzuglia 6ab9e5699c added support to dae files with lines tag 2008-02-28 10:44:47 +00:00
Paolo Cignoni 6cf9aa4552 removed duplicated material class 2008-02-27 23:48:06 +00:00
Paolo Cignoni e199b32434 added materialname field 2008-02-27 23:38:40 +00:00
Paolo Cignoni bd13e9e1df removed useless include 2008-02-27 23:35:56 +00:00
Paolo Cignoni 2828e5c8e4 corrected various bugs in the export of texture coords 2008-02-27 00:34:43 +00:00