Commit Graph

421 Commits

Author SHA1 Message Date
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 0361427bc0 big cleaning in Point* and Matrix*, now they are very closed to be simple typedef of
Eigen's Matrix. Now the dilema is how to mimic those typedefs, using inheritence ?
or using the classic workaround: typename Point3<float>::Type; with Point3<T>::Type defined
to Eigen::Matrix<T,3,1>. Anyway currently I support both (and the inheritence scheme has
to be preserved for compatibility). The advantage of the second approach is that when
eigen has to evaluate an expression it uses an Eigen::Matrix<>, so it is probably better
to only use Eigen::Matrix but I'm not 100% sure that makes a big difference especially if
we add some automatic reinterpret_cast between Eigen::Matrix and vcg::Point*....
2008-10-28 20:06:17 +00:00
Paolo Cignoni c1551eddfd make Point derive Eigen's Matrix and some cleanning 2008-10-28 11:47:37 +00:00
Paolo Cignoni 977ddb9623 some cleaning 2008-10-28 10:16:43 +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 5394003338 Fixed small error in documentation 2008-10-24 18:49:40 +00:00
Paolo Cignoni 8a8eb6fb65 add the possiblity to sort eigenvalues/vectors according to their absolute values 2008-10-24 17:21:53 +00:00
Paolo Cignoni 24ea4251a9 Matrix33: make const the binary operators 2008-10-24 12:20:44 +00:00
Paolo Cignoni 39e2cf2b3e Spherical Harmonics are templatized on the number of coefficients 2008-10-08 14:01:34 +00:00
ganovelli d0d580c4ae Changed GetIntrinsics into:
GetExtrinsicsToWorldMatrix and
GetWorldToExtrinsicsMatrix
2008-10-07 10:57:09 +00:00
ganovelli e16d065e93 [Namespaces changes]
vert->vertex


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 (extended namespaces):
order 0 (vertex)      :vertex 
order 1 (edge)        :edge 
order 2 (triangle)    :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 11:41:58 +00:00
ganovelli bb741600ca <limits.h> to <limit> 2008-09-30 11:41:04 +00:00
ganovelli a2e3e5b725 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:07:32 +00:00
Federico Ponchio e5258c6aa3 Attempting to make similarity compatible with both quaternions and matrix44 2008-09-26 15:37:53 +00:00
ganovelli 3d8400f86e added a missing templatization od Point3 in Decompose (thanks Oscar Barney) 2008-09-22 13:49:15 +00:00
ganovelli efd69c8291 qualifier Camera<S>:: removed in inline definition (thanks Oscar Barney) 2008-09-22 13:42:49 +00:00
ganovelli 889b2ddaa3 chamged " to < in the #include 2008-09-22 09:35:01 +00:00
ganovelli f2ed76753c added inclusion of functional 2008-09-22 09:10:58 +00:00
granzuglia b9ce07204e Minor changes according to new Point<N,S> definition. 2008-09-10 14:06:13 +00:00
Paolo Cignoni e8c7472dca Corrected name of template type S in UndistortedToDistorted() to avoid the shadowing between S as type and S as variable name. 2008-09-09 17:41:33 +00:00
matteodelle c94dbdfdaf 2008-09-09 09:22:55 +00:00
matteodelle 0c2491e1b4 new functions to handle distortion: should not affect previous stuff. tested but still error prone... 2008-09-09 09:20:48 +00:00
Federico Ponchio 12d5a0e322 Removed compile warning by initializing imax to 0 in Decompose(). 2008-08-27 14:33:20 +00:00
Paolo Cignoni 7c66288207 changed a RotateRad to the new SetRotateRad 2008-08-14 10:02:07 +00:00
ganovelli 3462f6a8c2 changed from Rotate (in degrees) to SetRotateRad and SetRotateDeg (the same as in Matrix44.h)
Added return type to the functions SetXXX
2008-08-12 17:31:11 +00:00
Paolo Cignoni 9e214da6ff Re-inserted the return statement in the Invert() function that was erroneously removed with the previous commit. 2008-08-11 12:56:37 +00:00
Paolo Cignoni 65320e40a7 Added a clarifying comment on the Invert versus Inverse issue 2008-08-11 08:04:19 +00:00
ganovelli 1e94f7cf46 Add covariance matrix of a set of points 2008-08-07 18:33:23 +00:00
Paolo Cignoni dde42be7ea Added new line at the end of file 2008-08-04 15:55:53 +00:00
Paolo Cignoni e4e5507757 Added missing includes 2008-08-04 15:38:10 +00:00
Paolo Cignoni c46f5f2435 removed a version of the ComputeRigidMatchMatrix that take in input a weight vector. User should use ComputeWeightRigidMatchMatrix directly 2008-07-23 22:50:15 +00:00
Paolo Cignoni f61a69c94f in "ComputeRigidMatchMatrix(std::vector<ScalarType> weights,Matrix44x &res,std::vector<Point3x> &Pfix,std::vector<Point3x> &Pmov)" I changed:
Quaterniond qtmp;  ----->to------>	Quaternionx qtmp;
Point3d tr;	   ----->to------>	Point3x tr;
2008-07-23 17:30:30 +00:00
Paolo Cignoni 6a4631b94b 1) in "ComputeWeightedRigidMatchMatrix" I changed:
std::vector<double> weights       ----->to------>     std::vector<ScalarType> weights
tmp.Trasp();		          ----->to------>     tmp.Transpose();
QQ.Zero();		          ----->to------>     QQ.SetZero();
RM.Zero();		          ----->to------>     RM.SetZero();
ccm.Trasp();		          ----->to------>     ccm.Transpose();
QQ.Jacobi(d,v,nrot);	          ----->to------>     Jacobi(QQ,d,v,nrot);
q.RotMatrix(Rot);	          ----->to------>     q.ToMatrix(Rot);
tr= (bfix - Rot.Apply(bmov));     ----->to------>     tr= (bfix - Rot *bmov);		
Trn.Translate(tr);	          ----->to------>     Trn.SetTranslate(tr);	


2) in "ComputeRigidMatchMatrix" I changed:
return ComputeRigidMatchMatrix(res,Pfix,Pmov,qtmp,tr); 	----->to------>	 return ComputeWeightedRigidMatchMatrix(res,Pfix,Pmov,weights,qtmp,tr);
2008-07-23 17:19:51 +00:00
Federico Ponchio 825483d177 Rationalized ToMatrix and FromMatrix (and improved algorithm). 2008-07-21 13:38:55 +00:00
Federico Ponchio 89973a1a14 Extrinsics in Shot use Matrix44 not Quaternion. therefore ToMatrix was correct.
Rolling back.... sigh.
2008-07-14 13:42:22 +00:00
Federico Ponchio 844be84004 GetCol3 -> GetColumn3 (this part needs to be tested!) 2008-07-14 13:28:27 +00:00
Paolo Cignoni a20902efd8 VERY IMPORTANT CHANGE - Could break the compilation of a lot of code around.
SetRotate of matrix44 has gone. Now only the explicit version SetRotateDeg and SetRotateRad are available. It was too error prone having something with the OpenGL syntax but using radiant instead the OpenGL degrees
2008-07-13 05:37:00 +00:00
ganovelli 3d21fcba1d removed dependency on qt 2008-06-23 14:20:52 +00:00
Paolo Cignoni 8a6dbded39 Corrected wrong license information in the header 2008-05-28 23:29:23 +00:00
Paolo Cignoni 45ed8cb000 Capital f in Factorial 2008-05-28 08:59:40 +00:00
Paolo Cignoni a152d0e208 First release 2008-05-28 08:55:04 +00:00
Paolo Cignoni 0a0436a13c Removed $Log$ macro 2008-05-28 08:54:33 +00:00
Paolo Cignoni 4ee18ed103 First release 2008-05-28 08:53:30 +00:00
Paolo Cignoni 2caf6034f3 Added SQRT_TWO 2008-05-28 08:51:32 +00:00
Paolo Cignoni 399277570b First release 2008-05-16 10:36:35 +00:00
Federico Ponchio 9cb9c1dace Fixed Axis. Due to quaternion changes. 2008-04-11 12:22:32 +00:00
ganovelli b457b0c978 removed printf 2008-03-17 11:36:37 +00:00
Paolo Cignoni 04d00284a5 added missing include limits 2008-03-06 10:45:39 +00:00
Paolo Cignoni 051c612aba Heavily refactored the whole structure.
Some interfaces have been changed. Be careful.
2008-03-05 11:21:49 +00:00
Paolo Cignoni d14283e619 added maxcount 2008-02-29 12:15:06 +00:00
Federico Ponchio 82635287c7 Returrned to s*r*t decomposition. 2008-02-24 18:03:03 +00:00
Federico Ponchio 6b3726ef90 Removed a Transpose due to change in quaternions.h ToMatrix 2008-02-22 18:10:39 +00:00
Federico Ponchio 8cc9a085a7 Changed to reflect quaternion toMatrix inversion. 2008-02-22 17:41:48 +00:00
Federico Ponchio 84760ee1f2 Fixed determinantt problem and quaternion problem. 2008-02-22 17:40:27 +00:00
Federico Ponchio 2b19c6c313 ToMatrix returned the inverse matrix. OUCH.
This affects trackball and shot.h
Added a const also.
2008-02-22 17:39:59 +00:00
Federico Ponchio e4c62fec6d refixed bug in FromMatrix 2008-02-21 11:34:08 +00:00
Federico Ponchio a32c8842ef fixed bug in FromMatrix 2008-02-21 10:57:59 +00:00
Paolo Cignoni 652f27f40f corrected bug in FromMatrix 2008-02-21 10:30:18 +00:00
ganovelli 7ddf584fac useless matrix multiplication removed 2008-01-03 17:42:03 +00:00
ganovelli a7e016e1ef added RandomRotation 2008-01-03 17:40:17 +00:00
Paolo Cignoni 224e50a2bd Added missing include guards 2007-12-02 10:06:47 +00:00
Marco Di Benedetto da56c33f36 Added missing #include <algorithm> 2007-11-24 20:41:00 +00:00
Paolo Cignoni 3f18e449dc added ComputeSimilarityMatchMatrix 2007-11-17 15:41:42 +00:00
Paolo Cignoni 68effd0f7a Added IsNAN 2007-07-24 07:09:17 +00:00
Paolo Cignoni 787cfbe93f first version, ported from the internal lib to the open one. 2007-07-13 14:23:56 +00:00
Paolo Cignoni c26a1aa94b added a static (unefficient!) identity member 2007-07-13 00:01:47 +00:00
Paolo Cignoni 4dd3dbdbfb added the missing static Construct() member 2007-07-12 06:42:01 +00:00
Massimiliano Corsini a522bf6595 add DCM to Euler Angles method (to implement) 2007-07-03 16:07:09 +00:00
Massimiliano Corsini c99138926d add DCM to Euler Angles conversion 2007-07-03 16:06:48 +00:00
Paolo Cignoni 7b85798562 added bestmachting normal 2007-05-29 14:01:24 +00:00
Paolo Cignoni 63dccc011a Moved here from shadevis 2007-05-22 21:21:27 +00:00
Nico Pietroni 85175e7dc4 added RotationMatrix method to calculate rotation matrix along an axis 2007-04-19 14:30:26 +00:00
Nico Pietroni ac5e8a2143 Added function RotationMatrix 2007-04-07 23:06:47 +00:00
Paolo Cignoni ae9d8a8535 Solved an issue related to different casting double-float between gcc 3 and gcc 4 2007-03-22 11:07:16 +00:00
Massimiliano Corsini 488287610f final fix to euler angles transformation 2007-03-08 14:39:27 +00:00
mtarini c2dcc2798f added a missing "Quaternion<S>::" in "FromEulerAngles" 2007-02-06 12:24:07 +00:00
Massimiliano Corsini 9659b702f8 fix euler angles computation 2007-02-06 09:57:40 +00:00
Massimiliano Corsini 8b60f2cc35 fix names 2007-02-06 08:54:07 +00:00
Massimiliano Corsini 961c1dfff0 add new ctor (build similarity from euler angles) 2007-02-05 14:17:48 +00:00
Massimiliano Corsini 0bb019d92e add extrinsic parameters accessors 2007-02-05 14:17:21 +00:00
Massimiliano Corsini 4b5533971a add from euler angles to rotation matrix conversion 2007-02-05 14:16:33 +00:00
Massimiliano Corsini fbf770bd7b add euler angle to quaternion conversion 2007-02-05 13:55:21 +00:00
Nico Pietroni 2d7c1bbdd2 -Used scalar type passed as template argument istead of double to prevent warnings.. in Rotate function 2007-01-29 00:20:25 +00:00
Nico Pietroni 09acf65187 -added some explicit CASTs in order to avoid warning if one use float instead of double as ScalarType 2007-01-29 00:18:20 +00:00
matteodelle cd277247cc *** empty log message *** 2007-01-10 17:25:18 +00:00
Nico Pietroni f8eeaae81f added explicit cast in function inline float Sqrt(const int v) in order to avoid warnings 2007-01-08 09:23:49 +00:00
Paolo Cignoni 01695ba1d5 Corrected a syntax error detected only by gcc.
Corrected the order of initialization in the constructor to match the declaration order
2006-12-21 00:13:27 +00:00
matteodelle 17ebec98c6 minor eroor correction on variable names 2006-12-18 16:02:57 +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 5af2209678 Re added typedef Histogramf and Histogramd 2006-11-28 21:29:21 +00:00
Massimiliano Corsini d179389424 add documentation
fix typo
2006-11-28 09:47:42 +00:00
Federico Ponchio 613dcafe3b just added an #include <matrix33> 2006-11-13 12:53:40 +00:00
Paolo Cignoni 642158fc32 many gcc compiling issues 2006-11-07 17:22:53 +00:00
Paolo Cignoni e2733d55df Necessary changes for compilation with gcc 3.4.6. Especially the hash function is a problem 2006-11-07 15:13:57 +00:00
Paolo Cignoni 06047a697d gcc compiling issues 2006-11-07 11:47:14 +00:00
Paolo Cignoni ebc0ac52c0 Added two sqrt templates for resolving ambiguity of sqrt(int) 2006-10-13 13:14:50 +00:00
Paolo Cignoni 605c4d2f04 Added a minimum method that uses SVD. Unfortunately it is much much slower. 2006-10-09 20:23:00 +00:00
Paolo Cignoni a927c50c8d Added missing typedef for gcc compiing 2006-09-29 08:36:10 +00:00
Paolo Cignoni 4e76390661 Removed some warnings 2006-09-28 22:49:49 +00:00
ganovelli d1eea25504 added constructor from matrix44 excluding a row and colum 2006-09-25 23:05:29 +00:00
Paolo Cignoni ac4efc84ef initial commit 2006-09-21 18:10:05 +00:00
Paolo Cignoni d8b56cedb1 Added SetIdentity method 2006-09-21 18:09:34 +00:00
Paolo Cignoni 8d63662955 Added const to declarations of the overloaded (operators *).
Otherwise the  * operator would always attempt to convert any type of data passed as an argument to Point3<TYPE>
2006-09-11 16:11:39 +00:00
Paolo Cignoni 6cc1fb0753 Copy constructor : faster memcpy instead of slow 'for' cycle
empty constructor
2006-08-23 15:24:45 +00:00
Paolo Cignoni 5905c197b6 added some typename directives 2006-07-28 12:39:05 +00:00
Paolo Cignoni 68b176d276 Changed the template argument in JacobiRotate and added method for sorting eigenvalues and eigenvectors (SortEigenvaluesAndEigenvectors) 2006-07-24 07:26:47 +00:00
ganovelli bd2e84521b toMatrix with matrix33 added 2006-06-22 08:00:26 +00:00
ganovelli 9587cc0350 bug in operator + with MatrixxDig 2006-06-22 08:00:05 +00:00
Paolo Cignoni 3d8bbcc87f added missing internal prototype to Sort function 2006-05-25 09:35:55 +00:00
Paolo Cignoni 1e8fb101d5 Added initial disclaimer 2006-05-17 09:26:35 +00:00
Paolo Cignoni 179d96b098 Added enum for the sorting strategy of the result in SVD. 2006-05-15 07:36:50 +00:00
Paolo Cignoni 4273322f65 minor change: removed unused vars 2006-05-04 00:09:53 +00:00
Paolo Cignoni 10c513dad8 Added some utility methods (swapping of columns and rows, matrix-vector multiplication) 2006-04-29 10:26:04 +00:00
Paolo Cignoni 26ce24dec3 Added method for sorting the singular values computed by the SingularValueDecomposition procedure 2006-04-29 10:20:52 +00:00
Paolo Cignoni 3ddd189349 changes necessary for gcc 3.4.5 on linux 64bit. Please take note of case-sensitivity of filenames 2006-04-11 08:09:35 +00:00
Paolo Cignoni 462fa9effe extra includes necessary for compilation of meshlab on AMD 64 with gcc 3.4.5 2006-03-29 09:25:49 +00:00
Paolo Cignoni 5a2ed7b59d Corrected intialization of flag, must be zero. 2006-01-22 17:01:40 +00:00
Nico Pietroni cf9fd0ca9f added operators:
operator -= ( const Matrix33Diag<S>  &p )
           Matrix33  operator - ( const Matrix33Diag<S>  &p )
           Matrix33  operator + ( const Matrix33 &m )
           Matrix33  operator + ( const Matrix33Diag<S>  &p )
2006-01-20 16:41:44 +00:00
Marco Callieri e7b6fd9b9f in FileWrite, added file closing after finishing 2006-01-12 13:12:54 +00:00
Marco Callieri abbcfe10a9 corrected UnProject, it's necessary also a ZDepth value to perform inverse projection 2005-12-12 16:53:43 +00:00
Marco Callieri f6261d2a45 Added Unproject, from 2D local space + Zdepth to 3D camera space. Added ViewportToLocal, inverse of LocalToViewport 2005-12-12 16:52:55 +00:00
ganovelli 7229c77576 added diagonal matrix, outer produce and namespace 2005-12-12 11:25:00 +00:00
ganovelli dca1252d91 missing type added 2005-12-12 11:24:09 +00:00
Marco Callieri 1257fd3a4a added commodity function ProjectWorldtoViewport() to obtain directly pixel indices without calling two separate function of two different objects 2005-12-07 10:57:52 +00:00
Marco Callieri ee3d9a28e3 in Shot<S>::Axis changed Row3 to GetRow3 . row3 was the old method name of Matrix44 2005-12-02 16:14:35 +00:00
Paolo Cignoni 2d58480432 Corrected bug in == and != Matrix44 operators 2005-12-02 09:46:49 +00:00
Paolo Cignoni 6d5c0cd0f7 Removed excess ';' from end of template functions, for gcc compiling 2005-12-01 01:03:37 +00:00
ganovelli 29208970f0 added access to similarity (just for symmetry with Camera() ) 2005-11-23 14:18:35 +00:00
ganovelli 63b79da781 Empty constructor added, untemplated class Shotf and Shotd added
usage: Shotf myShot;
corrected member access rights
2005-11-23 11:58:52 +00:00
ganovelli 43b85e9405 created 2005-11-18 14:46:23 +00:00
Paolo Cignoni 0f7d072b0f Changed Invert -> FastInvert for the function based on the maple expansion 2005-11-14 10:28:25 +00:00
Federico Ponchio cf9d5743fb Added newline at end of file (tired of stupid warnings...) 2005-10-24 09:20:28 +00:00
Federico Ponchio a06ae78c6e Changed a Zero in SetZero in WeightedCrossCovariance() (again) 2005-10-13 15:45:23 +00:00
Federico Ponchio 5008465972 Added IsOrtho... 2005-10-12 16:43:32 +00:00
Nico Pietroni 7580221931 corrected sintax error on singular value decomposition 2005-10-05 17:06:12 +00:00
Paolo Cignoni 5ef378ec5a add define header 2005-10-03 16:19:44 +00:00
ganovelli 44e86f5a9b added inverse by SVD 2005-09-29 09:53:58 +00:00
Paolo Cignoni f8aafdd20d removed signed/unsigned warning 2005-09-16 11:51:23 +00:00
Paolo Cignoni 2c5c27e3fd First working version 2005-07-28 06:34:03 +00:00
Paolo Cignoni 44eb40324f small gcc-related compiling issues (typenames,ending cr, initialization order) 2005-07-11 13:16:34 +00:00
Paolo Cignoni bd4e3b01b0 Removed default values from the implementation of SetCavalieri and SetIsometric 2005-07-01 10:55:42 +00:00
Paolo Cignoni 494f6ccff7 aggiunto:
- l' enum dei tipi  PERSPECTIVE,  ORTHO, ISOMETRIC,  CAVALIERI
- inline void SetCavalieri(...)
- inline void SetIsometric(...)

- modificato
- void SetOrtho( .. )
2005-06-29 14:59:03 +00:00
ganovelli 42831cd32b added Matrix44Diag 2005-06-28 17:42:47 +00:00
Paolo Cignoni 88792bfc33 Completed Shear Matrix code and comments,
Added use of swap inside Transpose
Added more complete comments on the usage of Decompose
2005-06-17 05:28:47 +00:00
Paolo Cignoni 8d51af2c92 Corrected small bug in SetRange (H was resized to n instead of n+1) 2005-06-17 00:54:55 +00:00
ganovelli ccbfc728cb added include of algorithm 2005-06-14 14:27:00 +00:00
Paolo Cignoni fe5d343fd0 Added Various missing functions: SetShearXY, SetShearXZ, SetShearYZ, SetScale for point3 and Decompose
Completed *=(scalar); made uniform GetRow and GetColumn
2005-06-10 15:04:12 +00:00
Paolo Cignoni c379550e2e Added include assert.h and cast to ScalarType for a pow in SetRange() function. 2005-06-10 14:59:39 +00:00
Paolo Cignoni bebc58f9b1 Changed a Zero in SetZero in WeightedCrossCovariance() 2005-06-10 14:51:54 +00:00
Nico Pietroni 47b654861c Added Norm Function 2005-06-10 11:46:49 +00:00
Paolo Cignoni 4ae07c24c1 Added typedef Histogramf and Histogramd 2005-06-09 14:19:55 +00:00
ganovelli b14537dcff changed from Matrix33Ide to MatrixeeDiag 2005-06-07 14:29:56 +00:00
Federico Ponchio 6c1fdb3066 Added fabs() to variance, which can sometime be negative in case
of rounding errors (and sqrt chokes on it).
2005-06-07 09:37:33 +00:00
Paolo Cignoni 17fb55c9e0 Added Percentile and removed small bug in Add 2005-06-07 07:44:08 +00:00
ganovelli 5aea057836 Matrix33Ide Added: it implements diagonal matrix. Added only operator += in Matrix33 2005-05-23 15:05:26 +00:00
ganovelli c3db21bd39 tolto il const a interpolate 2005-04-17 21:57:03 +00:00
Federico Ponchio 59c1559e59 Typo: Point3 -> Point4 2005-04-15 09:19:50 +00:00
Federico Ponchio f766cf6773 *** empty log message *** 2005-04-14 17:23:08 +00:00
Federico Ponchio 2328e5b1e4 *** empty log message *** 2005-04-14 11:35:09 +00:00
Nico Pietroni 9cb3c240e6 changed swap to math::Swap in Traspose Function 2005-04-11 14:11:22 +00:00
Paolo Cignoni 1363b8c4a8 Added missing functions Avg, rms etc, now fully (almost) functional 2005-04-04 10:48:35 +00:00
Paolo Cignoni 825c3b9a0c minor changes to comply gcc compiler 2005-03-30 17:18:13 +00:00
Paolo Cignoni f8fb041641 minor bugs fixed 2005-03-18 16:31:02 +00:00
Paolo Cignoni 4c1f6e73b6 removed small gcc compiling issues 2005-03-18 00:14:40 +00:00
Paolo Cignoni 27694f7a67 Added operator*=( std::vector<PointType> ...) to apply a matrix to a vector of vertexes (replacement of the old style mesh.Apply(tr). 2005-03-15 11:40:56 +00:00
Paolo Cignoni c272706c18 Added missing include<vector> 2005-03-14 09:23:40 +00:00
Paolo Cignoni b01f11a93e Corrected declaration and some syntax errors in GetFrustum 2005-02-22 10:57:58 +00:00
ganovelli 31ac4bbe6f GetFrustum moved from gl/camera to math/camera.h 2005-02-21 18:11:47 +00:00
Paolo Cignoni 5d6d76694c Added matrix-vector multiplication 2005-02-16 11:11:12 +00:00
Paolo Cignoni 2fe93647ab added principal point 2005-02-15 14:55:52 +00:00
Federico Ponchio 40e7925c1c <...Point3.h> -> <...point3.h> 2005-01-22 11:20:20 +00:00
Paolo Cignoni b0978eb3d1 *** empty log message *** 2005-01-18 16:40:50 +00:00
Federico Ponchio 3cf27b9f2b Far and end are reserved. 2005-01-18 15:14:22 +00:00
Federico Ponchio fa6da0bbf3 vcg/Point.h -> vcg/point.h (again!) 2005-01-14 15:28:33 +00:00
ganovelli c3627e348e corretto cambiamento di sistema di rif. 2005-01-05 13:26:15 +00:00
ganovelli c2fb300d85 aggiunte conversione di coordinate 2005-01-05 13:25:29 +00:00
Paolo Cignoni 4a7a4ce0b3 *** empty log message *** 2004-12-16 11:22:30 +00:00
Paolo Cignoni 1b08ca6ab1 *** empty log message *** 2004-12-16 11:21:03 +00:00
Paolo Cignoni 02aee67598 *** empty log message *** 2004-12-15 18:45:50 +00:00
Paolo Cignoni 71a73a7ad6 added an alternative QuadricMinimization (we should use LRU decomposition!!) 2004-12-10 01:31:59 +00:00
Paolo Cignoni 1380ee7712 added an inline and removed loggng 2004-12-10 01:03:15 +00:00
Federico Ponchio d02c45b27f _near and _far are reserved keywords 2004-12-04 15:51:22 +00:00
Federico Ponchio a53f846189 #include <...Point --> #include <...point
Again... Gano malefico.
2004-11-30 21:48:47 +00:00
Paolo Cignoni 1d72b1f687 removed comment in comment gcc warning 2004-11-23 10:15:38 +00:00
ganovelli e70b193cf0 Point?.h to point?.h 2004-11-03 09:40:53 +00:00
ganovelli d0c1352cf3 SetPerspective and SetFrustum added (same parameters as in opengl) 2004-11-03 09:32:50 +00:00
ganovelli 92f008a33d replaced Matrix44f to Matrix44<S>, added LookAt 2004-11-03 09:25:52 +00:00
Federico Ponchio 8de360b0ac typedef ScalarType ScalarType; was a problem on g++ 2004-10-25 16:23:51 +00:00
ganovelli 5f84e02239 template changed 2004-10-25 16:15:59 +00:00
Federico Ponchio 1a66972c51 return in operator+ added. 2004-10-22 14:41:30 +00:00
Federico Ponchio 942705dd10 m.element(x, y) -> m[x][y] 2004-10-22 14:35:42 +00:00
Federico Ponchio 29b2d65bb3 #include <...Point --> #include <...point 2004-10-22 14:29:40 +00:00
Paolo Cignoni 13190dfe88 Updated interface: all Matrix classes have now the same interface 2004-10-18 15:03:14 +00:00
Paolo Cignoni 77dc6537fa bug fixed in SingularValueBacksubstitution 2004-10-18 12:18:10 +00:00
Paolo Cignoni 1422c15f6f - Added SetDiagonal method
- Bug fixed in RowsNumber and ColumnsNumber
2004-10-18 12:16:57 +00:00
Paolo Cignoni 7767e4a63b Added SingularValueDecomposition method 2004-10-18 08:25:28 +00:00
Paolo Cignoni d403de71f8 Little fix on Jacobi() function 2004-10-15 14:17:53 +00:00