0

我正在使用 Abaqus ODB C++ API。我正在编写一个包装器来可视化 .odb 文件。

以下代码会将名为“PART-1”的部分加载到对象中part

odb_Odb& odb = openOdb( filename.c_str() );
odb_PartRepository& pr = odb.parts();
odb_Part& part = pr["PART-1"];

如果您知道零件的名称是什么,则此代码很棒,但是当我不知道零件的名称时如何访问零件?为什么 API 的作者会限制我们通过字符串进行索引?

4

1 回答 1

1

经过大量搜索,我找到了以下解决方案。

请参阅10.10.5 Reading results data本文档的部分: http ://abaqus.ethz.ch:2080/v6.11/pdf_books/SCRIPT_USER.pdf

您必须使用存储库迭代器来提取可能的密钥。

// for example:
odb_StepRepositoryIT stepIter( odb.steps() );
for (stepIter.first(); !stepIter.isDone(); stepIter.next())
{
    cout << stepIter.currentKey().CStr() << endl;
}
于 2012-08-09T20:25:58.723 回答