Federico Ponchio
6d2363d10a
There was a bug in TransformGL for perspective matrix.
...
The function worked as intended only if near == focal.
2008-11-21 17:22:58 +00:00
Paolo Cignoni
818eb2b61d
remove an ifdef for compiling with older apple compiler. no more needed under leopard (thanks to Iacopo Peri)
2008-11-18 09:37:23 +00:00
Federico Ponchio
01c0bc106f
Added function to get near and far plane for a box (exact).
2008-11-07 15:15:06 +00:00
Paolo Cignoni
dfc97ba1f2
fix Matrix44 infinite product, make glGetv not allocate temporary
2008-10-30 10:47:08 +00:00
Paolo Cignoni
3d43483497
one more fix gcc 4.0.1 issue in wrap/gl/math
2008-10-29 13:04:11 +00:00
Paolo Cignoni
0d9795d163
fix gcc 4.0.1 issue in wrap/gl
2008-10-29 12:56:32 +00:00
Paolo Cignoni
e587581275
add transposeInPlace and duplicate V(int)
2008-10-29 11:17:11 +00:00
Paolo Cignoni
07f2e976ea
* change all remaining Transpose to transpose,
...
* update the gl/math wrappers to make them more Eigen friendly
(and remove the useless, and not used, and somehow dangerous
*Direct and *E functions)
* add automatic reinterpret_casting from Eigen::Matrix to vcg
specialized types
2008-10-29 00:05:44 +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
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
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
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
ganovelli
b4fa6b9c97
-missing template type added in CameraDistance
...
-bug in DrawPoints removed
2008-07-24 12:37:18 +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
17369b521b
Matrix transformations corrected in glCylinder and glArrow.
2008-06-23 14:33:51 +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
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
Paolo Cignoni
0fdd22023e
removed unused vars
2008-02-15 08:19:51 +00:00
Paolo Cignoni
0e283de929
added sanity checks when deleting buffers
2008-01-28 08:49:58 +00:00
Paolo Cignoni
c80e50570b
Renamed some unmeaningful variable names (b -> array_buffers ; h -> curr_hints)
2007-12-05 11:08:16 +00:00
Paolo Cignoni
63ee2004b6
- Fixed DrawFill method, which required the hint 'HNUseVArray' enabled in order to render the mesh with VBO. This was also causing extra overhead in the Update method since HNUseVArray has to be enabled and therefore extra calculation were done to copy vertices in VArrays even if the user was using only VBOs.
2007-12-04 17:59:41 +00:00
Marco Di Benedetto
2ea14ac83b
Added cast to prevent pointer truncation warning/error messages.
2007-12-01 18:09:14 +00:00
Marco Di Benedetto
87b88070c1
Added a GLenum cast to suppress warning message.
2007-10-16 13:31:23 +00:00
Marco Di Benedetto
fe22c31f2d
*** empty log message ***
2007-09-12 16:20:24 +00:00
Marco Di Benedetto
5261480fc7
Corrected indexing for non textured faces.
2007-09-12 14:48:50 +00:00
Paolo Cignoni
afdaa7e3db
Added ifdef needed for mac gcc compilation
2007-08-28 05:43:56 +00:00
Paolo Cignoni
8b27c96df2
moved here callback def and added some needed opengl related casts
2007-08-25 08:43:33 +00:00
Paolo Cignoni
c14e1511db
added a missing typename
2007-08-17 07:00:00 +00:00
ganovelli
135951fd27
added gltetra, added normal gltriangle
2007-07-31 12:21:50 +00:00
Marco Di Benedetto
29febfdf25
First Commit.
2007-07-26 16:22:47 +00:00
ganovelli
f2e35aaf0d
precompiler directives
2007-07-05 16:35:29 +00:00
ganovelli
96adfb6f7c
typenames
2007-07-05 16:35:14 +00:00
Paolo Cignoni
f354a9f445
Small gcc compiling issues
2007-05-31 09:39:56 +00:00
Paolo Cignoni
3cf34fb91a
Added std:: prefix to advance call
2007-05-28 07:35:21 +00:00
Paolo Cignoni
97d7baf66c
Corrected gcc compiling issues
2007-05-21 13:22:40 +00:00
Marco Di Benedetto
1c2f0e7db7
First Commit.
2007-05-14 22:23:36 +00:00
ganovelli
1b72079489
change from Tetra.h to tetra.h
2007-05-08 18:56:51 +00:00
ganovelli
e77e2dcf26
glTriangle added
2007-05-08 18:55:38 +00:00
ganovelli
9ff5b1a193
adde vf iterator
2007-05-08 18:55:14 +00:00
Paolo Cignoni
5d4900c29f
Added cast for mac compiling
2007-02-22 09:17:56 +00:00
Paolo Cignoni
13a26e1b89
Added cast for mac compiling
2007-01-18 01:26:23 +00:00