1313import java .util .HashSet ;
1414import java .util .LinkedList ;
1515import java .util .List ;
16+ import java .util .Optional ;
1617import java .util .Set ;
1718import org .photonvision .PhotonCamera ;
1819
@@ -39,15 +40,22 @@ public void updateInputs(VisionIOInputs inputs) {
3940 // Read new camera observations
4041 Set <Short > tagIds = new HashSet <>();
4142 List <PoseObservation > poseObservations = new LinkedList <>();
43+
4244 for (var result : camera .getAllUnreadResults ()) {
4345 // Update latest target observation
4446 if (result .hasTargets ()) {
47+ var bestTarget = result .getBestTarget ();
4548 inputs .latestTargetObservation =
46- new TargetObservation (
47- Rotation2d .fromDegrees (result .getBestTarget ().getYaw ()),
48- Rotation2d .fromDegrees (result .getBestTarget ().getPitch ()));
49+ Optional .of (
50+ new TargetObservation (
51+ Rotation2d .fromDegrees (bestTarget .getYaw ()),
52+ Rotation2d .fromDegrees (bestTarget .getPitch ()),
53+ Rotation2d .fromDegrees (bestTarget .getSkew ()),
54+ bestTarget .getArea (),
55+ bestTarget .getDetectedObjectConfidence (),
56+ bestTarget .getDetectedObjectClassID ()));
4957 } else {
50- inputs .latestTargetObservation = new TargetObservation ( Rotation2d . kZero , Rotation2d . kZero );
58+ inputs .latestTargetObservation = Optional . empty ( );
5159 }
5260
5361 // Add pose observation
0 commit comments