hpp-bezier-com-traj
4.9.0
Multi contact trajectory generation for the COM using Bezier curves
|
Go to the documentation of this file.
6 #ifndef BEZIER_COM_TRAJ_LIB_UTILS_H
7 #define BEZIER_COM_TRAJ_LIB_UTILS_H
13 #include <Eigen/Dense>
21 waypoint_t
initwp(
const size_t rows,
const size_t cols);
22 waypoint_t
operator+(
const waypoint_t&
w1,
const waypoint_t&
w2);
23 waypoint_t
operator-(
const waypoint_t&
w1,
const waypoint_t&
w2);
24 waypoint_t
operator*(
const double k,
const waypoint_t& w);
25 waypoint_t
operator*(
const waypoint_t& w,
const double k);
63 template <
typename Bezier,
typename Po
int>
65 const std::vector<Point>& pi,
const Point& x);
91 void printQHullFile(
const std::pair<MatrixXX, VectorX>& Ab,
VectorX intPoint,
const std::string& fileName,
106 template <
typename Bezier,
typename Po
int>
109 std::vector<Point> wps;
112 wps.push_back(pi[i]);
115 wps.push_back(pi[i]);
118 wps.push_back(pi[i]);
130 assert(flag &
END_VEL &&
"You cannot constrain final acceleration if final velocity is not constrained.");
131 wps.push_back(pi[i]);
135 assert(flag &
END_POS &&
"You cannot constrain final velocity if final position is not constrained.");
136 wps.push_back(pi[i]);
140 wps.push_back(pi[i]);
144 return Bezier(wps.begin(), wps.end(), 0.,T);
size_t size() const
Definition: utils.hh:37
bool operator!=(const waypoint_t &other) const
Definition: utils.hh:45
INIT_ACC
Definition: flags.hh:22
BEZIER_COM_TRAJ_DLLAPI std::vector< curves::Bern< double > > ComputeBersteinPolynoms(const unsigned int degree)
Compute the Bernstein polynoms for a given degree.
Definition: utils.cpp:67
#define BEZIER_COM_TRAJ_DLLAPI
Definition: local_config.hh:52
BEZIER_COM_TRAJ_DLLAPI Bezier computeBezierCurve(const ConstraintFlag &flag, const double T, const std::vector< Point > &pi, const Point &x)
given the constraints of the problem, and a set of waypoints, return the bezier curve corresponding
double value_type
Definition: definitions.hh:15
waypoint_t operator+(const waypoint_t &w1, const waypoint_t &w2)
Definition: utils.cpp:16
waypoint6_t w1(point_t_tC p0, point_t_tC p1, point_t_tC, const Matrix3 &, const Matrix3 &, const Matrix3 &gX, const double alpha)
Definition: solve_0_step.cpp:22
centroidal_dynamics::VectorX VectorX
Definition: definitions.hh:23
T_time computeDiscretizedTime(const VectorX &phaseTimings, const double timeStep)
computeDiscretizedTime build an array of discretized points in time, given the timestep....
Definition: utils.cpp:90
std::vector< std::pair< double, int > > T_time
Definition: definitions.hh:58
END_POS
Definition: flags.hh:23
void printQHullFile(const std::pair< MatrixXX, VectorX > &Ab, VectorX intPoint, const std::string &fileName, bool clipZ=false)
write a polytope describe by A x <= b linear constraints in a given filename
Definition: utils.cpp:108
VectorX second
Definition: utils.hh:29
waypoint_t(MatrixXX A, VectorX b)
Definition: utils.hh:33
bool isApprox(const waypoint_t &other, const value_type prec=Eigen::NumTraits< value_type >::dummy_precision()) const
Definition: utils.hh:39
MatrixXX first
Definition: utils.hh:28
const typedef Eigen::Ref< const point_t > & point_t_tC
Definition: definitions.hh:42
Eigen::Matrix< value_type, 3, 3 > Matrix3
Definition: definitions.hh:16
bool operator==(const waypoint_t &other) const
Definition: utils.hh:43
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > MatrixXX
Definition: definitions.hh:20
INIT_VEL
Definition: flags.hh:21
int Normalize(Ref_matrixXX A, Ref_vectorX b)
normalize inequality constraints
Definition: common_solve_methods.cpp:72
Eigen::Ref< MatrixXX > Ref_matrixXX
Definition: definitions.hh:28
waypoint6_t w2(point_t_tC p0, point_t_tC p1, point_t_tC g, const Matrix3 &, const Matrix3 &, const Matrix3 &gX, const double alpha)
Definition: solve_0_step.cpp:32
waypoint_t operator*(const double k, const waypoint_t &w)
Definition: utils.cpp:28
END_ACC
Definition: flags.hh:25
BEZIER_COM_TRAJ_DLLAPI Matrix3 skew(point_t_tC x)
skew symmetric matrix
Definition: utils.cpp:56
waypoint_t operator-(const waypoint_t &w1, const waypoint_t &w2)
Definition: utils.cpp:22
static waypoint_t Zero(size_t dim)
Definition: utils.hh:35
Definition: common_solve_methods.hh:16
waypoint_t()
Definition: utils.hh:31
END_VEL
Definition: flags.hh:24
INIT_POS
Definition: flags.hh:20
T_time computeDiscretizedTimeFixed(const VectorX &phaseTimings, const unsigned int pointsPerPhase)
computeDiscretizedTime build an array of discretized points in time, such that there is the same numb...
Definition: utils.cpp:73
Eigen::Ref< VectorX > Ref_vectorX
Definition: definitions.hh:26