syntax = "proto3";

package device.proto.model.common;
option csharp_namespace = "Al.Proto.Model.Common";

//import "google/protobuf/struct.proto";

//平面2d点
message Point2d {
  double x = 1;
  double y = 2;
}

//平面2d位姿
message Pose2d {
  double x = 1;//平移x
  double y = 2;//平移y
  double yaw = 3;//角度
}

//平面2d直线
message Line2d {
  repeated Point2d points = 1;
}

//平面多边形
message Polygon2d {
  repeated Point2d vertex = 1;
}

message Quaternion {
  double x = 1;
  double y = 2;
  double z = 3;
  double w = 4;
}

message Rotation {
  double roll = 1;
  double pitch = 2;
  double yaw = 3;
}

message EulerPose {
  option deprecated = true;
  double x = 1;
  double y = 2;
  double z = 3;
  double roll = 4;
  double pitch = 5;
  double yaw = 6;
}

message Vector3d {
  double x = 1;
  double y = 2;
  double z = 3;
}

message Pose {
  double x = 1;
  double y = 2;
  double z = 3;
  double roll = 4;
  double pitch = 5;
  double yaw = 6;
}