7efec6d03c
lots of stuff no one will read these Former-commit-id: 14dcd018bd1b6f74d4b35aa33d9185aca59e9213
45 lines
1.1 KiB
Java
45 lines
1.1 KiB
Java
package org.firstinspires.ftc.teamcode.trajectorysequence;
|
|
|
|
import com.acmerobotics.roadrunner.geometry.Pose2d;
|
|
|
|
import org.firstinspires.ftc.teamcode.trajectorysequence.sequencesegment.SequenceSegment;
|
|
|
|
import java.util.Collections;
|
|
import java.util.List;
|
|
|
|
public class TrajectorySequence {
|
|
private final List<SequenceSegment> sequenceList;
|
|
|
|
public TrajectorySequence(List<SequenceSegment> sequenceList) {
|
|
if (sequenceList.size() == 0) throw new EmptySequenceException();
|
|
|
|
this.sequenceList = Collections.unmodifiableList(sequenceList);
|
|
}
|
|
|
|
public Pose2d start() {
|
|
return sequenceList.get(0).getStartPose();
|
|
}
|
|
|
|
public Pose2d end() {
|
|
return sequenceList.get(sequenceList.size() - 1).getEndPose();
|
|
}
|
|
|
|
public double duration() {
|
|
double total = 0.0;
|
|
|
|
for (SequenceSegment segment : sequenceList) {
|
|
total += segment.getDuration();
|
|
}
|
|
|
|
return total;
|
|
}
|
|
|
|
public SequenceSegment get(int i) {
|
|
return sequenceList.get(i);
|
|
}
|
|
|
|
public int size() {
|
|
return sequenceList.size();
|
|
}
|
|
}
|