blob: 9cfdc138d7bbd534613fb612ecde894b4ec85849 [file] [log] [blame]
milind-u18a901d2023-02-17 21:51:55 -08001import numpy as np
Maxwell Hendersonf5123fe2023-02-04 13:44:41 -08002
milind-u18a901d2023-02-17 21:51:55 -08003from y2023.control_loops.python.graph_tools import *
Maxwell Hendersonf5123fe2023-02-04 13:44:41 -08004
Austin Schuh9a11ebd2023-02-26 14:16:31 -08005named_segments = []
6points = {}
Maxwell Hendersonf5123fe2023-02-04 13:44:41 -08007
Austin Schuh9a11ebd2023-02-26 14:16:31 -08008points['Neutral'] = np.array((np.pi, 0.0, 0.0))
9
10points['GroundPickupBackConeUp'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080011 -1.07774334, 0.36308701, np.pi / 2.0, circular_index=1)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -080012
Austin Schuh9a11ebd2023-02-26 14:16:31 -080013named_segments.append(
14 ThetaSplineSegment(
15 name="NeutralToGroundPickupBackConeUp",
16 start=points['Neutral'],
17 control1=np.array([3.170156, -0.561227]),
18 control2=np.array([2.972776, -1.026820]),
19 end=points['GroundPickupBackConeUp'],
20 control_alpha_rolls=[(0.30, 0.0), (.95, np.pi / 2.0)],
21 ))
22
23points['GroundPickupBackConeDown'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080024 -1.11487594, 0.23140145, np.pi / 2.0, circular_index=1)
25
Austin Schuh9a11ebd2023-02-26 14:16:31 -080026named_segments.append(
27 ThetaSplineSegment(
28 name="NeutralToGroundPickupBackConeDown",
29 start=points['Neutral'],
30 control1=np.array([3.170156, -0.561227]),
31 control2=np.array([2.972776, -1.026820]),
32 end=points['GroundPickupBackConeDown'],
33 control_alpha_rolls=[(0.30, 0.0), (.95, np.pi / 2.0)],
34 ))
35
36points['GroundPickupBackCube'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080037 -1.102, 0.224, -np.pi / 2.0, circular_index=1)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -080038
Austin Schuh9a11ebd2023-02-26 14:16:31 -080039named_segments.append(
40 ThetaSplineSegment(
41 name="NeutralToGroundPickupBackCube",
42 start=points['Neutral'],
43 control1=np.array([3.153228, -0.497009]),
44 control2=np.array([2.972776, -1.026820]),
45 end=points['GroundPickupBackCube'],
46 control_alpha_rolls=[(0.7, 0.0), (.9, -np.pi / 2.0)],
47 ))
48
49points['ScoreBackMidConeUpPos'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080050 -1.41871454, 1.07476162, np.pi / 2.0, circular_index=0)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -080051
Austin Schuh9a11ebd2023-02-26 14:16:31 -080052named_segments.append(
53 ThetaSplineSegment(
54 name="NeutralToBackMidConeUpScore",
55 start=points['Neutral'],
56 control1=np.array([0.994244, -1.417442]),
57 control2=np.array([1.711325, -0.679748]),
58 end=points['ScoreBackMidConeUpPos'],
59 control_alpha_rolls=[(0.40, 0.0), (.95, np.pi / 2.0)],
60 ))
61
62points['ScoreBackMidConeDownPos'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080063 -1.37792406, 0.81332449, np.pi / 2.0, circular_index=1)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -080064
Austin Schuh9a11ebd2023-02-26 14:16:31 -080065named_segments.append(
66 ThetaSplineSegment(
67 name="NeutralToMidConeDownScore",
68 start=points['Neutral'],
69 control1=np.array([3.394572, -0.239378]),
70 control2=np.array([3.654854, -0.626835]),
71 end=points['ScoreBackMidConeDownPos'],
72 control_alpha_rolls=[(0.40, 0.0), (.95, np.pi / 2.0)],
73 ))
74
75points['HPPickupBackConeUp'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080076 -1.1050539, 1.31390128, np.pi / 2.0, circular_index=0)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -080077
Austin Schuh9a11ebd2023-02-26 14:16:31 -080078named_segments.append(
79 ThetaSplineSegment(
80 name="NeutralToHPPickupBackConeUp",
81 start=points['Neutral'],
82 control1=np.array([2.0, -0.239378]),
83 control2=np.array([1.6, -0.626835]),
84 end=points['HPPickupBackConeUp'],
85 control_alpha_rolls=[(0.7, 0.0), (.9, np.pi / 2.0)],
86 ))
87
88points['ScoreFrontHighConeUpPos'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -080089 0.98810344, 1.37536719, -np.pi / 2.0, circular_index=0)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -080090
Austin Schuh9a11ebd2023-02-26 14:16:31 -080091named_segments.append(
92 ThetaSplineSegment(
93 name="NeutralToFrontHighConeUpScore",
94 start=points['Neutral'],
95 control1=np.array([2.594244, 0.417442]),
96 control2=np.array([1.51325, 0.679748]),
97 end=points['ScoreFrontHighConeUpPos'],
98 control_alpha_rolls=[(0.40, 0.0), (.95, -np.pi / 2.0)],
99 ))
100
101points['ScoreFrontMidConeUpPos'] = to_theta_with_circular_index_and_roll(
milind-u68842e12023-02-26 12:45:40 -0800102 0.43740453, 1.06330555, -np.pi / 2.0, circular_index=0)
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -0800103
Austin Schuh9a11ebd2023-02-26 14:16:31 -0800104named_segments.append(
105 ThetaSplineSegment(
106 name="NeutralToFrontMidConeUpScore",
107 start=points['Neutral'],
108 control1=np.array([3.0, 0.317442]),
109 control2=np.array([2.9, 0.479748]),
110 end=points['ScoreFrontMidConeUpPos'],
111 control_alpha_rolls=[(0.40, 0.0), (.95, -np.pi / 2.0)],
112 ))
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -0800113
Austin Schuh9a11ebd2023-02-26 14:16:31 -0800114points['ConeDownPos'] = to_theta_with_circular_index_and_roll(0.7,
115 0.11,
116 np.pi / 2.0,
117 circular_index=0)
118named_segments.append(
119 ThetaSplineSegment(
120 name="NeutralToConeDown",
121 start=points['Neutral'],
122 control1=np.array([2.396694, 0.508020]),
123 control2=np.array([2.874513, 0.933160]),
124 end=points['ConeDownPos'],
125 control_alpha_rolls=[(0.30, 0.0), (.95, np.pi / 2.0)],
126 ))
Maxwell Henderson1ac7aac2023-02-23 17:35:32 -0800127
Maxwell Henderson83cf6d62023-02-10 20:29:26 -0800128front_points = []
129back_points = []
130unnamed_segments = []
milind-u18a901d2023-02-17 21:51:55 -0800131segments = named_segments + unnamed_segments