RustBCA icon indicating copy to clipboard operation
RustBCA copied to clipboard

Switch to parry2d

Open drobnyjt opened this issue 1 year ago • 0 comments
trafficstars

Thank you for your contribution to RustBCA!

Before submitting this PR, please make sure you have:

  • [X] Opened an issue
  • [X] Referenced the relevant issue number(s) below
  • [X] Provided a description of the changes below
  • [X] Ensured all tests pass and added any necessary tests for new code

Fixes #245 #222 #181

Description

This PR replaces dependence on geo with parry2d. This is being done for several reasons:

  • geo is primarily a geospatial primitives library, not a 2d collision detection library
  • RustBCA already uses parry3d for the 3d features
  • geo's collision detection for polygons has a significant weak point - it does not determine the nearest point on the boundary of a polygon if the point is inside the polygon (i.e., it assumes all polygons are solid). This is the cause of issue #245
  • parry2d has a built-in 2d trimesh that should be much faster than the RustBCA version

Tests

All tests run successfully using cargo test.

Notes

This initial push request retains all of geo's features and imports. Once testing is finalized, these will be removed.

drobnyjt avatar Jul 17 '24 17:07 drobnyjt