Skip to content
Snippets Groups Projects
Commit c35d9a56 authored by Yoel's avatar Yoel
Browse files

Changed double to floats in intersect

parent d7f4533e
No related branches found
No related tags found
No related merge requests found
...@@ -18,20 +18,20 @@ std::optional<cam::Hit> Sphere::intersect(const cam::Ray& r) const { ...@@ -18,20 +18,20 @@ std::optional<cam::Hit> Sphere::intersect(const cam::Ray& r) const {
float discrim = b * b - 4 * a * c; float discrim = b * b - 4 * a * c;
if (discrim >= 0) { if (discrim >= 0) {
double t1 = (-b - sqrt(b * b - 4 * a * c)) / (2 * a); float t1 = (-b - sqrt(b * b - 4 * a * c)) / (2 * a);
if (r.in_range(t1)) { if (r.in_range(t1)) {
util::Vec3 t1HitPoint = r(t1); util::Vec3 t1HitPoint = r(t1);
double theta = acos(t1HitPoint.y() / radius); float theta = acos(t1HitPoint.y() / radius);
double phi = M_PI + atan2(t1HitPoint.x(), t1HitPoint.z()); float phi = M_PI + atan2(t1HitPoint.x(), t1HitPoint.z());
return std::optional<cam::Hit>( return std::optional<cam::Hit>(
cam::Hit(t1HitPoint, t1HitPoint, t1, material)); cam::Hit(t1HitPoint, t1HitPoint, t1, material));
} else { } else {
double t2 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a); float t2 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a);
if (r.in_range(t2)) { if (r.in_range(t2)) {
util::Vec3 t2HitPoint = r(t2); util::Vec3 t2HitPoint = r(t2);
double theta = acos(t2HitPoint.y() / radius); float theta = acos(t2HitPoint.y() / radius);
double phi = M_PI + atan2(t2HitPoint.x(), t2HitPoint.z()); float phi = M_PI + atan2(t2HitPoint.x(), t2HitPoint.z());
return std::optional<cam::Hit>( return std::optional<cam::Hit>(
cam::Hit(t2HitPoint, t2HitPoint, t2, material)); cam::Hit(t2HitPoint, t2HitPoint, t2, material));
} else { } else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment