mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
Explicitly list required components when using FindJava and FindJNI Consolidate find_package calls for Java, JNI, and OpenCV into the root CMakeLists.txt file Remove references to main_lib_dest Install missing generated headers Flatten some if statements Use LinkMacOSGUI macro instead of hand rolling it Stop installing OpenCV libraries and an extra ntcorejni library; OpenCV JAR will still be installed to make it easy to use Only print platform version on Windows Prevent GUI modules from being built when wpimath is off, which would otherwise cause a build failure Simplify build configuration checks Clean up fieldImages JAR creation Place built JARs in the same subdir as installed JARs Remove unnecessary JAR includes Remove extra directories in target_include_directories Improve CMake docs
AprilTag
Adding new field to AprilTagFields
Adding field JSON
- Add a field layout CSV file to
src/main/native/resources/edu/wpi/first/apriltag- See docstring in
convert_apriltag_layouts.pyfor more
- See docstring in
- Run
convert_apriltag_layouts.pyin the same directory as this readme to generate the JSON - That script overwrites all generated JSONs, so undo undesired changes if necessary
- Update the field dimensions at the bottom of the JSON
- Length should be in meters from alliance wall to alliance wall
- Width should be in meters from inside guardrail plastic to plastic
Java updates
- Update
src/main/java/edu/wpi/first/apriltag/AprilTagFields.java- Add enum value for new field to
AprilTagFields - Update
AprilTagFields.kDefaultFieldif necessary
- Add enum value for new field to
C++ updates
- Update
src/main/native/include/frc/apriltag/AprilTagFields.h- Add enum value for new field to
AprilTagFields - Update
AprilTagFields::kDefaultFieldif necessary
- Add enum value for new field to
- Update
src/main/native/cpp/AprilTagFields.cpp- Add resource getter prototype like
std::string_view GetResource_2024_crescendo_json() - Add case for new field to switch in
LoadAprilTagLayoutField()
- Add resource getter prototype like