one more fix gcc 4.0.1 issue in wrap/gl/math
This commit is contained in:
parent
0d9795d163
commit
3d43483497
|
@ -74,8 +74,11 @@ Revision 1.1 2004/03/31 15:27:17 ponchio
|
|||
|
||||
namespace vcg {
|
||||
|
||||
inline void glLoadMatrix(const Eigen::Matrix<float,4,4>& matrix) { glLoadMatrixf(matrix.data()); }
|
||||
inline void glLoadMatrix(const Eigen::Matrix<float,4,4,Eigen::RowMajor>& matrix) {
|
||||
template<typename T,int StorageOrder>
|
||||
inline void glLoadMatrix(const Eigen::Matrix<T,4,4,StorageOrder>& matrix) { assert(0); }
|
||||
|
||||
template<> inline void glLoadMatrix(const Eigen::Matrix<float,4,4>& matrix) { glLoadMatrixf(matrix.data()); }
|
||||
template<> inline void glLoadMatrix(const Eigen::Matrix<float,4,4,Eigen::RowMajor>& matrix) {
|
||||
Eigen::Matrix4f tmp(matrix);
|
||||
glLoadMatrixf(tmp.data());
|
||||
}
|
||||
|
@ -88,13 +91,16 @@ template<typename Scalar>
|
|||
inline void glLoadMatrix(const Eigen::Transform<Scalar,3>& t) { glLoadMatrix(t.matrix()); }
|
||||
|
||||
|
||||
inline void glMultMatrix(const Eigen::Matrix<float,4,4>& matrix) { glMultMatrixf(matrix.data()); }
|
||||
template<typename T,int StorageOrder>
|
||||
inline void glMultMatrix(const Eigen::Matrix<T,4,4,StorageOrder>& matrix) { assert(0); }
|
||||
|
||||
template<> inline void glMultMatrix(const Eigen::Matrix<float,4,4>& matrix) { glMultMatrixf(matrix.data()); }
|
||||
inline void glMultMatrix(const Eigen::Matrix<float,4,4,Eigen::RowMajor>& matrix) {
|
||||
Eigen::Matrix<float,4,4> tmp(matrix);
|
||||
glMultMatrixf(tmp.data());
|
||||
}
|
||||
inline void glMultMatrix(const Eigen::Matrix<double,4,4>& matrix) { glMultMatrixd(matrix.data()); }
|
||||
inline void glMultMatrix(const Eigen::Matrix<double,4,4,Eigen::RowMajor>& matrix) {
|
||||
template<> inline void glMultMatrix(const Eigen::Matrix<double,4,4>& matrix) { glMultMatrixd(matrix.data()); }
|
||||
template<> inline void glMultMatrix(const Eigen::Matrix<double,4,4,Eigen::RowMajor>& matrix) {
|
||||
Eigen::Matrix<double,4,4> tmp(matrix);
|
||||
glMultMatrixd(tmp.data());
|
||||
}
|
||||
|
|
|
@ -123,10 +123,10 @@ _WRAP_EIGEN_XPR(glScale)
|
|||
template<> inline void glScale(const Eigen::Matrix<double,2,1> & p){ glScaled(p[0],p[1],1.0);}
|
||||
|
||||
template<typename T> inline void glVertex(const Eigen::Matrix<T,3,1> & p) { assert(0); }
|
||||
inline void glVertex(const Eigen::Matrix<int,3,1> & p) { glVertex3iv((const GLint*)p.data());}
|
||||
inline void glVertex(const Eigen::Matrix<short,3,1> & p) { glVertex3sv(p.data());}
|
||||
inline void glVertex(const Eigen::Matrix<float,3,1> & p) { glVertex3fv(p.data());}
|
||||
inline void glVertex(const Eigen::Matrix<double,3,1> & p){ glVertex3dv(p.data());}
|
||||
template<> inline void glVertex(const Eigen::Matrix<int,3,1> & p) { glVertex3iv((const GLint*)p.data());}
|
||||
template<> inline void glVertex(const Eigen::Matrix<short,3,1> & p) { glVertex3sv(p.data());}
|
||||
template<> inline void glVertex(const Eigen::Matrix<float,3,1> & p) { glVertex3fv(p.data());}
|
||||
template<> inline void glVertex(const Eigen::Matrix<double,3,1> & p){ glVertex3dv(p.data());}
|
||||
|
||||
template<typename T> inline void glNormal(const Eigen::Matrix<T,3,1> & p) { assert(0); }
|
||||
template<> inline void glNormal(const Eigen::Matrix<int,3,1> & p) { glNormal3iv((const GLint*)p.data());}
|
||||
|
@ -320,14 +320,6 @@ template <class TetraType>
|
|||
glTriangle3(Triangle3<typename TetraType::ScalarType>(c.P(1),c.P(0),c.P(3)));
|
||||
}
|
||||
|
||||
#ifdef VCG_USE_EIGEN
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
}//namespace
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue