[robotpy] Mirror most other subprojects (#8208)

GitOrigin-RevId: ac60fd3cf4a24023184376687da28373d14b781a

This mirrors the robotpy files for the following projects:
- apriltag
- datalog
- hal
- ntcore
- romiVendordep
- wpilibc
- wpimath
- xrpVendordep

This excludes cscore and the halsim wrappers for at this time.

NOTE: This does not hook these projects up to the build system, just simply mirrors the files. The building will take place in a follow up PR to make it easier to review the changes necessary to build.
This commit is contained in:
PJ Reiniger
2025-10-24 01:28:04 -04:00
committed by GitHub
parent 8992dcdc99
commit 44b9cc1398
545 changed files with 27293 additions and 38 deletions

View File

@@ -0,0 +1,50 @@
extra_includes:
- wpystruct.h
classes:
frc::MecanumDriveKinematics:
methods:
MecanumDriveKinematics:
ToWheelSpeeds:
doc: |
Performs inverse kinematics to return the wheel speeds from a desired
chassis velocity. This method is often used to convert joystick values into
wheel speeds.
This function also supports variable centers of rotation. During normal
operations, the center of rotation is usually the same as the physical
center of the robot; therefore, the argument is defaulted to that use case.
However, if you wish to change the center of rotation for evasive
maneuvers, vision alignment, or for any other use case, you can do so.
:param chassisSpeeds: The desired chassis speed.
:param centerOfRotation: The center of rotation. For example, if you set the
center of rotation at one corner of the robot and
provide a chassis speed that only has a dtheta
component, the robot will rotate around that
corner.
:returns: The wheel speeds. Use caution because they are not normalized.
Sometimes, a user input may cause one of the wheel speeds to go
above the attainable max velocity. Use the
:meth:`MecanumDriveWheelSpeeds.normalize` method to rectify
this issue. In addition, you can use Python unpacking syntax
to directly assign the wheel speeds to variables::
fl, fr, bl, br = kinematics.toWheelSpeeds(chassisSpeeds)
overloads:
const ChassisSpeeds&, const Translation2d& [const]:
const ChassisSpeeds& [const]:
ToChassisSpeeds:
ToTwist2d:
overloads:
const MecanumDriveWheelPositions&, const MecanumDriveWheelPositions& [const]:
const MecanumDriveWheelPositions& [const]:
GetFrontLeft:
GetFrontRight:
GetRearLeft:
GetRearRight:
Interpolate:
inline_code: |
SetupWPyStruct<frc::MecanumDriveKinematics>(cls_MecanumDriveKinematics);