You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					50 lines
				
				770 B
			
		
		
			
		
	
	
					50 lines
				
				770 B
			| 
											1 year ago
										 | using Cxx = import "./include/c++.capnp";
 | ||
|  | $Cxx.namespace("cereal");
 | ||
|  | 
 | ||
|  | @0xa086df597ef5d7a0;
 | ||
|  | 
 | ||
|  | # Geometry
 | ||
|  | struct Point {
 | ||
|  |   x @0: Float64;
 | ||
|  |   y @1: Float64;
 | ||
|  |   z @2: Float64;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | struct PolyLine {
 | ||
|  |   points @0: List(Point);
 | ||
|  | }
 | ||
|  | 
 | ||
|  | # Map features
 | ||
|  | struct Lane {
 | ||
|  |   id @0 :Text;
 | ||
|  | 
 | ||
|  |   leftBoundary @1 :LaneBoundary;
 | ||
|  |   rightBoundary @2 :LaneBoundary;
 | ||
|  | 
 | ||
|  |   leftAdjacentId @3 :Text;
 | ||
|  |   rightAdjacentId @4 :Text;
 | ||
|  | 
 | ||
|  |   inboundIds @5 :List(Text);
 | ||
|  |   outboundIds @6 :List(Text);
 | ||
|  | 
 | ||
|  |   struct LaneBoundary {
 | ||
|  |     polyLine @0 :PolyLine;
 | ||
|  |     startHeading @1 :Float32; # WRT north
 | ||
|  |   }
 | ||
|  | }
 | ||
|  | 
 | ||
|  | # Map tiles
 | ||
|  | struct TileSummary {
 | ||
|  |   version @0 :Text;
 | ||
|  |   updatedAt @1 :UInt64; # Millis since epoch
 | ||
|  | 
 | ||
|  |   level @2 :UInt8;
 | ||
|  |   x @3 :UInt16;
 | ||
|  |   y @4 :UInt16;
 | ||
|  | }
 | ||
|  | 
 | ||
|  | struct MapTile {
 | ||
|  |   summary @0 :TileSummary;
 | ||
|  |   lanes @1 :List(Lane);
 | ||
|  | }
 |