wpilibsuite / PathWeaver

Desktop application for generating motion paths
Other
64 stars 68 forks source link

Update WPIMath JNI usage #303

Closed calcmogul closed 2 months ago

KangarooKoala commented 2 months ago

Just to confirm, none of the other JNI classes (ArmFeedforwardJNI, DAREJNI, EigenJNI, Ellipse2dJNI, Pose3d, and StateSpaceJNI) are transitively loaded by PathWeaver, right?

calcmogul commented 2 months ago

PathWeaver uses the following WPIMath classes:

[tav@myriad PathWeaver]$ rg edu.wpi.first.math
src/main/java/edu/wpi/first/pathweaver/PathWeaver.java
3:import edu.wpi.first.math.jni.TrajectoryUtilJNI;

src/main/java/edu/wpi/first/pathweaver/spline/wpilib/WpilibSpline.java
3:import edu.wpi.first.math.geometry.Pose2d;
4:import edu.wpi.first.math.kinematics.DifferentialDriveKinematics;
5:import edu.wpi.first.math.spline.PoseWithCurvature;
6:import edu.wpi.first.math.spline.QuinticHermiteSpline;
7:import edu.wpi.first.math.spline.Spline;
8:import edu.wpi.first.math.trajectory.Trajectory;
9:import edu.wpi.first.math.trajectory.TrajectoryConfig;
10:import edu.wpi.first.math.trajectory.TrajectoryGenerator;
11:import edu.wpi.first.math.trajectory.TrajectoryUtil;

Of these, only TrajectoryUtil uses a JNI class: TrajectoryUtilJNI.