Added fixes to external odometry processors.
Signed-off-by: Logan-Nash <logannash@Mac.attlocal.net>
This commit is contained in:
@ -108,7 +108,13 @@ public class OTOSLocalizer extends Localizer {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Pose getPose() {
|
public Pose getPose() {
|
||||||
return MathFunctions.addPoses(startPose, new Pose(otosPose.x, otosPose.y, otosPose.h));
|
SparkFunOTOS.Pose2D rawPose = otos.getPosition();
|
||||||
|
Pose pose = new Pose(rawPose.x, rawPose.y, rawPose.h);
|
||||||
|
|
||||||
|
Vector vec = pose.getVector();
|
||||||
|
vec.rotateVector(startPose.getHeading());
|
||||||
|
|
||||||
|
return MathFunctions.addPoses(startPose, new Pose(vec.getXComponent(), vec.getYComponent(), pose.getHeading()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -96,8 +96,13 @@ public class PinpointLocalizer extends Localizer {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Pose getPose() {
|
public Pose getPose() {
|
||||||
Pose2D pose = odo.getPosition();
|
Pose2D rawPose = odo.getPosition();
|
||||||
return new Pose(pose.getX(DistanceUnit.INCH), pose.getY(DistanceUnit.INCH), pose.getHeading(AngleUnit.RADIANS));
|
Pose pose = new Pose(rawPose.getX(DistanceUnit.INCH), rawPose.getY(DistanceUnit.INCH), rawPose.getHeading(AngleUnit.RADIANS));
|
||||||
|
|
||||||
|
Vector vec = pose.getVector();
|
||||||
|
vec.rotateVector(startPose.getHeading());
|
||||||
|
|
||||||
|
return MathFunctions.addPoses(startPose, new Pose(vec.getXComponent(), vec.getYComponent(), pose.getHeading()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user