OndselSolver can read and write *.asmt files

This commit is contained in:
Aik-Siong Koh
2023-10-19 10:51:51 -06:00
parent 95cd91c9d1
commit 4360daddf3
61 changed files with 1383 additions and 107 deletions

View File

@@ -5,7 +5,8 @@
* *
* See LICENSE file for details about copyright. *
***************************************************************************/
#include <fstream>
#include "ASMTTranslationalMotion.h"
#include "ASMTAssembly.h"
#include "SymbolicParser.h"
@@ -22,21 +23,6 @@ void MbD::ASMTTranslationalMotion::parseASMT(std::vector<std::string>& lines)
readName(lines);
readMotionJoint(lines);
readTranslationZ(lines);
//size_t pos = lines[0].find_first_not_of("\t");
//auto leadingTabs = lines[0].substr(0, pos);
//assert(lines[0] == (leadingTabs + "Name"));
//lines.erase(lines.begin());
//name = lines[0];
//lines.erase(lines.begin());
//assert(lines[0] == (leadingTabs + "MotionJoint"));
//lines.erase(lines.begin());
//motionJoint = lines[0];
//lines.erase(lines.begin());
//assert(lines[0] == (leadingTabs + "TranslationZ"));
//lines.erase(lines.begin());
//translationZ = lines[0];
//lines.erase(lines.begin());
}
void MbD::ASMTTranslationalMotion::initMarkers()
@@ -81,3 +67,17 @@ void MbD::ASMTTranslationalMotion::readTranslationZ(std::vector<std::string>& li
translationZ = readString(lines[0]);
lines.erase(lines.begin());
}
void MbD::ASMTTranslationalMotion::storeOnLevel(std::ofstream& os, int level)
{
storeOnLevelString(os, level, "TranslationalMotion");
storeOnLevelString(os, level + 1, "Name");
storeOnLevelString(os, level + 2, name);
ASMTItemIJ::storeOnLevel(os, level);
}
void MbD::ASMTTranslationalMotion::storeOnTimeSeries(std::ofstream& os)
{
os << "TranslationalMotionSeries\t" << fullName("") << std::endl;
ASMTItemIJ::storeOnTimeSeries(os);
}