40 lines
1.3 KiB
C++
40 lines
1.3 KiB
C++
/***************************************************************************
|
|
* Copyright (c) 2023 Ondsel, Inc. *
|
|
* *
|
|
* This file is part of OndselSolver. *
|
|
* *
|
|
* See LICENSE file for details about copyright. *
|
|
***************************************************************************/
|
|
|
|
#include "MBDynAxialRotationJoint.h"
|
|
#include "ASMTAssembly.h"
|
|
#include "ASMTRevoluteJoint.h"
|
|
#include "ASMTRotationalMotion.h"
|
|
|
|
using namespace MbD;
|
|
|
|
void MbD::MBDynAxialRotationJoint::parseMBDyn(std::string line)
|
|
{
|
|
MBDynJoint::parseMBDyn(line);
|
|
readFunction(arguments);
|
|
}
|
|
|
|
void MbD::MBDynAxialRotationJoint::createASMT()
|
|
{
|
|
MBDynJoint::createASMT();
|
|
auto asmtAsm = asmtAssembly();
|
|
asmtMotion = ASMTRotationalMotion::With();
|
|
asmtMotion->setName(name + "Motion");
|
|
asmtMotion->setMotionJoint(asmtItem->fullName(""));
|
|
asmtMotion->setRotationZ(asmtFormulaIntegral());
|
|
asmtAsm->addMotion(asmtMotion);
|
|
return;
|
|
}
|
|
|
|
std::shared_ptr<ASMTJoint> MbD::MBDynAxialRotationJoint::asmtClassNew()
|
|
{
|
|
auto joint = ASMTRevoluteJoint::With();
|
|
joint->initialize();
|
|
return joint;
|
|
}
|