68 lines
1013 B
Protocol Buffer
68 lines
1013 B
Protocol Buffer
|
|
syntax = "proto3";
|
||
|
|
|
||
|
|
package cmvr.api;
|
||
|
|
|
||
|
|
|
||
|
|
message Vec2 {
|
||
|
|
double x = 1;
|
||
|
|
double y = 2;
|
||
|
|
}
|
||
|
|
|
||
|
|
message Vec3 {
|
||
|
|
double x = 1;
|
||
|
|
double y = 2;
|
||
|
|
double z = 3;
|
||
|
|
}
|
||
|
|
|
||
|
|
message SE2Pose {
|
||
|
|
Vec2 position = 1; // (m)
|
||
|
|
double angle = 2; // (rad)
|
||
|
|
}
|
||
|
|
|
||
|
|
message SE2Velocity {
|
||
|
|
Vec2 linear = 1; // (m/s)
|
||
|
|
double angular = 2; // (rad/s)
|
||
|
|
}
|
||
|
|
|
||
|
|
message Quaternion {
|
||
|
|
double x = 1;
|
||
|
|
double y = 2;
|
||
|
|
double z = 3;
|
||
|
|
double w = 4;
|
||
|
|
}
|
||
|
|
|
||
|
|
message EulerAngleZYX {
|
||
|
|
double z = 1;
|
||
|
|
double y = 2;
|
||
|
|
double x = 3;
|
||
|
|
}
|
||
|
|
|
||
|
|
message SE3Pose {
|
||
|
|
Vec3 position = 1; // (m)
|
||
|
|
oneof rotation {
|
||
|
|
Quaternion quaternion = 2;
|
||
|
|
EulerAngleZYX euler = 3;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
message Inertial {
|
||
|
|
// Mass (kg)
|
||
|
|
double mass = 1;
|
||
|
|
|
||
|
|
// Center of mass (m)
|
||
|
|
Vec3 center_of_mass = 2;
|
||
|
|
|
||
|
|
// Inertia tensor
|
||
|
|
Inertia inertia = 3;
|
||
|
|
}
|
||
|
|
|
||
|
|
// Inertia tensor components (kg*m^2)
|
||
|
|
message Inertia {
|
||
|
|
double ixx = 1;
|
||
|
|
double iyy = 2;
|
||
|
|
double izz = 3;
|
||
|
|
double ixy = 4;
|
||
|
|
double ixz = 5;
|
||
|
|
double iyz = 6;
|
||
|
|
}
|