Commit Graph

182 Commits

Author SHA1 Message Date
Paolo Cignoni 7ff3b08e5f updated to use pos instead explicit topology 2011-05-24 09:42:10 +00:00
Paolo Cignoni 2239cbd747 added simple boundary capper. Takes a edge mesh and caps its boundaries. 2011-05-11 10:04:33 +00:00
Paolo Cignoni f0a5d17759 Added a hint that you NEED opengl definition before including this file 2011-05-11 10:03:28 +00:00
Paolo Cignoni 384ea891dc added drawing of edges in wireframe if meshes has no faces 2011-05-10 21:57:01 +00:00
matteodelle 49a15ebd82 mozione ponchio per rimozione codice inutile 2011-04-27 13:02:30 +00:00
Paolo Cignoni 214904b312 Ongoing corrections of include paths to comply the new folder arrangement 2011-04-03 22:50:59 +00:00
ganovelli f7d8e31056 minor (missing include, left CMeshO) 2011-01-23 22:28:39 +00:00
Paolo Cignoni 71bdb18e07 Added more hints for better controlling point rendering (smoothnes and distance attenuation) 2011-01-18 11:11:19 +00:00
ganovelli bd03229989 patch to force immediate mode (bug with vbo to be solved)
bug in call glTexCoordPointer fixed
2010-11-08 11:03:18 +00:00
Paolo Cignoni 343493ef11 Moved the ORTHO, PERSPECTIVE enums from the vcg namespace to the camera class namespace. 2010-10-31 13:19:09 +00:00
ganovelli 42c69abccf first working commit for the apss (from Algebraic point set surfaces
Gaël Guennebaud and Markus Gross, SIG07)
2010-10-29 17:18:29 +00:00
Nico Pietroni ce779c0082 added if(tm==TMPerWedge) glEnable(GL_TEXTURE_2D); on line 543 2010-07-15 13:29:31 +00:00
Nico Pietroni 26709cae6c cahnged WIN32 define to _WIN32 2010-07-15 13:27:18 +00:00
granzuglia 8f2c1d543d fixed small visualization bugs (dereferenced empty vertex attributes) 2010-05-24 14:53:54 +00:00
Paolo Cignoni 4cfffc32f2 corrected managment of per-mesh color for point clouds 2010-04-28 15:02:05 +00:00
Paolo Cignoni aa04a96264 Never try to make a glwrap DrawFill over an empty mesh... 2010-04-27 09:50:55 +00:00
Paolo Cignoni c095f8efe6 added pushattrib/popattrib in the point rendering code of gl trimesh wrapper 2010-04-20 01:01:13 +00:00
Paolo Cignoni 0f221f2d99 added suppor for per vertex tex coord rendering 2010-04-08 16:52:23 +00:00
Nico Pietroni d32ed18e1d corrected one bug in FromTrackball function 2010-04-07 21:43:24 +00:00
Nico Pietroni 1438c44f5f - Allowed the usage of per vertex coordinate , uncommented tm==TMPerVert options
- corrected cast warning on line 721
2010-04-05 15:29:19 +00:00
Paolo Cignoni c2456526fd added vertex picking 2010-02-26 16:20:15 +00:00
Nico Pietroni 66ae917613 commented "int _t2=clock();" call in Crease function, it is unuseful and requires to include time.h 2009-07-17 17:44:40 +00:00
Paolo Cignoni 67ce5b52ce Added glColor and glClearColor for both Color4f (missing) and Color4d (just added) 2009-07-10 13:24:29 +00:00
Paolo Cignoni 2d3d9bd13f corrected wrong test on the use of faux edges when drawing in wireframe 2009-05-21 22:59:16 +00:00
granzuglia 5811240f92 added GPL incipit 2009-05-18 14:10:59 +00:00
granzuglia 9ef1804d3a added GPL incipit 2009-05-18 14:08:04 +00:00
Nico Pietroni 147817f6ea line 795 changed DrawWire<NMPerVert,CMNone>(); -> DrawWire<nm,CMNone>(); 2009-04-22 15:22:48 +00:00
Paolo Cignoni af6a963f41 corrected returned number of PickFaceVisible function 2009-04-22 10:28:52 +00:00
granzuglia 17d5caeed1 fixed compiler's errors 2009-04-21 05:58:08 +00:00
mtarini 97b5d83721 Now all wireframes mode hide "faux" edges
(those inside a polygon face), 
IFF you do SetHint(HNIsPolygonal).
2009-04-20 22:57:42 +00:00
mtarini 935b2e102b added a test on existence of glPointParameterfv before its use in point-based mesh rendering to avoid crashes. 2009-04-20 16:30:35 +00:00
Paolo Cignoni 3bf343c31b gcc compilation issue 2009-04-02 07:56:38 +00:00
Paolo Cignoni b22077f200 added picking of visible faces 2009-04-01 14:51:49 +00:00
Paolo Cignoni 7c9aa1c99f Crude, yet functional, custom attribute implementation 2009-01-23 09:22:38 +00:00
Paolo Cignoni 8627c95678 Added Attribute support 2009-01-12 13:57:48 +00:00
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