diff --git a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/BallisticCalculator.java b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/BallisticCalculator.java index e45b2e9..f5b09eb 100644 --- a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/BallisticCalculator.java +++ b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/BallisticCalculator.java @@ -5,6 +5,7 @@ import java.util.ArrayList; import org.fairportrobotics.frc.robolib.trajectory.Velocity3d; import org.fairportrobotics.frc.robolib.trajectory.ballistics.constraints.BCEvalParams; import org.fairportrobotics.frc.robolib.trajectory.ballistics.constraints.BallisticConstraint; +import org.fairportrobotics.frc.robolib.trajectory.ballistics.exceptions.BallisticException; import org.fairportrobotics.frc.robolib.trajectory.ballistics.models.BallisticModel; import edu.wpi.first.units.measure.Angle; @@ -53,7 +54,7 @@ public abstract class BallisticCalculator { Velocity3d robotVelocity, Angle robotAngle, Velocity3d shooterVelocity - ) { + ) throws BallisticException { return this.computeSolution( model, model.getInitParam(), robotVelocity, robotAngle, shooterVelocity ); @@ -78,7 +79,7 @@ public abstract class BallisticCalculator { Velocity3d robotVelocity, Angle robotAngle, Velocity3d shooterVelocity - ); + ) throws BallisticException; /** @@ -93,7 +94,7 @@ public abstract class BallisticCalculator { */ protected , P> Double evaluateCandidate( M model, BCEvalParams evalParams - ) { + ) throws BallisticException { // Get the weight component for velocity difference Velocity3d velShooterDiff = evalParams.getCandidateShooterVelocity().minus(evalParams.getCurrentShooterVelocity()); diff --git a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/GreedyBallisticCalculator.java b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/GreedyBallisticCalculator.java index 95fc046..bded2fd 100644 --- a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/GreedyBallisticCalculator.java +++ b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/GreedyBallisticCalculator.java @@ -5,6 +5,7 @@ import java.util.LinkedList; import org.fairportrobotics.frc.robolib.trajectory.Velocity3d; import org.fairportrobotics.frc.robolib.trajectory.ballistics.constraints.BCEvalParams; +import org.fairportrobotics.frc.robolib.trajectory.ballistics.exceptions.BallisticException; import org.fairportrobotics.frc.robolib.trajectory.ballistics.models.BallisticModel; import edu.wpi.first.units.measure.Angle; @@ -21,7 +22,7 @@ public class GreedyBallisticCalculator extends BallisticCalculator { Velocity3d robotVelocity, Angle robotAngle, Velocity3d shooterVelocity - ) { + ) throws BallisticException { model.paramComputedReset(); LinkedList

candidate_params = new LinkedList<>(); diff --git a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/HillDescentBallisticCalculator.java b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/HillDescentBallisticCalculator.java index cae4391..8e30e7d 100644 --- a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/HillDescentBallisticCalculator.java +++ b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/calculators/HillDescentBallisticCalculator.java @@ -2,6 +2,7 @@ package org.fairportrobotics.frc.robolib.trajectory.ballistics.calculators; import org.fairportrobotics.frc.robolib.trajectory.Velocity3d; import org.fairportrobotics.frc.robolib.trajectory.ballistics.constraints.BCEvalParams; +import org.fairportrobotics.frc.robolib.trajectory.ballistics.exceptions.BallisticException; import org.fairportrobotics.frc.robolib.trajectory.ballistics.models.BallisticModel; import edu.wpi.first.units.measure.Angle; @@ -18,7 +19,7 @@ public class HillDescentBallisticCalculator extends BallisticCalculator { Velocity3d robotVelocity, Angle robotAngle, Velocity3d shooterVelocity - ) { + ) throws BallisticException { Velocity3d candidateVelocity = model.getCandidateVelocity(modelParam); BCEvalParams evalParams = new BCEvalParams(robotVelocity, robotAngle, shooterVelocity, candidateVelocity); return new BCResult(this.evaluateCandidate(model, evalParams), evalParams); @@ -30,7 +31,7 @@ public class HillDescentBallisticCalculator extends BallisticCalculator { Velocity3d robotVelocity, Angle robotAngle, Velocity3d shooterVelocity - ) { + ) throws BallisticException { model.paramComputedReset(); P bestParam = initParam; diff --git a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/constraints/BallisticConstraint.java b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/constraints/BallisticConstraint.java index b53150d..df0affb 100644 --- a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/constraints/BallisticConstraint.java +++ b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/constraints/BallisticConstraint.java @@ -1,8 +1,8 @@ package org.fairportrobotics.frc.robolib.trajectory.ballistics.constraints; +import org.fairportrobotics.frc.robolib.trajectory.ballistics.exceptions.BallisticException; import org.fairportrobotics.frc.robolib.trajectory.ballistics.models.BallisticModel; - public abstract class BallisticConstraint { protected double weight; @@ -51,5 +51,5 @@ public abstract class BallisticConstraint { */ public abstract , P> Double evaluate( M model, BCEvalParams evalParams - ); + ) throws BallisticException; }