Visual interfacing changes, needs more work before an actual implementation is tried with PhotonLib
This commit is contained in:
parent
5e784eb9f6
commit
224d966e3e
@ -0,0 +1,9 @@
|
||||
package frc.robot.interfaces;
|
||||
|
||||
import java.util.OptionalDouble;
|
||||
|
||||
public interface IAprilTagProvider {
|
||||
|
||||
public OptionalDouble getTagHorizontalOffsetByID(int id);
|
||||
public OptionalDouble getTagDistanceFromCameraByID(int id);
|
||||
}
|
@ -1,8 +1,10 @@
|
||||
package frc.robot.utilities;
|
||||
package frc.robot.interfaces;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import edu.wpi.first.math.geometry.Pose2d;
|
||||
|
||||
public interface VisualPoseProvider {
|
||||
public interface IVisualPoseProvider {
|
||||
public record VisualPose(Pose2d visualPose, double timestamp) {}
|
||||
|
||||
public VisualPose getVisualPose();
|
@ -24,7 +24,7 @@ import frc.robot.constants.AutoConstants;
|
||||
import frc.robot.constants.DrivetrainConstants;
|
||||
import frc.robot.utilities.MAXSwerveModule;
|
||||
import frc.robot.utilities.SwerveUtils;
|
||||
import frc.robot.utilities.VisualPoseProvider;
|
||||
import frc.robot.interfaces.IVisualPoseProvider;
|
||||
import edu.wpi.first.wpilibj2.command.Command;
|
||||
import edu.wpi.first.wpilibj2.command.PIDCommand;
|
||||
import edu.wpi.first.wpilibj2.command.SubsystemBase;
|
||||
@ -42,7 +42,7 @@ public class Drivetrain extends SubsystemBase {
|
||||
private final SlewRateLimiter m_magLimiter;
|
||||
private final SlewRateLimiter m_rotLimiter;
|
||||
|
||||
private final VisualPoseProvider m_visualPoseProvider;
|
||||
private final IVisualPoseProvider m_visualPoseProvider;
|
||||
|
||||
// Odometry class for tracking robot pose
|
||||
SwerveDrivePoseEstimator m_poseEstimator;
|
||||
@ -55,7 +55,7 @@ public class Drivetrain extends SubsystemBase {
|
||||
private double m_prevTime;
|
||||
|
||||
/** Creates a new DriveSubsystem. */
|
||||
public Drivetrain(Pose2d initialPose, VisualPoseProvider visualPoseProvider) {
|
||||
public Drivetrain(Pose2d initialPose, IVisualPoseProvider visualPoseProvider) {
|
||||
m_frontLeft = new MAXSwerveModule(
|
||||
DrivetrainConstants.kFrontLeftDrivingCanId,
|
||||
DrivetrainConstants.kFrontLeftTurningCanId,
|
||||
|
Loading…
Reference in New Issue
Block a user