RobotsIO
Loading...
Searching...
No Matches
SpatialVelocity.h
1/*
2 * Copyright (C) 2019 Istituto Italiano di Tecnologia (IIT)
3 *
4 * This software may be modified and distributed under the terms of the
5 * BSD 3-Clause license. See the accompanying LICENSE file for details.
6 */
7
8#ifndef ROBOTSIO_SPATIALVELOCITY_H
9#define ROBOTSIO_SPATIALVELOCITY_H
10
11#include <Eigen/Dense>
12
13#include <RobotsIO/Utils/DataStream.h>
14
15namespace RobotsIO {
16 namespace Utils {
17 class SpatialVelocity;
18 }
19}
20
21
23{
24public:
25 virtual ~SpatialVelocity();
26
27 virtual Eigen::Vector3d angular_velocity();
28
29 virtual Eigen::Vector3d linear_velocity_origin();
30
31 virtual Eigen::Vector3d linear_velocity_screw();
32
33 virtual Eigen::Vector3d screw_position();
34
35 virtual double elapsed_time() = 0;
36
37 bool is_screw_degenerate();
38
39protected:
40 virtual Eigen::VectorXd twist() = 0;
41};
42
43#endif /* ROBOTSIO_SPATIALVELOCITY_H */