C++ 机身和琴弦的问题Chrono引擎

C++ 机身和琴弦的问题Chrono引擎,c++,C++,我已经在这个函数上工作了一段时间了。它是Chrono引擎程序的一部分。它应该接收一个字符串,并为每个字母在世界上创建一个新的实体,添加纹理,设置方向,并使其可碰撞。在向世界添加实体方面,我将问题归结为代码字母[I]+“.obj”。我还尝试创建一个字符串,将其设置为所需的字符串,并附加所需的文件扩展名。我的输出代码是。此外,当我尝试添加纹理时,无法找到该纹理 无效组合字母(ChIrrApp&application,标准::字符串字母){ for(int i=0;iSetFilename(GetCh

我已经在这个函数上工作了一段时间了。它是Chrono引擎程序的一部分。它应该接收一个字符串,并为每个字母在世界上创建一个新的实体,添加纹理,设置方向,并使其可碰撞。在向世界添加实体方面,我将问题归结为代码字母[I]+“.obj”。我还尝试创建一个字符串,将其设置为所需的字符串,并附加所需的文件扩展名。我的输出代码是。此外,当我尝试添加纹理时,无法找到该纹理

无效组合字母(ChIrrApp&application,标准::字符串字母){

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);


};