blob: 4a74b4a265a22e03cc3d43ca7f0931e105b40c48 [file] [log] [blame]
John Park91e69732019-03-03 13:12:43 -08001import argparse
2
3arg_parser = argparse.ArgumentParser(description='spline_editor')
James Kuszmaul1c933e02020-03-07 16:17:51 -08004arg_parser.add_argument('size',
5 metavar='N',
6 default=800,
7 type=int,
8 nargs='?',
9 help="size of the screen")
John Park91e69732019-03-03 13:12:43 -080010args = arg_parser.parse_args()
11SCREEN_SIZE = args.size
12
John Park91e69732019-03-03 13:12:43 -080013WIDTH_OF_ROBOT = 0.65
14LENGTH_OF_ROBOT = 0.8
15
James Kuszmaul1c933e02020-03-07 16:17:51 -080016ROBOT_SIDE_TO_BALL_CENTER = 0.15 # Placeholder value
John Park91e69732019-03-03 13:12:43 -080017BALL_RADIUS = 0.165
James Kuszmaul1c933e02020-03-07 16:17:51 -080018ROBOT_SIDE_TO_HATCH_PANEL = 0.1 # Placeholder value
John Park91e69732019-03-03 13:12:43 -080019HATCH_PANEL_WIDTH = 0.4826
20
John Parkcf545162020-02-23 20:07:25 -080021FIELD = 2020
22
23if FIELD == 2019:
James Kuszmaul1c933e02020-03-07 16:17:51 -080024 WIDTH_OF_FIELD_IN_METERS = 8.258302 # Half Field
John Parkcf545162020-02-23 20:07:25 -080025elif FIELD == 2020:
James Kuszmaul1c933e02020-03-07 16:17:51 -080026 WIDTH_OF_FIELD_IN_METERS = 15.98295 # Full Field
27 LENGTH_OF_FIELD_IN_METERS = 8.21055 # Full Field
John Parkcf545162020-02-23 20:07:25 -080028
James Kuszmaul1c933e02020-03-07 16:17:51 -080029
30def pxToM(p):
John Park91e69732019-03-03 13:12:43 -080031 return p * WIDTH_OF_FIELD_IN_METERS / SCREEN_SIZE
32
James Kuszmaul1c933e02020-03-07 16:17:51 -080033
34def mToPx(m):
35 return (m * SCREEN_SIZE / WIDTH_OF_FIELD_IN_METERS)
36
John Parkcf545162020-02-23 20:07:25 -080037
38def inToM(i):
James Kuszmaul1c933e02020-03-07 16:17:51 -080039 return (i * 0.0254)