Commit Graph

308 Commits

Author SHA1 Message Date
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
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
matteodelle 17ebec98c6 minor eroor correction on variable names 2006-12-18 16:02:57 +00:00
Marco Callieri 02f23020fc added a function to approximate a far plane value given a shot and the mesh bbox 2006-12-18 15:26:24 +00:00
matteodelle 5360cc0977 *** empty log message *** 2006-12-18 14:28:07 +00:00
Marco Callieri a344d59446 camera+shot revamp: changed field names to something with more sense, cleaning of various functions, correction of minor bugs/incongruences, removal of the infamous reference in shot. 2006-12-18 09:46:39 +00:00
Paolo Cignoni 1cb21d78f1 Slightly changed the colormaterial mode for the flatwire 2006-12-12 11:06:58 +00:00
ganovelli ebfacd2db3 first draft of the class the draw a Pos 2006-12-10 19:59:28 +00:00
Paolo Cignoni 67007b3691 Added a class prototype for avoiding the inclusion of tetra.h 2006-12-07 00:39:22 +00:00
Paolo Cignoni aa10ac62be Removed useless include <tetra.h> 2006-12-04 09:27:13 +00:00
Paolo Cignoni 132ffb7d82 Added type cast (in order to remove warnings) 2006-10-27 08:55:15 +00:00
Federico Ponchio 4b46ed3c4e Aggiunti un paio di typename... al solito. 2006-10-14 16:26:26 +00:00
Paolo Cignoni b9b2725478 Removed the default use of the OpenGL transpose extension. Added two method for direct (non transposed) matrix multiplication and getting 2006-10-09 19:56:09 +00:00
Marco Di Benedetto d878081824 First Commit. 2006-10-05 18:34:13 +00:00
ganovelli 89c3034fd9 *** empty log message *** 2006-07-06 12:38:32 +00:00
Paolo Cignoni e7200db32e remove warning C4244 2006-07-03 13:46:34 +00:00
ganovelli a24e269ac4 Aggiunto namespace tetra, cambiato riferimento a puntatore 2006-06-29 13:25:46 +00:00
Paolo Cignoni 283834183d gcc dislike doubleline comments; removed. 2006-05-25 09:40:14 +00:00
Paolo Cignoni 47e62b3c6e Removed all GLUT dependencies! 2006-05-25 09:22:58 +00:00
Paolo Cignoni de11419338 Corrected bug in the pickface to comply deleted faces and to allow to have unsorted results. 2006-05-25 04:42:29 +00:00
Paolo Cignoni 309fa30451 Wrong matrix type in cone (thx Maarten) 2006-03-29 07:54:03 +00:00
Federico Ponchio cc73ff49c9 for(ii... -> for(int ii 2006-02-28 13:25:48 +00:00
Paolo Cignoni c01d03e1ee Removed glut. Added ifdef guards and namespace.
Added bool return value to the pick function
2006-02-13 13:06:34 +00:00
Paolo Cignoni 1f2ff388d2 Removed glew inclusion 2006-02-13 13:05:05 +00:00
Paolo Cignoni 287fd21a07 Switched from rough zoffset to glpolygonoffset for hiddenline and flatlines modes. Less zfighting... 2006-02-09 10:00:39 +00:00
matteodelle 060df82dd4 *** empty log message *** 2006-01-11 16:06:25 +00:00
Paolo Cignoni edc2f8532d add namespace vcg:: 2006-01-10 12:22:34 +00:00
Paolo Cignoni 20b3385c59 fix some bugs 2006-01-04 16:39:29 +00:00
Nico Pietroni e9b8ee44e1 unified use of float in drawing methods 2006-01-03 11:13:25 +00:00
Paolo Cignoni d32db6dd2a add test (tm==TMPerWedgeMulti) 2005-12-15 14:05:59 +00:00
Paolo Cignoni 67528dcf14 multiple texture support 2005-12-14 00:18:43 +00:00
Federico Ponchio d652973606 glut->GL/glut (for real this time) 2005-12-06 14:11:15 +00:00
ganovelli 03d96c24b2 *** empty log message *** 2005-12-03 09:36:28 +00:00
Paolo Cignoni b3abb3c44f Changed a wrong uppercase in the include 2005-12-02 10:38:07 +00:00
Paolo Cignoni 8ae47cd7c7 Added support for one texture mode (perwedge)
Changed texturemapid array into a safer vector
2005-12-02 00:03:22 +00:00
Paolo Cignoni 07d2259700 shot.camera -> shot.Camera()
shot.similarity.Matrix() -> shot.Similarity().Matrix()
2005-11-25 10:33:33 +00:00
Paolo Cignoni 6a04d281df Added bound checking in texture access 2005-11-24 08:06:50 +00:00
Paolo Cignoni 7bca532292 Added a missing colormaterial for flatwire. 2005-11-22 23:57:28 +00:00
Paolo Cignoni 50f4e33dcc add
#ifndef __PICK______H
#define __PICK______H
2005-10-27 14:46:26 +00:00
Paolo Cignoni 45583a69ae add namespace vcg:: to GetFrustum(...) 2005-10-24 14:42:57 +00:00
Paolo Cignoni 53f49b4784 Added glscale(scalar) and corrected bug in glscale(point2) 2005-10-13 08:32:26 +00:00
Federico Ponchio 0446646573 another bunch of typenames. 2005-10-12 18:24:30 +00:00
Federico Ponchio b54c4ce850 Added gazillions typenames, commented out old broken functions,
added unsigned int TextureMapID[128], and unsigned int & TMId(int i).
2005-10-12 17:19:03 +00:00
Paolo Cignoni b5d9271a14 add GLPickTri 2005-09-15 15:44:52 +00:00
ganovelli 3312583e86 glut.h --> GL/glut.h 2005-07-23 09:21:37 +00:00
Paolo Cignoni 2d2bbfb454 fix some bugs 2005-07-11 09:04:26 +00:00
Paolo Cignoni 701abb9c2c modificato:
- void  Cone(..)
 aggiustate le normali per avere un effetto piu' gradevole.
2005-06-30 13:20:32 +00:00
ganovelli 0c7caf4a75 added draw plane 2005-06-30 10:17:04 +00:00
ganovelli 3d0dee1073 *** empty log message *** 2005-06-30 10:16:11 +00:00
Paolo Cignoni e6feeb2e3d aggiunto:
- static void CavalieriProj( .. )
- static void IsometricProj( .. )

modificato:
- static void TransformGL( .. )
- static void SetSubView( .. )
2005-06-29 15:02:29 +00:00
Nico Pietroni 0a7cd4af5c minor changes 2005-05-19 09:09:54 +00:00
Paolo Cignoni 9447483394 ho tolto 2 warning del tipo unreferenced formal parameter, commentando le var che producevano tale warning. 2005-05-09 11:28:48 +00:00
Paolo Cignoni 6fa3316cb6 added glboxwire 2005-05-05 12:28:13 +00:00
Paolo Cignoni b07f6f2343 Minor Changes To Compile With List Containers. 2005-04-22 15:16:48 +00:00
Nico Pietroni 6160f0545d added boolean parameter to use on not the display list 2005-04-04 11:59:16 +00:00
Nico Pietroni a5128f71e3 added disabling of cullfaces to obtaing a correct visualization of arrows 2005-03-03 13:29:35 +00:00
Nico Pietroni 5ce9f028b7 1 error corrected in display list of glCylinder 2005-03-03 13:11:30 +00:00
Nico Pietroni 0663f16525 first working version 2005-03-03 10:48:54 +00:00
Paolo Cignoni 6c1174ecdd ripristinata la modalita' di render bbox.... 2005-02-26 12:45:23 +00:00
ganovelli a212f6320d added vcg namespace 2005-02-22 11:15:01 +00:00
Paolo Cignoni b1469351ad corrected some syntax errors in GetFrustum 2005-02-22 10:57:05 +00:00
ganovelli 31ac4bbe6f GetFrustum moved from gl/camera to math/camera.h 2005-02-21 18:11:47 +00:00
Paolo Cignoni abaae0c2fd FromTrackball() corrected 2005-02-11 11:43:09 +00:00
Paolo Cignoni 0fde2046fc constructor name was wrong (old class name) 2005-01-12 14:39:41 +00:00
Paolo Cignoni 68f225ebd7 *** empty log message *** 2004-12-16 14:41:36 +00:00
Paolo Cignoni 3aa3da0d46 Cambiato il nome del costruttore era rimasto quello vecchio... e tolti alcune righe di codice commentate 2004-12-16 11:08:35 +00:00
Paolo Cignoni 02aee67598 *** empty log message *** 2004-12-15 18:45:50 +00:00
ganovelli 2a8d132abd added FromTrackball and fixed include names (Poiint to point) 2004-11-03 09:41:57 +00:00
ganovelli a66d6d3ebd added SetSubView, some comment and put the class back(!) 2004-11-03 09:38:21 +00:00
Nico Pietroni 8c83d3d4d0 minor changes 2004-10-07 13:14:37 +00:00
Nico Pietroni 1852feab38 minor changes in visulizing of selected tetrahedra 2004-10-06 16:24:59 +00:00
Nico Pietroni c803df0f82 added PickTetraFace function 2004-10-06 16:23:59 +00:00
ganovelli 33a8e77c07 changed from classes to functions 2004-10-05 19:04:45 +00:00
Nico Pietroni f1cb3297e6 first running version 2004-10-04 17:07:23 +00:00
Nico Pietroni 7890752544 added clip plane rendering 2004-10-04 17:05:13 +00:00
Federico Ponchio e5d01c7a80 <gl/glew.h> --> <GL/glew.h> 2004-09-30 01:40:39 +00:00
Federico Ponchio a9780d57e9 <gl/glew.h> -> <GL/glew.h> 2004-09-30 00:48:07 +00:00
ganovelli 331db0410f glGet added 2004-09-28 14:04:36 +00:00
Nico Pietroni 29eb7604c4 first running version 2004-09-23 13:13:09 +00:00
ganovelli 397fa72c41 creation 2004-09-15 22:59:13 +00:00
Nico Pietroni a81551f3a1 minor changes 2004-08-26 13:18:32 +00:00
Paolo Cignoni ed3a96d48d Added test on presence of glTranspose extension (for old hw support) 2004-07-13 15:55:57 +00:00
Nico Pietroni 96e07ffd53 changed order of initial include ( it had problems with extension of openGL) 2004-07-13 11:25:57 +00:00
ganovelli 98d0c5b263 first draft: it includes glew ! 2004-07-12 15:57:33 +00:00
ganovelli 5bc692a094 first draft 2004-07-12 15:51:55 +00:00
Nico Pietroni d4af2821e3 changed draw in flatwire.... 2004-07-08 08:41:31 +00:00
Paolo Cignoni 1d04957291 Added box3 drawing functions 2004-07-07 23:30:28 +00:00
Nico Pietroni dc9c863f3a changen wire and hiddenlines draw modes 2004-06-03 09:11:35 +00:00
Paolo Cignoni 66e7c5372e Removed inclusion of gl extension stuff 2004-05-26 15:15:46 +00:00
Paolo Cignoni dd22e28ce9 Removed inclusion of gl extension stuff and added glcolor stuff 2004-05-26 15:13:01 +00:00
Nico Pietroni 2a7f401e6a added callback funtions 2004-05-17 15:27:16 +00:00
Nico Pietroni 2d4a3d6be4 added calback funtions color on tetrahedron or vertex 2004-05-14 09:48:12 +00:00
Federico Ponchio bc13d242fe <GL/GL.h> --> <GL/gl.h> 2004-05-13 23:44:47 +00:00
Federico Ponchio c66c874c06 *** empty log message *** 2004-05-12 20:55:18 +00:00
Federico Ponchio 8a4f1f166f Added #include <glew.h> 2004-05-12 13:07:47 +00:00
Paolo Cignoni 7e8e197d57 remove include of gl and added glextgension exploiting, 2004-05-04 23:36:23 +00:00
Paolo Cignoni 30227aff07 inlined functions for avoid multiple linking errors 2004-04-07 10:47:03 +00:00
Paolo Cignoni 711c2a00d9 First working version! 2004-04-05 11:56:14 +00:00
Federico Ponchio 59dca5a840 *** empty log message *** 2004-03-31 15:27:17 +00:00