-
Notifications
You must be signed in to change notification settings - Fork 68
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Initial switch from Pathfinder to WPILib splines (#147)
* Massive PathWeaver refactor - intended for initial review What is not done: -Comments or documentation What is changed: -The Spline interface has been refined, and an AbstractSpline class has been added to aid implementors -SplineSegment aids drag and drop, a benefit of the old intrusive spline system -One spline is now created for each trajectory (path the robot follows), instead of a Spline being created between every 2 Waypoints -Waypoints no longer stores any references to Path or Spline -Waypoints are held in an ArrayList instead of an intrusive linked list -GitHub issues #140 and #142 are closed, with around 10 more issues being resolved or being able to be resolved with these changes -Pathfinder has been superseded by WpiLib splines, but may be reimplemented if interest exists -The faster rendering nature of WpiLib splines allows for an accurate spline to be continuously rendered, instead of swapping to a fake spline (aided by the skipping of time parameterization) -Various code-quality/modularity improvements To-Do: -Fully evaluate the new series of abstract classes in regards to an spline implementation backend by writing some implementations -Currently, the tangent lines exposed in PathWeaver are being set as the control vectors manually (see @gftabor), this should be replaced with WpiLib methods when those are complete -Path serialization currently only serializes waypoints - we are blocking on further allwpilib work as well as bikeshedding * Fix bugs found in inital refactor What is changed: -Removal of square scaling for tangent lines -Refactor the angle heading optimization out from Path into Wpilib Path and PathUtil -Fixing out of bounds bugs To-Do: -Work on getting the square root scaling working with the tangent path optimization -Get a proper change-log and to-do list up * Add JavaDoc to pertinent files What is changed: -Javadoc is added to pertinent user-facing classes and important internal ones -Gradle now errors on JavaDoc errors, and all existing errors have been fixed * Really fix #142 What is changed: -Actually show the alert box, as well as add error-handling to the right class. Also made alert boxes always on top. * Dummy commit to rerun builds
- Loading branch information
1 parent
655cb16
commit a54cc1d
Showing
45 changed files
with
1,499 additions
and
1,732 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
122 changes: 0 additions & 122 deletions
122
src/main/java/edu/wpi/first/pathweaver/DragHandler.java
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.