|
@@ -35,7 +35,7 @@ IGL_INLINE bool igl::read_triangle_mesh(
|
|
pathinfo(str,d,b,e,f);
|
|
pathinfo(str,d,b,e,f);
|
|
// Convert extension to lower case
|
|
// Convert extension to lower case
|
|
std::transform(e.begin(), e.end(), e.begin(), ::tolower);
|
|
std::transform(e.begin(), e.end(), e.begin(), ::tolower);
|
|
- vector<vector<Scalar> > TC, N;
|
|
|
|
|
|
+ vector<vector<Scalar> > TC, N, C;
|
|
vector<vector<Index> > FTC, FN;
|
|
vector<vector<Index> > FTC, FN;
|
|
if(e == "obj")
|
|
if(e == "obj")
|
|
{
|
|
{
|
|
@@ -49,7 +49,7 @@ IGL_INLINE bool igl::read_triangle_mesh(
|
|
return success;
|
|
return success;
|
|
}else if(e == "off")
|
|
}else if(e == "off")
|
|
{
|
|
{
|
|
- return readOFF(str,V,F,N);
|
|
|
|
|
|
+ return readOFF(str,V,F,N,C);
|
|
}
|
|
}
|
|
cerr<<"Error: "<<__FUNCTION__<<": "<<
|
|
cerr<<"Error: "<<__FUNCTION__<<": "<<
|
|
str<<" is not a recognized mesh file format."<<endl;
|
|
str<<" is not a recognized mesh file format."<<endl;
|
|
@@ -85,7 +85,7 @@ IGL_INLINE bool igl::read_triangle_mesh(
|
|
pathinfo(filename,dir,base,ext,name);
|
|
pathinfo(filename,dir,base,ext,name);
|
|
// Convert extension to lower case
|
|
// Convert extension to lower case
|
|
transform(ext.begin(), ext.end(), ext.begin(), ::tolower);
|
|
transform(ext.begin(), ext.end(), ext.begin(), ::tolower);
|
|
- vector<vector<double > > vV,vN,vTC;
|
|
|
|
|
|
+ vector<vector<double > > vV,vN,vTC,vC;
|
|
vector<vector<int > > vF,vFTC,vFN;
|
|
vector<vector<int > > vF,vFTC,vFN;
|
|
if(ext == "mesh")
|
|
if(ext == "mesh")
|
|
{
|
|
{
|
|
@@ -113,7 +113,7 @@ IGL_INLINE bool igl::read_triangle_mesh(
|
|
}
|
|
}
|
|
}else if(ext == "off")
|
|
}else if(ext == "off")
|
|
{
|
|
{
|
|
- if(!readOFF(filename,vV,vF,vN))
|
|
|
|
|
|
+ if(!readOFF(filename,vV,vF,vN,vC))
|
|
{
|
|
{
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
@@ -163,5 +163,4 @@ template bool igl::read_triangle_mesh<Eigen::Matrix<double, -1, 3, 0, -1, 3>, Ei
|
|
template bool igl::read_triangle_mesh<Eigen::Matrix<float, -1, 3, 1, -1, 3>, Eigen::Matrix<unsigned int, -1, 3, 1, -1, 3> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 3, 1, -1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<unsigned int, -1, 3, 1, -1, 3> >&);
|
|
template bool igl::read_triangle_mesh<Eigen::Matrix<float, -1, 3, 1, -1, 3>, Eigen::Matrix<unsigned int, -1, 3, 1, -1, 3> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 3, 1, -1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<unsigned int, -1, 3, 1, -1, 3> >&);
|
|
template bool igl::read_triangle_mesh<Eigen::Matrix<double, -1, 3, 1, -1, 3>, Eigen::Matrix<int, -1, 3, 1, -1, 3> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 3, 1, -1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, 3, 1, -1, 3> >&);
|
|
template bool igl::read_triangle_mesh<Eigen::Matrix<double, -1, 3, 1, -1, 3>, Eigen::Matrix<int, -1, 3, 1, -1, 3> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 3, 1, -1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, 3, 1, -1, 3> >&);
|
|
template bool igl::read_triangle_mesh<Eigen::Matrix<double, -1, 3, 1, -1, 3>, Eigen::Matrix<int, -1, 3, 1, -1, 3> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 3, 1, -1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, 3, 1, -1, 3> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&);
|
|
template bool igl::read_triangle_mesh<Eigen::Matrix<double, -1, 3, 1, -1, 3>, Eigen::Matrix<int, -1, 3, 1, -1, 3> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 3, 1, -1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, 3, 1, -1, 3> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&);
|
|
-template bool igl::read_triangle_mesh<Eigen::Matrix<double, -1, -1, 1, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, -1, 1, -1, -1> >&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> >&);
|
|
|
|
#endif
|
|
#endif
|