Bug fixed in the loading of the per-vertex and per-face color alpha value

This commit is contained in:
Gianpaolo Palma 2016-10-28 15:00:24 +02:00
parent 9f2f60850d
commit 16de4693b2
1 changed files with 6 additions and 1 deletions

View File

@ -469,12 +469,14 @@ static int Open( OpenMeshType &m, const char * filename, PlyInfo &pi )
{
pf.AddToRead(VertDesc(6));
pf.AddToRead(VertDesc(7));
pf.AddToRead(VertDesc(8));
pi.mask |= Mask::IOM_VERTCOLOR;
}
if( pf.AddToRead(VertDesc(9))!=-1 )
{
pf.AddToRead(VertDesc(10));
pf.AddToRead(VertDesc(11));
pf.AddToRead(VertDesc(12));
pi.mask |= Mask::IOM_VERTCOLOR;
}
if( pf.AddToRead(VertDesc(21))!=-1 )
@ -518,6 +520,7 @@ static int Open( OpenMeshType &m, const char * filename, PlyInfo &pi )
{
pf.AddToRead(FaceDesc(7));
pf.AddToRead(FaceDesc(8));
pf.AddToRead(FaceDesc(9));
pi.mask |= Mask::IOM_FACECOLOR;
}
}
@ -646,6 +649,7 @@ static int Open( OpenMeshType &m, const char * filename, PlyInfo &pi )
for(j=0;j<n;++j)
{
if(pi.cb && (j%1000)==0) pi.cb(j*50/n,"Vertex Loading");
va.a = 255;
if( pf.Read( (void *)&(va) )==-1 )
{
pi.status = PlyInfo::E_SHORTFILE;
@ -737,6 +741,7 @@ static int Open( OpenMeshType &m, const char * filename, PlyInfo &pi )
int k;
if(pi.cb && (j%1000)==0) pi.cb(50+j*50/n,"Face Loading");
fa.a = 255;
if( pf.Read(&fa)==-1 )
{
pi.status = PlyInfo::E_SHORTFILE;
@ -768,7 +773,7 @@ static int Open( OpenMeshType &m, const char * filename, PlyInfo &pi )
(*fi).C()[0] = fa.r;
(*fi).C()[1] = fa.g;
(*fi).C()[2] = fa.b;
(*fi).C()[3] = 255;
(*fi).C()[3] = fa.a;
}
if( pi.mask & Mask::IOM_WEDGTEXCOORD )