z1_controller/include/trajectory/EndCircleTraj.h

32 lines
940 B
C++
Executable File

#ifndef ENDCIRCLETRAJ_H
#define ENDCIRCLETRAJ_H
#include "model/ArmDynKineModel.h"
#include "trajectory/EndHomoTraj.h"
class EndCircleTraj: public EndHomoTraj{
public:
EndCircleTraj(CtrlComponents *ctrlComp);
EndCircleTraj(ArmDynKineModel *armModel);
~EndCircleTraj(){}
void setEndRoundTraj(HomoMat startHomo, Vec3 axisPointFromInit,
Vec3 axisDirection, double maxSpeed, double angle,
bool keepOrientation = true);
void setEndRoundTraj(std::string stateName, Vec3 axisPointFromInit,
Vec3 axisDirection, double maxSpeed, double angle,
bool keepOrientation = true);
private:
bool _getEndTraj(HomoMat &homo, Vec6 &twist);
Vec3 _center;
double _radius;
HomoMat _centerHomo;
HomoMat _initHomoToCenter;
RotMat _initOri;
double _maxSpeed, _goalAngle, _speed, _angle;
Vec3 _omegaAxis;
bool _keepOrientation;
};
#endif // ENDCIRCLETRAJ_H