Skip to content

Instantly share code, notes, and snippets.

@mxgrey
Created August 8, 2022 02:40
Show Gist options
  • Save mxgrey/75a44a101c3b4acc9ee6beac3b8cd387 to your computer and use it in GitHub Desktop.
Save mxgrey/75a44a101c3b4acc9ee6beac3b8cd387 to your computer and use it in GitHub Desktop.
Serialization of the office demo in the .site.ron format
Site(
format_version: "0.1",
name: "building",
levels: {
179: Level(
name: "L1",
anchors: {
0: (-12.637225, -1.7334456),
1: (-8.400034, 6.576098),
2: (-11.126515, -5.1358128),
3: (8.900636, -6.8148165),
4: (10.465466, -4.484359),
5: (11.667634, 3.8233476),
6: (-2.7366936, 2.231826),
7: (2.1733866, 2.3085911),
8: (4.7320232, 2.3398626),
9: (4.73629, 0.85426146),
10: (4.0956635, 0.82236344),
11: (2.8888648, 0.8039425),
12: (2.194889, 0.7947321),
13: (0.76271343, 4.3841867),
14: (10.366614, 4.061245),
15: (9.833068, 0.9114289),
16: (6.1122546, 0.8271888),
17: (6.135653, -2.9310677),
18: (6.1309714, -3.820317),
19: (6.1450157, -4.597238),
20: (9.17783, -4.330465),
21: (9.463321, -1.7376022),
22: (0.39296603, -5.0605884),
23: (-2.5275111, -5.0091014),
24: (-5.42928, -4.5644765),
25: (-8.31333, -3.749918),
26: (-11.039109, -2.5821538),
27: (-6.784072, 5.7999053),
28: (-4.8293214, 5.00116),
29: (-3.1936357, 4.573297),
30: (-1.5044646, 4.334858),
31: (-1.132313, 4.3437724),
32: (-4.824598, 3.9173653),
33: (-5.800373, 2.0037656),
34: (-4.9791017, 1.5890664),
35: (-5.060413, 1.4508333),
36: (-8.127665, 3.1713266),
37: (-5.417716, 0.6394156),
38: (-7.7640715, -3.8958464),
39: (-6.4188285, 4.918097),
40: (-3.0688965, 3.8514106),
41: (-3.2306044, -0.035970014),
42: (-2.8836968, 1.3683709),
44: (3.5390742, 0.062102746),
45: (3.5295842, 1.5393994),
47: (5.422774, 0.06948466),
48: (5.4776726, -3.4289403),
49: (6.5789485, 3.5363164),
51: (-0.18618387, 2.9786603),
52: (-4.4048953, 0.7621145),
53: (7.6314974, -0.5538805),
55: (-5.4021053, -0.9754029),
56: (-7.970266, 1.9666529),
58: (1.8404387, -4.283625),
59: (-1.7633817, -4.372504),
60: (5.4970922, -4.135513),
61: (-5.3284473, -3.836791),
62: (-3.94025, -4.199419),
63: (-7.0527163, 3.4277804),
65: (5.412268, 3.0474849),
66: (-1.7508613, -0.053341206),
67: (1.9818548, 0.014628251),
68: (-1.7429883, -2.306822),
69: (1.8499539, -2.2995079),
70: (-6.7994456, 1.7105378),
71: (3.7507453, -4.1544166),
72: (7.5769033, -3.3649073),
73: (7.1069417, 1.6313685),
213: (0.74239504, 6.478187),
214: (0.7821871, 4.5836053),
},
doors: {
75: Door(anchors: (31, 13), name: "main_door", kind: DoubleSwing(Forward(Deg(90.0)))),
76: Door(anchors: (35, 37), name: "coe_door", kind: SingleSwing(pivot: Right, swing: Forward(Deg(90.0)))),
77: Door(anchors: (18, 17), name: "hardware_door", kind: SingleSwing(pivot: Right, swing: Forward(Deg(90.0)))),
},
drawings: {
78: Drawing(source: Filename("office.png"), pose: Pose(trans: (0.0, 0.0, 0.0), rot: Yaw(Deg(0.0)))),
},
elevation: 0.0,
fiducials: {},
floors: {
79: Floor(anchors: [27, 28, 29, 30, 31, 13, 14, 15, 21, 20, 19, 22, 23, 24, 38, 25, 26, 36], texture: Some(Texture(source: Filename("blue_linoleum"), rotation: Some(Deg(0.0)), scale: Some(1.0)))),
},
measurements: {
80: Measurement(anchors: (1, 0), distance: 9.315, label: "<anonymous>"),
81: Measurement(anchors: (5, 4), distance: 8.409, label: "<anonymous>"),
82: Measurement(anchors: (2, 3), distance: 20.089, label: "<anonymous>"),
},
models: {
83: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-6.7546377, 0.22181277, 0.0), rot: Yaw(Deg(243.52425))), is_static: true),
84: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-7.077681, -0.54003096, 0.0), rot: Yaw(Deg(242.01164))), is_static: true),
85: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-7.558301, -1.3169771, 0.0), rot: Yaw(Deg(243.33517))), is_static: true),
86: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-7.9208694, -2.082258, 0.0), rot: Yaw(Deg(243.26642))), is_static: true),
87: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-9.444591, -1.3213623, 0.0), rot: Yaw(Deg(62.601368))), is_static: true),
88: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-9.054738, -0.54634625, 0.0), rot: Yaw(Deg(64.24576))), is_static: true),
89: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-8.664072, 0.1910915, 0.0), rot: Yaw(Deg(60.80801))), is_static: true),
90: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-8.304128, 0.88462716, 0.0), rot: Yaw(Deg(61.75912))), is_static: true),
91: Model(name: "Fridge", kind: "OpenRobotics/Fridge", pose: Pose(trans: (2.6713948, 1.1926273, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
92: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (0.9390074, 1.3965272, 0.0), rot: Yaw(Deg(0.95110995))), is_static: true),
93: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (-1.5282949, 0.96372026, 0.0), rot: Yaw(Deg(181.12915))), is_static: true),
94: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (-4.9213753, 2.5892816, 0.0), rot: Yaw(Deg(62.968063))), is_static: true),
95: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (0.9281292, 1.0019844, 0.0), rot: Yaw(Deg(181.02028))), is_static: true),
96: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (-3.0908391, -1.5831493, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
97: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (-3.1334543, -2.9469151, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
98: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (0.49399325, -2.8876398, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
99: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (-3.9252574, -1.5984972, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
100: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (-3.9468277, -2.946712, 0.0), rot: Yaw(Deg(270.00064))), is_static: true),
101: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (-0.37270412, -2.8839402, 0.0), rot: Yaw(Deg(270.00064))), is_static: true),
102: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (-0.3615974, -1.5283437, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
103: Model(name: "SmallCubicle", kind: "OpenRobotics/SmallCubicle", pose: Pose(trans: (0.49399325, -1.5172285, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
104: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (-6.5825596, -2.7318747, 0.0), rot: Yaw(Deg(62.326347))), is_static: true),
105: Model(name: "Drawer", kind: "OpenRobotics/Drawer", pose: Pose(trans: (-7.2055354, -3.620921, 0.0), rot: Yaw(Deg(63.621235))), is_static: true),
106: Model(name: "BigCubicle", kind: "OpenRobotics/BigCubicle", pose: Pose(trans: (4.0029407, -1.3992109, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
107: Model(name: "BigCubicle", kind: "OpenRobotics/BigCubicle", pose: Pose(trans: (4.0335774, -2.7722297, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
108: Model(name: "BigCubicle", kind: "OpenRobotics/BigCubicle", pose: Pose(trans: (3.1638749, -2.7865617, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
109: Model(name: "BigCubicle", kind: "OpenRobotics/BigCubicle", pose: Pose(trans: (3.168658, -1.4390157, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
110: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (8.758085, -3.376776, 0.0), rot: Yaw(Deg(264.0648))), is_static: true),
111: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (9.066018, -0.64161694, 0.0), rot: Yaw(Deg(262.50635))), is_static: true),
112: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (6.626855, -1.7011075, 0.0), rot: Yaw(Deg(90.89403))), is_static: true),
113: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (6.616349, -0.25033328, 0.0), rot: Yaw(Deg(90.14345))), is_static: true),
114: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (-5.8417187, 3.0747354, 0.0), rot: Yaw(Deg(242.28093))), is_static: true),
115: Model(name: "AdjTable", kind: "OpenRobotics/AdjTable", pose: Pose(trans: (-0.31027955, 1.3777338, 0.0), rot: Yaw(Deg(91.180504))), is_static: true),
116: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (8.225106, 2.9903004, 0.0), rot: Yaw(Deg(0.0))), is_static: true),
117: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (9.102496, 2.9903004, 0.0), rot: Yaw(Deg(0.0))), is_static: true),
118: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (9.379994, 2.4434633, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
119: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (9.065764, 1.9088674, 0.0), rot: Yaw(Deg(180.00043))), is_static: true),
120: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (8.167973, 1.9170282, 0.0), rot: Yaw(Deg(180.00043))), is_static: true),
121: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (7.6374574, 2.4353027, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
122: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (0.88886625, -1.5746076, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
123: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (8.676605, -0.57389295, 0.0), rot: Yaw(Deg(81.30271))), is_static: true),
124: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (8.414666, -3.349314, 0.0), rot: Yaw(Deg(83.64611))), is_static: true),
125: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (-4.4487805, -1.4312528, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
126: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (-4.463113, -2.8409271, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
127: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (-2.613817, -1.5602754, 0.0), rot: Yaw(Deg(270.00064))), is_static: true),
128: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (-2.6185915, -2.926945, 0.0), rot: Yaw(Deg(270.00064))), is_static: true),
129: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (-0.86008805, -1.5268283, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
130: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (0.9939908, -2.8887148, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
131: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (2.7051382, -2.8295748, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
132: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (2.7242532, -1.491578, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
133: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (4.48754, -1.6014855, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
134: Model(name: "OfficeChairBlue", kind: "OpenRobotics/OfficeChairBlue", pose: Pose(trans: (4.5162125, -2.7817872, 0.0), rot: Yaw(Deg(-90.00021))), is_static: true),
135: Model(name: "OfficeChairBlack", kind: "OpenRobotics/OfficeChairBlack", pose: Pose(trans: (-0.92220783, -2.7692497, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
136: Model(name: "OfficeChairGrey", kind: "OpenRobotics/OfficeChairGrey", pose: Pose(trans: (-1.4738618, 1.3788258, 0.0), rot: Yaw(Deg(0.9167325))), is_static: true),
137: Model(name: "Drawer", kind: "OpenRobotics/Drawer", pose: Pose(trans: (4.6274066, -0.98868525, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
138: Model(name: "Drawer", kind: "OpenRobotics/Drawer", pose: Pose(trans: (8.908966, -2.3238208, 0.0), rot: Yaw(Deg(264.8039))), is_static: true),
139: Model(name: "ConfTable", kind: "OpenRobotics/ConfTable", pose: Pose(trans: (-8.068144, -0.43844503, 0.0), rot: Yaw(Deg(63.12276))), is_static: true),
140: Model(name: "RecTable", kind: "OpenRobotics/RecTable", pose: Pose(trans: (8.559739, 2.4761147, 0.0), rot: Yaw(Deg(0.0))), is_static: true),
141: Model(name: "WhiteCabinet", kind: "OpenRobotics/WhiteCabinet", pose: Pose(trans: (1.7512293, 4.0293555, 0.0), rot: Yaw(Deg(-1.6730368))), is_static: true),
142: Model(name: "SquareShelf", kind: "OpenRobotics/SquareShelf", pose: Pose(trans: (-5.3679047, 3.9626133, 0.0), rot: Yaw(Deg(152.63596))), is_static: true),
143: Model(name: "coke_dispenser", kind: "OpenRobotics/TeleportDispenser", pose: Pose(trans: (4.3876386, 1.6540475, 0.0), rot: Yaw(Deg(90.00021))), is_static: true),
144: Model(name: "Coke", kind: "OpenRobotics/Coke", pose: Pose(trans: (4.3876386, 1.6519312, 0.0), rot: Yaw(Deg(90.00021))), is_static: false),
145: Model(name: "coke_ingestor", kind: "OpenRobotics/TeleportIngestor", pose: Pose(trans: (9.225905, -0.66697955, 0.805), rot: Yaw(Deg(90.00021))), is_static: true),
},
physical_cameras: {
146: PhysicalCamera(name: "camera1", pose: Pose(trans: (0.0, 2.4, 2.0), rot: EulerExternalXYZ(Deg(0.0), Deg(17.188734), Deg(89.95438))), image: ImageProperties(width: 640, height: 480), horizontal_fov: 2.0, frame_rate: 30.0),
147: PhysicalCamera(name: "camera2", pose: Pose(trans: (-7.5, -3.8, 2.0), rot: EulerExternalXYZ(Deg(0.0), Deg(17.188734), Deg(22.918312))), image: ImageProperties(width: 1600, height: 1280), horizontal_fov: 2.0, frame_rate: 30.0),
},
walls: {
148: Wall(anchors: (6, 7), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
149: Wall(anchors: (7, 12), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
150: Wall(anchors: (12, 11), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
151: Wall(anchors: (7, 8), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
152: Wall(anchors: (8, 9), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
153: Wall(anchors: (9, 10), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
154: Wall(anchors: (14, 13), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
155: Wall(anchors: (14, 15), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
156: Wall(anchors: (15, 16), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
157: Wall(anchors: (16, 17), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
158: Wall(anchors: (20, 21), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
159: Wall(anchors: (15, 21), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
160: Wall(anchors: (18, 19), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
161: Wall(anchors: (19, 20), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
162: Wall(anchors: (22, 19), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
163: Wall(anchors: (24, 23), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
164: Wall(anchors: (23, 22), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
165: Wall(anchors: (26, 25), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
166: Wall(anchors: (31, 30), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
167: Wall(anchors: (30, 29), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
168: Wall(anchors: (29, 28), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
169: Wall(anchors: (28, 27), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
170: Wall(anchors: (35, 34), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
171: Wall(anchors: (34, 33), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
172: Wall(anchors: (33, 32), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
173: Wall(anchors: (36, 33), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
174: Wall(anchors: (27, 36), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
175: Wall(anchors: (26, 36), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
176: Wall(anchors: (25, 38), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
177: Wall(anchors: (38, 24), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
178: Wall(anchors: (37, 38), texture: Some(Texture(source: Filename("default"), alpha: Some(1.0), offset: Some((0.0, 2.0))))),
},
),
},
lifts: {
215: Lift(
name: "main_lift",
anchors: (213, 214),
cabin: Params(
width: 1.895,
depth: 1.895,
door: LiftCabinDoor(width: 1.42125, kind: DoubleSliding(left_right_ratio: 1.0)),
),
level_doors: {},
is_static: false,
),
},
nav_graphs: {
212: NavGraph(
name: "0",
lanes: {
180: Lane(anchors: (39, 40), forward: Motion(), reverse: Same),
181: Lane(anchors: (44, 47), forward: Motion(), reverse: Same),
182: Lane(anchors: (44, 45), forward: Motion(), reverse: Same),
183: Lane(anchors: (51, 40), forward: Motion(), reverse: Same),
184: Lane(anchors: (40, 52), forward: Motion(), reverse: Same),
185: Lane(anchors: (52, 41), forward: Motion(), reverse: Same),
186: Lane(anchors: (52, 55), forward: Motion(), reverse: Same),
187: Lane(anchors: (60, 48), forward: Motion(), reverse: Same),
188: Lane(anchors: (55, 61), forward: Motion(), reverse: Same),
189: Lane(anchors: (61, 62), forward: Motion(), reverse: Same),
190: Lane(anchors: (39, 63), forward: Motion(), reverse: Same),
191: Lane(anchors: (65, 51), forward: Motion(), reverse: Same),
192: Lane(anchors: (65, 49), forward: Motion(), reverse: Same),
193: Lane(anchors: (41, 42), forward: Motion(), reverse: Same),
194: Lane(anchors: (41, 66), forward: Motion(), reverse: Same),
195: Lane(anchors: (66, 67), forward: Motion(), reverse: Same),
196: Lane(anchors: (67, 44), forward: Motion(), reverse: Same),
197: Lane(anchors: (59, 68), forward: Motion(), reverse: Same),
198: Lane(anchors: (68, 66), forward: Motion(), reverse: Same),
199: Lane(anchors: (58, 69), forward: Motion(), reverse: Same),
200: Lane(anchors: (69, 67), forward: Motion(), reverse: Same),
201: Lane(anchors: (52, 70), forward: Motion(), reverse: Same),
202: Lane(anchors: (70, 56), forward: Motion(), reverse: Same),
203: Lane(anchors: (47, 48), forward: Motion(), reverse: Same),
204: Lane(anchors: (60, 71), forward: Motion(), reverse: Same),
205: Lane(anchors: (48, 72), forward: Motion(), reverse: Same),
206: Lane(anchors: (72, 53), forward: Motion(), reverse: Same),
207: Lane(anchors: (62, 59), forward: Motion(), reverse: Same),
208: Lane(anchors: (59, 58), forward: Motion(), reverse: Same),
209: Lane(anchors: (58, 71), forward: Motion(), reverse: Same),
210: Lane(anchors: (65, 73), forward: Motion(), reverse: Same),
211: Lane(anchors: (65, 47), forward: Motion(), reverse: Same),
},
locations: {
43: Location(anchor: 42, tags: [Charger, ParkingSpot, HoldingPoint, SpawnRobot(Model(name: "tinyRobot1", kind: "TinyRobot", pose: Pose(trans: (0.0, 0.0, 0.0), rot: Yaw(Deg(0.0))), is_static: false))]),
46: Location(anchor: 45, tags: [HoldingPoint]),
50: Location(anchor: 49, tags: [HoldingPoint]),
54: Location(anchor: 53, tags: [HoldingPoint]),
57: Location(anchor: 56, tags: [HoldingPoint]),
64: Location(anchor: 63, tags: [ParkingSpot]),
74: Location(anchor: 73, tags: [Charger, ParkingSpot, HoldingPoint, SpawnRobot(Model(name: "tinyRobot2", kind: "TinyRobot", pose: Pose(trans: (0.0, 0.0, 0.0), rot: Yaw(Deg(0.0))), is_static: false))]),
},
),
},
agents: {},
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment