ハイドラント
cd92b07321
[wpimath] Add Pose2d and Pose3d rotateAround() ( #7659 )
2025-01-13 12:55:26 -07:00
Tyler Veness
007526089e
[wpimath] Fix LinearSystemId return type and docs ( #7675 )
...
Fixes #7674 .
2025-01-13 12:22:53 -07:00
HarryXChen
e37c35746a
[wpimath] Implement Translation3d.RotateAround ( #7661 )
2025-01-09 20:31:34 -08:00
Tyler Veness
11a0c36737
[wpimath] Make Rotation2d member initialization order match declaration order ( #7632 )
2025-01-03 22:44:17 -08:00
sciencewhiz
203487a6aa
[wpimath] improve LTVUnicycleController docs (NFC) ( #7599 )
...
Document the states and inputs so it isn't necessary to look at the code
Fix max velocity throws doc
2024-12-28 16:03:47 -06:00
Nicholas Armstrong
fe49cbe429
[wpimath] Remove Units class from Elevator and Arm Feedforwards ( #7570 )
2024-12-26 20:21:19 -06:00
Tyler Veness
02a0adc653
[wpimath] Add Rotation3d rotation vector getter ( #7564 )
...
The code churn in Java is just making the function order consistent
between languages.
2024-12-22 13:34:51 -08:00
Peter Johnson
4bca79b9af
[wpimath] Revert "ChassisSpeeds fromRelative and discretize methods made instance methods ( #7115 )" ( #7549 )
...
This reverts commit a3b12b3bd9 .
2024-12-14 10:42:49 -08:00
Joseph Eng
4225b732fd
Remove unnecessary boxing ( #7539 )
...
* Remove unnecessary boxing
Also remove unnecessary warning suppression
* Use more idiomatic functional interfaces in NumericalIntegration
2024-12-12 19:18:40 -08:00
Wispy
cc41a0ed24
[wpilib] Replace MecanumDriveMotorVoltages with a functional interface ( #6760 )
2024-12-08 17:05:06 -08:00
Tyler Veness
e08fdeba21
[wpimath] Rename FindNearestPoint() to Nearest() ( #7513 )
...
This is easier to type and follows the naming of Pose2d::Nearest().
Since Ellipse2d and Rectangle2d were added for the 2025 season, we don't
need to add deprecation notices.
2024-12-07 23:01:18 -08:00
Tyler Veness
e222efaa01
[wpimath] Add affine transformation constructors and getters to geometry API ( #7430 )
...
Fixes #7429 .
2024-12-07 15:49:17 -08:00
Tyler Veness
882233bede
[wpimath] Improve SimpleMotorFeedforward argument names and deprecation message ( #7489 )
...
Also roll back SimpleMotorFeedforward unit API until 2027.
2024-12-06 22:32:40 -08:00
sciencewhiz
892e062316
[hal,wpilib,wpimath] Add Usage Reporting for Choreo and PathWeaver ( #7464 )
2024-11-30 20:33:09 -08:00
Tyler Veness
a0af0fd572
[wpimath] Remove redundant internal DARE function ( #7442 )
2024-11-28 21:24:13 -08:00
sciencewhiz
0a3ccf93c6
[wpimath] Add BangBangController Usage Reporting ( #7411 )
2024-11-20 17:00:54 -08:00
Sam Carlberg
ded7c87d63
[wpimath] Remove units from trapezoid profile classes ( #7276 )
2024-11-16 07:57:38 -08:00
Joseph Eng
2acf111f56
[wpimath] Add 3D odometry and pose estimation ( #7119 )
2024-11-16 07:56:14 -08:00
Kavin Muralikrishnan
07345712dc
[wpimath] Document default tolerances of PIDController ( #7377 )
2024-11-12 18:19:55 -05:00
Joseph Eng
425bf83036
[wpimath] Add 2D to 3D geometry constructors ( #7380 )
2024-11-12 18:18:37 -05:00
Peter Johnson
f40bd3593d
[wpilib,wpimath] Don't use mutable units for return values ( #7369 )
...
It only saves a single allocation and can cause confusing behavior on the
caller (user) side.
2024-11-08 18:29:51 -08:00
Tyler Veness
661bae568f
[wpimath] Add time-varying RKDP ( #7362 )
...
This makes the ground truth for the Taylor series AQ discretization more
accurate.
2024-11-07 23:46:52 -08:00
Tyler Veness
63e623d70b
[wpimath] Fix case and order of HolonomicDriveController PID getters ( #7342 )
2024-11-05 09:50:17 -07:00
Tyler Veness
dfd1084526
[wpimath] Replace pi with symbol in docs ( #7322 )
2024-11-01 17:16:18 -07:00
Tyler Veness
9f6f267f5c
[wpimath] DARE: Use wpi::expected instead of exceptions ( #7312 )
2024-10-31 20:37:57 -07:00
Nicholas Armstrong
a3b12b3bd9
[wpimath] ChassisSpeeds fromRelative and discretize methods made instance methods ( #7115 )
2024-10-22 17:23:17 -06:00
Tyler Veness
95b9bd880b
[wpimath] Make geometry classes constexpr ( #7222 )
2024-10-18 16:08:41 -07:00
Joseph Eng
2054d0f57e
[wpimath] Fix pose estimator reset methods ( #7225 )
2024-10-18 16:06:32 -07:00
Nicholas Armstrong
4adfa8bf64
[wpimath] Fully discretized ElevatorFF and ArmFF ( #7024 )
...
Co-authored-by: Tyler Veness <calcmogul@gmail.com >
2024-10-10 22:10:45 -07:00
Bryce Roethel
d97a749d84
[wpimath] SwerveDrivePoseEstimator: Fix stationary module emitting error when calculating angle in ToSwerveModuleStates ( #7175 )
2024-10-10 22:05:49 -07:00
Nicholas Armstrong
fe80d72fba
[wpimath] Add cosineScale method to SwerveModuleState and instance optimize ( #7114 )
2024-09-30 13:23:30 -06:00
Benjamin Hall
6b1e656659
[wpimath] Add DCMotor.getCurrent() overload accepting torque ( #7132 )
2024-09-28 09:33:15 -07:00
Nicholas Armstrong
6281ec0810
[wpimath] PIDController: Update field and method names for error and errorDerivative ( #7088 )
2024-09-23 11:57:20 -06:00
Wispy
6e8feb154c
[wpimath] Add more support for wpiunits in the geometry classes ( #6587 )
2024-09-07 22:23:19 -07:00
Sam Carlberg
a9b885070e
[wpiunits] Java units API rewrite ( #6958 )
...
Java generics are too limited to do what we need. This refactors generic code previously in Unit and Measure into unit-specific classes that can have unit-safe math operations (notably, times and divide) that can return values in known units instead of a wildcarded Measure<?>.
Unit-specific measure implementations are automatically generated by ./wpiunits/generate_units.py, which generates generic interfaces and mutable and immutable implementations of those interfaces. These make up the bulk of the diff of this PR (approximately 9300 LOC).
This also adds units for angular and linear velocities, accelerations, and momenta; moment of inertia; and torque.
2024-09-07 10:59:29 -07:00
Gold856
b12b83aa89
Fix typos with cspell ( #6972 )
2024-08-17 07:44:34 -07:00
Ryan Blue
55c1c5396d
[wpimath] Remove deprecated MatBuilder constructor ( #6956 )
2024-08-13 20:59:59 -07:00
Ryan Blue
e21e129f12
[wpimath, commands] Fix RamseteController deprecation year ( #6953 )
2024-08-13 16:55:26 -07:00
Tyler Veness
685c732568
[wpimath] Make trajectory constraints use Rectangle2d and Ellipse2d ( #6901 )
2024-08-01 16:46:23 -07:00
Gold856
2fc55b86a2
[wpimath] Fix API docs for DCMotorSim and LinearSystemId ( #6904 )
2024-08-01 16:41:57 -07:00
Joseph Eng
073192d513
[wpimath] Add remaining struct and protobuf implementations ( #5953 )
2024-07-29 07:55:44 -07:00
Joseph Eng
158fb23072
[wpiutil] Struct: Change from GetTypeString() to GetTypeName() ( #6872 )
...
This makes it easier to define schemas when the type name is non-trivial (e.g., templated structs).
This is breaking for a) custom struct implementations and b) anything calling `wpi::Struct<T>::GetTypeString(info...)` in C++ directly. In both cases, it's a simple translation: For A, rename `GetTypeString()` to `GetTypeName()` and remove the struct: at the beginning, and for B, use `wpi::GetStructTypeString<T>(info...)` instead.
2024-07-27 20:23:45 -07:00
Brendan Raykoff
45f3e3a069
[wpimath] Add getAccumulatedError() to PIDController ( #6813 )
2024-07-20 23:17:13 -07:00
Joseph Eng
b4d42d8980
[wpimath] Make public final values in feedforwards private and add getters ( #6851 )
2024-07-20 07:01:56 -07:00
Nicholas Armstrong
30c7632ab8
[wpimath] Make SimpleMotorFeedforward only support discrete feedforward ( #6647 )
...
Co-authored-by: Tyler Veness <calcmogul@gmail.com >
2024-07-16 17:23:11 -07:00
Christopher Mahoney
6c0429c263
[wpimath] Remove WheelPositions interface/concept ( #6771 )
2024-07-16 12:39:24 -07:00
Joseph Eng
7b7d17ccd7
[wpimath] Add and use kinematics.copyInto() ( #6789 )
2024-07-15 17:19:31 -07:00
Tyler Veness
deb5f3d7af
[wpimath] Exit early when parameterizing malformed spline ( #6827 )
...
Currently, a max iteration heuristic is used to determine when a spline
is malformed. Instead, we can report a failure immediately if dx and dy
are too small, because the heading won't be accurate either.
Fixes #6826 .
2024-07-12 21:52:28 -07:00
Jade
cc02a948a0
[wpimath] Add Reset methods to PoseEstimator ( #6751 )
2024-07-08 18:26:08 -07:00
Jade
dc276b651b
[wpimath] Add reset methods to Odometry ( #6702 )
2024-07-08 18:25:42 -07:00