Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed computation of intersectsRay() for Cylinder, Box and ConvexMesh #109

Merged
merged 21 commits into from
Apr 26, 2020

Commits on Apr 25, 2020

  1. Fixed computation of the ray-box intersections.

    Even according to the link to the used method, the approach should only
    work for axis-aligned boxes. But bodies::Box can be arbitrarily transformed.
    So I instead strip rotation from both the box and the ray, which gives
    the same results.
    
    The old implementation would fail every time the untransformed min corner
    ceased to be the min corner of the transformed box.
    
    # Conflicts:
    #	src/bodies.cpp
    peci1 committed Apr 25, 2020
    Configuration menu
    Copy the full SHA
    818af70 View commit details
    Browse the repository at this point in the history
  2. Fixed computation of Box::intersectsRay() in case the ray originates …

    …within the box.
    
    A false second intersection was returned in that case, but as the ray starts inside the box, there should only be one intersection.
    peci1 committed Apr 25, 2020
    Configuration menu
    Copy the full SHA
    6c9b24a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    752d9a4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6d65ecc View commit details
    Browse the repository at this point in the history

Commits on Apr 26, 2020

  1. Configuration menu
    Copy the full SHA
    15b31c4 View commit details
    Browse the repository at this point in the history
  2. Fixed Cylinder::samplePointInside() not transforming the generated po…

    …int by the transform of the body.
    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    0d68ede View commit details
    Browse the repository at this point in the history
  3. Fixed Cylinder::intersectsRay() to correctly return one intersection …

    …in case the ray is touching the cylinder side.
    
    Also fixed the case when the ray goes exactly at the edge between base and sides.
    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    a627e6f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ab43142 View commit details
    Browse the repository at this point in the history
  5. Stopped preventing GCC optimizations on Box::intersectsRay().

    The reported problems no longer occur.
    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    c399036 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c3c4643 View commit details
    Browse the repository at this point in the history
  7. Prevent reporting identical intersections multiple times in ConvexMes…

    …h::intersectsRay().
    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    5954985 View commit details
    Browse the repository at this point in the history
  8. Improved documentation.

    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    2dd06d8 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    4ff0679 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    c888ccd View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a99602f View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    ce88eca View commit details
    Browse the repository at this point in the history
  13. Kinetic compatibility.

    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    2ad1bf8 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    91bb2cd View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    1018336 View commit details
    Browse the repository at this point in the history
  16. Refactored intersection code.

    peci1 committed Apr 26, 2020
    Configuration menu
    Copy the full SHA
    ceb6a42 View commit details
    Browse the repository at this point in the history
  17. ABI compatibility for melodic.

    peci1 committed Apr 26, 2020
    5 Configuration menu
    Copy the full SHA
    ed4cf13 View commit details
    Browse the repository at this point in the history