From 84c209b1ab4ed036ed10b6e23e035cfe4738cf4c Mon Sep 17 00:00:00 2001 From: daniel Date: Fri, 6 Feb 2026 00:29:28 +0200 Subject: [PATCH 1/9] changes --- .../java/frc/robot/vision/cameras/limelight/Limelight.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index 80eda8e429..76609c54e1 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -211,6 +211,9 @@ public List getRobotRelativeColorDetections() { } return new ArrayList<>(); } + public Pose2d getRobotPoseFromTurretLimeLight(Supplier camPoseRelativeToRobotCenter,String cameraName) { + Pose3d centerOfTurret = LimelightHelpers.getBotPose3d(cameraName); + } public Function getNeuralDetectionFilter() { return neuralDetectionFilter; From 0c6c556eb92233455cbf2d15b9f2a07c3b27f86f Mon Sep 17 00:00:00 2001 From: daniel Date: Sun, 8 Feb 2026 17:09:32 +0200 Subject: [PATCH 2/9] changes --- .../java/frc/robot/vision/cameras/limelight/Limelight.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index 76609c54e1..c8b1b712df 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -211,8 +211,11 @@ public List getRobotRelativeColorDetections() { } return new ArrayList<>(); } - public Pose2d getRobotPoseFromTurretLimeLight(Supplier camPoseRelativeToRobotCenter,String cameraName) { - Pose3d centerOfTurret = LimelightHelpers.getBotPose3d(cameraName); + public Pose2d getRobotPoseFromTurretLimeLight(Supplier camTransformRelativeToRobotCenter,String cameraName) { + //Pose3d limeLightPoseRelativeToField = LimelightHelpers.getBotPose3d(cameraName); + Pose2d limeLightPoseRelativeToField =LimelightHelpers.getBotPose3d_wpiBlue(cameraName).toPose2d(); + return (limeLightPoseRelativeToField.transformBy((Transform2d) camTransformRelativeToRobotCenter); + } public Function getNeuralDetectionFilter() { From c2842658651723807bbf3566ed9089c894c2f4fb Mon Sep 17 00:00:00 2001 From: daniel Date: Sun, 8 Feb 2026 17:27:46 +0200 Subject: [PATCH 3/9] changes --- .../java/frc/robot/vision/cameras/limelight/Limelight.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index c8b1b712df..223beb6b68 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -212,9 +212,8 @@ public List getRobotRelativeColorDetections() { return new ArrayList<>(); } public Pose2d getRobotPoseFromTurretLimeLight(Supplier camTransformRelativeToRobotCenter,String cameraName) { - //Pose3d limeLightPoseRelativeToField = LimelightHelpers.getBotPose3d(cameraName); - Pose2d limeLightPoseRelativeToField =LimelightHelpers.getBotPose3d_wpiBlue(cameraName).toPose2d(); - return (limeLightPoseRelativeToField.transformBy((Transform2d) camTransformRelativeToRobotCenter); + Pose3d limeLightPoseRelativeToField =LimelightHelpers.getBotPose3d_wpiBlue(cameraName); + return (limeLightPoseRelativeToField.transformBy( camTransformRelativeToRobotCenter.get()); } From 63eb10e5c2315add4239ecd0edfdaf03d9e09e62 Mon Sep 17 00:00:00 2001 From: daniel Date: Sun, 8 Feb 2026 17:45:20 +0200 Subject: [PATCH 4/9] changes --- .../java/frc/robot/vision/cameras/limelight/Limelight.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index 223beb6b68..8e0feec910 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -212,6 +212,10 @@ public List getRobotRelativeColorDetections() { return new ArrayList<>(); } public Pose2d getRobotPoseFromTurretLimeLight(Supplier camTransformRelativeToRobotCenter,String cameraName) { + // important remember that the pose the limelight helpers return are shifted by the given pose in the constructor + // to avoid shiftinge at the constructor use LimelightHelpers.setCameraPose_RobotSpace when pose is set to zero + // what transform 2d does is set the angle to 0 like a new axis were working on + Pose3d limeLightPoseRelativeToField =LimelightHelpers.getBotPose3d_wpiBlue(cameraName); return (limeLightPoseRelativeToField.transformBy( camTransformRelativeToRobotCenter.get()); From 260a25471f443681963b8e3e8b3daaaa4c0bce74 Mon Sep 17 00:00:00 2001 From: daniel Date: Sun, 8 Feb 2026 18:43:03 +0200 Subject: [PATCH 5/9] pls --- .../robot/vision/cameras/limelight/Limelight.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index 8e0feec910..c97c2ecf14 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -211,15 +211,15 @@ public List getRobotRelativeColorDetections() { } return new ArrayList<>(); } - public Pose2d getRobotPoseFromTurretLimeLight(Supplier camTransformRelativeToRobotCenter,String cameraName) { - // important remember that the pose the limelight helpers return are shifted by the given pose in the constructor - // to avoid shiftinge at the constructor use LimelightHelpers.setCameraPose_RobotSpace when pose is set to zero - // what transform 2d does is set the angle to 0 like a new axis were working on - Pose3d limeLightPoseRelativeToField =LimelightHelpers.getBotPose3d_wpiBlue(cameraName); - return (limeLightPoseRelativeToField.transformBy( camTransformRelativeToRobotCenter.get()); + public Pose2d getRobotPoseFromTurretLimeLight(Supplier camTransformRelativeToRobotCenter, String cameraName) { + // important remember that the pose the limelight helpers return are shifted by the given pose in the constructor + // to avoid shiftinge at the constructor use LimelightHelpers.setCameraPose_RobotSpace when pose is set to zero + // what transform 2d does is set the angle to 0 like a new axis were working on - } + Pose2d limeLightPoseRelativeToField = LimelightHelpers.getBotPose3d_wpiBlue(cameraName).toPose2d(); + return (limeLightPoseRelativeToField.transformBy(camTransformRelativeToRobotCenter.get().inverse())); + } public Function getNeuralDetectionFilter() { return neuralDetectionFilter; From dcb266c9a399b9f360a085067bb946ac08301565 Mon Sep 17 00:00:00 2001 From: daniel Date: Thu, 12 Feb 2026 14:40:14 +0200 Subject: [PATCH 6/9] save before removal of comments --- .../frc/robot/vision/cameras/limelight/Limelight.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index c97c2ecf14..a2e7a922dd 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -212,13 +212,15 @@ public List getRobotRelativeColorDetections() { return new ArrayList<>(); } - public Pose2d getRobotPoseFromTurretLimeLight(Supplier camTransformRelativeToRobotCenter, String cameraName) { + public static Pose2d getRobotPoseFromTurretLimeLight(Pose2d limeLightPoseRelativeToRobotCenter, Pose2d limeLightPoseRelativeToField) { // important remember that the pose the limelight helpers return are shifted by the given pose in the constructor // to avoid shiftinge at the constructor use LimelightHelpers.setCameraPose_RobotSpace when pose is set to zero // what transform 2d does is set the angle to 0 like a new axis were working on - - Pose2d limeLightPoseRelativeToField = LimelightHelpers.getBotPose3d_wpiBlue(cameraName).toPose2d(); - return (limeLightPoseRelativeToField.transformBy(camTransformRelativeToRobotCenter.get().inverse())); + Transform2d camTransformRelativeToRobotCenter = new Transform2d( + new Pose2d(0, 0, Rotation2d.fromDegrees(0.0)), + limeLightPoseRelativeToRobotCenter + ); + return (limeLightPoseRelativeToField.transformBy(camTransformRelativeToRobotCenter.inverse())); } public Function getNeuralDetectionFilter() { From d7b2a87cda294c5aa1a409504f0eaff6d4763109 Mon Sep 17 00:00:00 2001 From: daniel Date: Thu, 12 Feb 2026 14:41:22 +0200 Subject: [PATCH 7/9] pls --- .../java/frc/robot/vision/cameras/limelight/Limelight.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index a2e7a922dd..2205adf6de 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -213,9 +213,6 @@ public List getRobotRelativeColorDetections() { } public static Pose2d getRobotPoseFromTurretLimeLight(Pose2d limeLightPoseRelativeToRobotCenter, Pose2d limeLightPoseRelativeToField) { - // important remember that the pose the limelight helpers return are shifted by the given pose in the constructor - // to avoid shiftinge at the constructor use LimelightHelpers.setCameraPose_RobotSpace when pose is set to zero - // what transform 2d does is set the angle to 0 like a new axis were working on Transform2d camTransformRelativeToRobotCenter = new Transform2d( new Pose2d(0, 0, Rotation2d.fromDegrees(0.0)), limeLightPoseRelativeToRobotCenter From 16a49c6e3716f50a3ecad31ed6381e8f4f33f0c8 Mon Sep 17 00:00:00 2001 From: daniel Date: Thu, 12 Feb 2026 19:10:07 +0200 Subject: [PATCH 8/9] back to the past --- .../java/frc/robot/vision/cameras/limelight/Limelight.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index 2205adf6de..2e65771948 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -212,10 +212,13 @@ public List getRobotRelativeColorDetections() { return new ArrayList<>(); } - public static Pose2d getRobotPoseFromTurretLimeLight(Pose2d limeLightPoseRelativeToRobotCenter, Pose2d limeLightPoseRelativeToField) { + public static Pose2d getRobotPoseFromTurretLimeLight( + Supplier limeLightPoseRelativeToRobotCenter, + Pose2d limeLightPoseRelativeToField + ) { Transform2d camTransformRelativeToRobotCenter = new Transform2d( new Pose2d(0, 0, Rotation2d.fromDegrees(0.0)), - limeLightPoseRelativeToRobotCenter + limeLightPoseRelativeToRobotCenter.get() ); return (limeLightPoseRelativeToField.transformBy(camTransformRelativeToRobotCenter.inverse())); } From 452d6843c19810dfcc8220d4142036eee308d685 Mon Sep 17 00:00:00 2001 From: daniel Date: Thu, 12 Feb 2026 19:22:16 +0200 Subject: [PATCH 9/9] today ive learned how to name func --- src/main/java/frc/robot/vision/cameras/limelight/Limelight.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java index 2e65771948..94850eefbe 100644 --- a/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java +++ b/src/main/java/frc/robot/vision/cameras/limelight/Limelight.java @@ -212,7 +212,7 @@ public List getRobotRelativeColorDetections() { return new ArrayList<>(); } - public static Pose2d getRobotPoseFromTurretLimeLight( + public static Pose2d calculateRobotCenterRelativeToField( Supplier limeLightPoseRelativeToRobotCenter, Pose2d limeLightPoseRelativeToField ) {