52 lines
865 B
Protocol Buffer
52 lines
865 B
Protocol Buffer
|
|
syntax = "proto3";
|
|||
|
|
|
|||
|
|
package cmvr.msgs;
|
|||
|
|
|
|||
|
|
|
|||
|
|
message Vec2 {
|
|||
|
|
double x = 1;
|
|||
|
|
double y = 2;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
message Vec3 {
|
|||
|
|
double x = 1;
|
|||
|
|
double y = 2;
|
|||
|
|
double z = 3;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ===== 四元数 =====
|
|||
|
|
message Quat {
|
|||
|
|
double w = 1;
|
|||
|
|
double x = 2;
|
|||
|
|
double y = 3;
|
|||
|
|
double z = 4;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ===== 位置(3D)=====
|
|||
|
|
message Position {
|
|||
|
|
double x = 1; // unit: m
|
|||
|
|
double y = 2;
|
|||
|
|
double z = 3;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ===== 欧拉角 =====
|
|||
|
|
message Euler {
|
|||
|
|
double rx = 1; // unit: rad (roll)
|
|||
|
|
double ry = 2; // unit: rad (pitch)
|
|||
|
|
double rz = 3; // unit: rad (yaw)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ===== 位姿(3D)=====
|
|||
|
|
message Pose3d {
|
|||
|
|
Position position = 1; // (m)
|
|||
|
|
Quat quaternion = 2; // 四元数
|
|||
|
|
Euler euler = 3; // 欧拉角 (rad)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ===== 位姿(2D)=====
|
|||
|
|
message Pose2d {
|
|||
|
|
double x = 1; // (m)
|
|||
|
|
double y = 2; // (m)
|
|||
|
|
double theta = 3; // (rad)
|
|||
|
|
}
|