本文整理汇总了C++中Appearance::setTextureReference方法的典型用法代码示例。如果您正苦于以下问题:C++ Appearance::setTextureReference方法的具体用法?C++ Appearance::setTextureReference怎么用?C++ Appearance::setTextureReference使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Appearance
的用法示例。
在下文中一共展示了Appearance::setTextureReference方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: pontoAux
//.........这里部分代码省略.........
appearanceElement->Attribute("specular") != NULL
){
id = appearanceElement->Attribute("id");
ap->setIdS(id);
emissiveS = appearanceElement->Attribute("emissive");
float Aemissive[4];
sscanf_s(emissiveS.c_str(),"%f %f %f %f", &Aemissive[0], &Aemissive[1], &Aemissive[2], &Aemissive[3]);
ap->setEmissive(Aemissive);
ambientS = appearanceElement->Attribute("ambient");
float Aambient[4];
sscanf_s(ambientS.c_str(),"%f %f %f %f", &Aambient[0], &Aambient[1], &Aambient[2], &Aambient[3]);
ap->setAmbient(Aambient);
diffuseS = appearanceElement->Attribute("diffuse");
float Adiffuse[4];
sscanf_s(diffuseS.c_str(),"%f %f %f %f", &Adiffuse[0], &Adiffuse[1], &Adiffuse[2], &Adiffuse[3]);
ap->setDiffuse(Adiffuse);
specularS = appearanceElement->Attribute("specular");
float Aspecular[4];
sscanf_s(specularS.c_str(),"%f %f %f %f", &Aspecular[0], &Aspecular[1], &Aspecular[2], &Aspecular[3]);
ap->setSpecular(Aspecular);
if(appearanceElement->Attribute("textureref") != NULL)
{
if(appearanceElement->QueryFloatAttribute("texlength_s",&texlength_s)==TIXML_SUCCESS &&
appearanceElement->QueryFloatAttribute("texlength_t",&texlength_t)==TIXML_SUCCESS)
{
textureref = appearanceElement->Attribute("textureref");
ap->setTextureReference(textureref);
//ap->setTexture(textureref);
ap->setTextureWrap(texlength_s,texlength_t);
ap->setShininess(shininess);
int itTexturesComp = 0;
std::vector<Texture*>::iterator it = scene->texturesComp.begin();
for(it; it != scene->texturesComp.end(); it++){
if(textureref == scene->texturesComp.at(itTexturesComp)->getTId()){
ap->setTexture((*it));
}
itTexturesComp++;
}
}
}
//printf("\tApearance attributes:\n");
//printf("\t\tId: %s \n\t\tEmissive: %s \n\t\tAmbient: %s\n", id.c_str(), emissiveS.c_str(), ambientS.c_str());
//printf("\t\tDiffuse: %s \n\t\tSpecular: %s \n\t\tTextureRef: %s \n\t\tShininess: %f\n", diffuseS.c_str(), specularS.c_str(), textureref.c_str(), shininess);
if(textureref.length()==0){}
//printf("\t\tTexLength S: %f \n\t\tTexLength T: %f\n", texlength_s, texlength_t);
scene->appearancesComp.push_back(ap);
}
else
printf("Error parsing Appearance Element\n");
appearanceElement = appearanceElement->NextSiblingElement();
}