colors for sdf

This commit is contained in:
Erwin Coumans 2016-06-17 12:07:38 -07:00
parent c7365837cd
commit 26f6618f00
2 changed files with 45 additions and 23 deletions

View File

@ -32,6 +32,12 @@
<uri>meshes/link_0.stl</uri>
</mesh>
</geometry>
<material>
<ambient>1 0 0 1</ambient>
<diffuse>0 0 1 1</diffuse>
<specular>0.1 0.1 0.1 1</specular>
<emissive>0 0 0 0</emissive>
</material>
</visual>
</link>
<link name='lbr_iiwa_link_1'>

View File

@ -490,7 +490,22 @@ bool UrdfParser::parseVisual(UrdfModel& model, UrdfVisual& visual, TiXmlElement*
// Material
TiXmlElement *mat = config->FirstChildElement("material");
//todo(erwincoumans) skip materials in SDF for now (due to complexity)
if (mat && !m_parseSDF)
if (mat)
{
if (m_parseSDF)
{
UrdfMaterial* matPtr = new UrdfMaterial;
matPtr->m_name = "mat";
std::string diffuseText = mat->FirstChildElement("diffuse")->GetText();
btVector4 rgba(1,0,0,1);
parseVector4(rgba,diffuseText);
matPtr->m_rgbaColor = rgba;
matPtr->m_textureFilename = "textureTest.png";
model.m_materials.insert(matPtr->m_name.c_str(),matPtr);
visual.m_materialName = "mat";
visual.m_hasLocalMaterial = true;
}
else
{
// get material name
if (!mat->Attribute("name"))
@ -514,6 +529,7 @@ bool UrdfParser::parseVisual(UrdfModel& model, UrdfVisual& visual, TiXmlElement*
}
}
}
}
return true;
}