add skeleton code for calculating angle to turn for shooting
[3501/stronghold-2016] / src / org / usfirst / frc / team3501 / robot / commands / AlignToScore.java
index 012ffad6d68cf39b06b99ab757334cee481202fc..a2f83d4233a23e8e16d0349b5ef9c1a4ee1118a4 100755 (executable)
@@ -1,5 +1,7 @@
 package org.usfirst.frc.team3501.robot.commands;
 
+import org.usfirst.frc.team3501.robot.Robot;
+
 import edu.wpi.first.wpilibj.command.CommandGroup;
 
 /**
@@ -14,15 +16,16 @@ import edu.wpi.first.wpilibj.command.CommandGroup;
  *
  */
 public class AlignToScore extends CommandGroup {
+  private final double DIST_CENTER_OF_MASS_TO_FRONT_OF_ROBOT = 0;
+
   private final double DEFAULT_SPEED = 0.5;
-  // constants for position 1: low bar
 
+  // constants for position 1: low bar
   private final double POS1_DIST1 = 0;
   private final double POS1_TURN1 = 0;
   private final double POS1_DIST2 = 0;
 
   // constants for position 2
-
   private final double POS2_DIST1 = 0;
   private final double POS2_TURN1 = 0;
   private final double POS2_DIST2 = 0;
@@ -35,8 +38,16 @@ public class AlignToScore extends CommandGroup {
   private final double POS3_DIST3 = 0;
 
   // constants for position 4
+  private final double POS4_DIST1 = 0;
+  private final double POS4_TURN1 = 0;
+  private final double POS4_DIST2 = 0;
+  private final double POS4_TURN2 = 0;
+  private final double POS4_DIST3 = 0;
 
   // constants for position 5
+  private final double POS5_DIST1 = 0;
+  private final double POS5_TURN1 = 0;
+  private final double POS5_DIST2 = 0;
 
   public AlignToScore(int position) {
 
@@ -62,15 +73,25 @@ public class AlignToScore extends CommandGroup {
       addSequential(new DriveForDistance(POS3_DIST2, DEFAULT_SPEED));
       addSequential(new TurnForAngle(POS3_TURN2));
       addSequential(new DriveForDistance(POS3_DIST3, DEFAULT_SPEED));
-      ;
 
     case 4:
 
-      addSequential();
+      addSequential(new DriveForDistance(POS4_DIST1, DEFAULT_SPEED));
+      addSequential(new TurnForAngle(POS4_TURN1));
+      addSequential(new DriveForDistance(POS4_DIST2, DEFAULT_SPEED));
+      addSequential(new TurnForAngle(POS4_TURN2));
+      addSequential(new DriveForDistance(POS4_DIST3, DEFAULT_SPEED));
 
     case 5:
 
-      addSequential();
+      addSequential(new DriveForDistance(POS5_DIST1, DEFAULT_SPEED));
+      addSequential(new TurnForAngle(POS5_TURN1));
+      addSequential(new DriveForDistance(POS5_DIST2, DEFAULT_SPEED));
     }
   }
+
+  public static void calculatePath() {
+    double leftDistance = Robot.shooter.getLeftDistanceToTower();
+    double rightDistance = Robot.shooter.getRightDistanceToTower();
+  }
 }