spherical-volume-rendering / svr-algorithm

A spherical volume rendering algorithm that performs ray casting through a spherical voxel grid.
Other
6 stars 7 forks source link

Inside sphere corner case tests #163

Closed cgyurgyik closed 4 years ago

cgyurgyik commented 4 years ago

Here is a list of corner case examples that I believe should be covered in our test suite. These tests help us verify the correctness of our code, and eliminate any discrepancies I may have produced in the cpp version.

  1. ray origin is within sphere and within bounds [1, N] (i.e. exclusive). For example, if N = 4, the ray origin should be 2 or 3.
  2. ray origin begins on an angular boundary.
  3. ray origin begins on an azimuthal boundary.
  4. ray origin begins on a radial_boundary within the sphere.
  5. ray origin is (0.0, 0.0, 0.0) and t_begin != 0.0

Edit: One more. We want to hit the following case in angular_hit: (is_intersect_max && is_collinear_min)). This might be more up Ariel's alley.