use of me.wobblyyyy.pathfinder2.robot.simulated.SimulatedDrive in project Pathfinder2 by Wobblyyyy.
the class TestSimulatedChassis method beforeEach.
@BeforeEach
public void beforeEach() {
wrapper = new SimulatedWrapper(new SimulatedDrive(), new SimulatedOdometry());
odometry = wrapper.getOdometry();
robot = wrapper.getRobot();
turnController = new ProportionalController(-0.05);
pathfinder = new Pathfinder(robot, turnController).setSpeed(0.5).setTolerance(DEFAULT_TOLERANCE).setAngleTolerance(Angle.fromDeg(5));
factory = new SplineBuilderFactory().setSpeed(0.5).setStep(0.1).setTolerance(DEFAULT_TOLERANCE).setAngleTolerance(Angle.fromDeg(5));
}
use of me.wobblyyyy.pathfinder2.robot.simulated.SimulatedDrive in project Pathfinder2 by Wobblyyyy.
the class TestSimulatedDrive method testTranslation.
@Test
public void testTranslation() {
Translation translation = new Translation(0, 0, 0);
SimulatedDrive drive = new SimulatedDrive();
drive.setTranslation(translation);
Assertions.assertEquals(translation, drive.getTranslation());
}
use of me.wobblyyyy.pathfinder2.robot.simulated.SimulatedDrive in project Pathfinder2 by Wobblyyyy.
the class GenericTrajectoryTester method beforeEach.
@BeforeEach
public void beforeEach() {
wrapper = new SimulatedWrapper(new SimulatedDrive(), new SimulatedOdometry());
odometry = wrapper.getOdometry();
robot = wrapper.getRobot();
turnController = new ProportionalController(turnCoefficient);
pathfinder = new Pathfinder(robot, turnController).setSpeed(speed).setTolerance(tolerance).setAngleTolerance(angleTolerance);
factory = new SplineBuilderFactory().setSpeed(speed).setStep(step).setTolerance(tolerance).setAngleTolerance(angleTolerance);
}
use of me.wobblyyyy.pathfinder2.robot.simulated.SimulatedDrive in project Pathfinder2 by Wobblyyyy.
the class ExampleTimedRobot method robotInit.
@Override
public void robotInit() {
// initialize everything. if this was a real implementation, you would
// not want to use SimulatedDrive or SimulatedOdometry
drive = new SimulatedDrive();
odometry = new SimulatedOdometry();
robot = new Robot(drive, odometry);
pathfinder = new Pathfinder(robot, controller).setSpeed(0.5).setTolerance(2).setAngleTolerance(Angle.fromDeg(5));
}
use of me.wobblyyyy.pathfinder2.robot.simulated.SimulatedDrive in project Pathfinder2 by Wobblyyyy.
the class TestExecutorManager method testExecutorManager2.
@Test
public void testExecutorManager2() {
SimulatedOdometry odometry = new SimulatedOdometry();
SimulatedDrive drive = new SimulatedDrive();
Robot robot = new Robot(drive, odometry);
Trajectory trajectory1 = new LinearTrajectory(new PointXYZ(10, 10, 0), 1.0, 0.1, Angle.fromDeg(3));
Trajectory trajectory2 = new LinearTrajectory(new PointXYZ(20, 20, 45), 1.0, 0.1, Angle.fromDeg(3));
Trajectory trajectory3 = new LinearTrajectory(new PointXYZ(30, 30, 90), 1.0, 0.1, Angle.fromDeg(3));
Controller controller = new GenericTurnController(0.1);
GenericFollowerGenerator generator = new GenericFollowerGenerator(controller);
Follower follower1 = generator.generate(robot, trajectory1);
Follower follower2 = generator.generate(robot, trajectory2);
Follower follower3 = generator.generate(robot, trajectory3);
List<Follower> followers = new ArrayList<Follower>() {
{
add(follower1);
add(follower2);
add(follower3);
}
};
ExecutorManager manager = new ExecutorManager(robot);
manager.addExecutor(followers);
manager.tick();
Assertions.assertTrue(manager.isActive());
odometry.setRawPosition(new PointXYZ(10, 10, 0));
manager.tick();
Assertions.assertTrue(manager.isActive());
odometry.setRawPosition(new PointXYZ(20, 20, 30));
manager.tick();
Assertions.assertTrue(manager.isActive());
odometry.setRawPosition(new PointXYZ(20, 20, 45));
manager.tick();
Assertions.assertTrue(manager.isActive());
odometry.setRawPosition(new PointXYZ(30, 30, 45));
manager.tick();
Assertions.assertTrue(manager.isActive());
odometry.setRawPosition(new PointXYZ(30, 30, 90));
manager.tick();
Assertions.assertFalse(manager.isActive());
}
Aggregations