C++ 机身和琴弦的问题Chrono引擎
我已经在这个函数上工作了一段时间了。它是Chrono引擎程序的一部分。它应该接收一个字符串,并为每个字母在世界上创建一个新的实体,添加纹理,设置方向,并使其可碰撞。在向世界添加实体方面,我将问题归结为代码字母[I]+“.obj”。我还尝试创建一个字符串,将其设置为所需的字符串,并附加所需的文件扩展名。我的输出代码是。此外,当我尝试添加纹理时,无法找到该纹理 无效组合字母(ChIrrApp&application,标准::字符串字母){C++ 机身和琴弦的问题Chrono引擎,c++,C++,我已经在这个函数上工作了一段时间了。它是Chrono引擎程序的一部分。它应该接收一个字符串,并为每个字母在世界上创建一个新的实体,添加纹理,设置方向,并使其可碰撞。在向世界添加实体方面,我将问题归结为代码字母[I]+“.obj”。我还尝试创建一个字符串,将其设置为所需的字符串,并附加所需的文件扩展名。我的输出代码是。此外,当我尝试添加纹理时,无法找到该纹理 无效组合字母(ChIrrApp&application,标准::字符串字母){ for(int i=0;iSetFilename(GetCh
for(int i=0;iSetFilename(GetChronoDataFile(str.append(“.obj”));
lettertexture->SetFilename(GetChronoDataFile(“RedTexture.png”);
你忘了告诉我们问题出在哪里了吗?但是你真的想写字母[i]+“.obj”
?我想是字母[i]
是一个字符
,因此您所追求的连接语义不存在,我不明白您为什么不继续使用流插入操作符我尝试使用“字母[I]+”.obj““。如果您查看输出代码,它与应该打印的内容根本不对应。是的,我可以看到这是您在程序中编写的内容,但我想问这是否是意外,因为它不正确。请使用流插入运算符
for (int i = 0; i < letters.length(); i++) {
ChSharedPtr<ChBody> letterBody(new ChBody());
ChSharedPtr<ChObjShapeFile> lettermesh(new ChObjShapeFile);
ChSharedPtr<ChObjShapeFile> lettertexture(new ChObjShapeFile);
std::string str;
str = letters;
lettermesh->SetFilename(GetChronoDataFile(str.append(".obj")));
lettertexture->SetFilename(GetChronoDataFile("RedTexture.png"));
std::cout << "NNNNNNNNNNNNN" << std::endl;
std::cout << letters[i] + ".obj" << std::endl;
std::cout << "NNNNNNNNNNNNN" << std::endl;
std::cout << "AAAAAAAA" << std::endl;
std::cout << letters << std::endl;
std::cout << "AAAAAAAA" << std::endl;
letterBody->AddAsset(lettermesh);
letterBody->SetBodyFixed(true);
letterBody->RecomputeCollisionModel();
letterBody->SetCollide(true);
letterBody->SetPos(ChVector<>( 0, .5, 0));
letterBody->SetRot(Q_from_AngAxis(90, ChVector<>((3.1415926/2), 0, 0)));
letterBody->AddAsset(lettertexture);
application.GetSystem()->Add(letterBody);
application.AssetBind(letterBody);
application.AssetUpdate(letterBody);
letterlist.push_back(letterBody);
};