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
4db69febbe
big replacement .Zero => .SetZero, and start of Eigen's compatibilities (currently disabled by default)
2008-10-27 14:48:14 +00:00
Federico Ponchio
fe59b6ad4d
Extrinsics.tra is now private, using Tra()
2008-10-24 16:37:24 +00:00
Paolo Cignoni
9947006682
Heavy refactoring of the SVG writing code. Now it is much much shorter and hopefully more clear.
2008-10-23 16:51:58 +00:00
Paolo Cignoni
3c79fae752
Improved robustness of parsing of malformed off
2008-10-16 14:32:37 +00:00
Paolo Cignoni
8f77d3cbaa
removed non-portable inclusion of GL.h (on mac gl.h is in stupid places)
2008-10-15 10:11:39 +00:00
Paolo Cignoni
a3dbc3168b
fix a typo in Program::Uniform()
2008-10-15 09:28:15 +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
117c2a06de
New Parameter function to setup glsl programs that use geometry shaders
2008-10-09 08:58:57 +00:00
Paolo Cignoni
7722469c4f
Public keyword missing
2008-10-08 14:30:56 +00:00
Paolo Cignoni
2da37bd5f7
Geometri shader, initial support
2008-10-08 14:00:32 +00:00
Paolo Cignoni
b6d7e548b2
Commented out filename after final endif
2008-10-08 14:00:01 +00:00
ganovelli
ca01052454
Chamged MatrixGL to comply renaming in wrap/gl/shot.h
2008-10-07 10:58:18 +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
b2758bcb39
[Namespaces changes]
...
edge->edg
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:15:51 +00:00
ganovelli
86597ca595
added typename and
...
[Namespaces changes]
edge->edg
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (4 letters namespaces):
order 0 (vertex) :vert
order 1 (edge) :edge
order 2 (triangle) :triangle
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:15:29 +00:00
ganovelli
5e24bf99ce
removed useless inclusion of edge.h
2008-09-30 10:14:52 +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
Paolo Cignoni
dcbb7456ac
Added by default rotation on middle + alt, (almost a standard on various 3d packages). Kind patch submitted by Sebastian Herholz.
2008-09-22 23:10:00 +00:00
Paolo Cignoni
d49e84fb9c
fixed a bug
2008-08-27 14:04:38 +00:00
Paolo Cignoni
78ef9230ee
Added modifications sent in by Julien Couet for better saving of computed slices.
2008-08-07 07:24:52 +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
ganovelli
b4fa6b9c97
-missing template type added in CameraDistance
...
-bug in DrawPoints removed
2008-07-24 12:37:18 +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
d3ac368bd5
Updated references of SetRotate to the new SetRotateDeg/SetRotateRad interface
2008-07-13 07:41:20 +00:00
Paolo Cignoni
51dde5296f
Corrected the broken ParseRotationMatrix. It had two bugs: it did not correctly parsed sequence of rotations and it exchanged degree with radians
2008-07-13 05:39:13 +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
29ad822941
Added missing std namespace qualifier to min and max
2008-07-04 07:30:49 +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
bafcd1768e
remove harmless warnings
2008-07-02 13:26:25 +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
ab71949274
Changed a line in a switch case in the void PlyFile::compile function
...
p->cb = cb_skip_list_bin8
Thanks to Alain Boyer for the kind bug submission!
2008-06-29 22:32:09 +00:00
Paolo Cignoni
75e3cc2a18
added a safeness assert
2008-06-29 07:48:48 +00:00
ganovelli
e91db31568
first draft of the wrapper for cminpack (see http://devernay.free.fr/hacks/cminpack.html ).
...
It only wraps the lmdif function (non linear minimization
of Sum_{i=0}^{M} ( F(x0,..,xN)_i ) ^2 ) with F:R^N->R^M
2008-06-28 16:14:18 +00:00
Federico Ponchio
8494ace467
Fixed some bug and move to QVariant.
2008-06-27 18:54:18 +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
17369b521b
Matrix transformations corrected in glCylinder and glArrow.
2008-06-23 14:33:51 +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
67ce430991
Added point drawing using vertex arrays and distance attenuation for large points
2008-06-10 00:57:46 +00:00
Federico Ponchio
634697dd8f
Some documentation added
2008-05-30 10:45:33 +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
Federico Ponchio
21adae1895
Created.
2008-05-29 12:50:41 +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
5fa10cda23
made generic functions static
2008-04-10 11:09:34 +00:00
Paolo Cignoni
c8317febdc
added missing namespaces
2008-04-06 06:50:00 +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
4bd2caa2e6
improved comments
2008-03-21 16:09:02 +00:00
Paolo Cignoni
0af424701d
Added doxygen documentation
2008-03-21 16:08:43 +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
Paolo Cignoni
35848b0a77
improved comments
2008-03-14 17:15:59 +00:00
Paolo Cignoni
b768cce86c
Added doxygen documentation
2008-03-14 16:54:34 +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
7ea4ad85a0
Added doxygen documentation
2008-03-11 09:08:46 +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
Paolo Cignoni
14dee656f3
moved ActiveCoordinateFrame to its own files
2008-03-02 16:44:18 +00:00
Paolo Cignoni
7fe04d928d
added newline at end of file
2008-03-02 15:50:20 +00:00
Paolo Cignoni
9607ee6107
made all static
2008-03-02 14:16:39 +00:00
granzuglia
ba13e12c32
bugs patched by Imran
...
PS I'm not so sure about the instancematerial bug!
2008-02-28 12:02:11 +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
Federico Ponchio
de91366540
removed some garbage.
2008-02-26 18:55:55 +00:00
Federico Ponchio
86bf1f6d7b
Fixed bug in drawing position of the trackball when changin center.
2008-02-26 18:46:55 +00:00
Paolo Cignoni
d8c479c0fe
corrected after quaternion/similarity/trackball changes
2008-02-26 18:22:42 +00:00
Paolo Cignoni
38a5850163
corrected CylinderMode::Apply
2008-02-26 18:00:41 +00:00
Federico Ponchio
e4bed07afa
Fixed scale behaviour.
2008-02-24 18:10:54 +00:00
Federico Ponchio
654452b177
Should work as before. I didn't test cylinder and other exotic modes.
2008-02-24 18:05:08 +00:00
Federico Ponchio
7006d170be
Restored trackball functionality. Not very much tested, and code will need some
...
cleanup.
2008-02-24 14:37:00 +00:00
Paolo Cignoni
16b3a3e11a
missing ending newline
2008-02-22 21:00:22 +00:00
Paolo Cignoni
69c5890467
corrected typo
2008-02-22 20:34:35 +00:00
Paolo Cignoni
b2d39163ac
many user interface improvements, cleaned up a little
2008-02-22 20:04:02 +00:00
Paolo Cignoni
228db666c3
first attempt to correct after quaternion ToMatrix() inversion (does not work yet)
2008-02-22 18:57:47 +00:00
Paolo Cignoni
71db3f05f0
corrected texture saving. Still broken the multitexturing
2008-02-21 17:47:29 +00:00
Paolo Cignoni
130442663c
Corrected various bug, involving spurious commas, and pervertex color saved as per wedge color.
2008-02-21 17:23:57 +00:00
Paolo Cignoni
b71c11a0f7
some generalization made
2008-02-17 20:52:53 +00:00
Paolo Cignoni
0758b0b32d
first version
2008-02-16 14:12:30 +00:00