summaryrefslogtreecommitdiff
path: root/vec.h
diff options
context:
space:
mode:
authorKeuin <[email protected]>2022-04-15 12:50:23 +0800
committerKeuin <[email protected]>2022-04-15 12:50:23 +0800
commit50cd8dd3dd029ce432f8e517b4c054e75b5cfe8e (patch)
tree8fd78325d8443bb8399fbc86777ba51eabd31176 /vec.h
parent569be1744453d9e03cf6ba6360c42b9da89a596a (diff)
Fix vec3::reflect. Add tests for vec3::reflect and vec3::is_zero.
Diffstat (limited to 'vec.h')
-rw-r--r--vec.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/vec.h b/vec.h
index c7669bf..5050065 100644
--- a/vec.h
+++ b/vec.h
@@ -88,10 +88,10 @@ struct vec3 {
return *this * (1.0 / norm());
}
- // Get the reflected vector. Current vector is the incoming vector, n is the normal vector (length should be 1).
- vec3 reflect(const vec3 &n) const {
- assert(fabs(n.mod2() - 1.0) < 1e-8);
- return *this - 2.0 * dot(*this, n) * n;
+ // Get the reflected vector. Current vector is the normal vector (length should be 1), v is the incoming vector.
+ vec3 reflect(const vec3 &v) const {
+ assert(fabs(mod2() - 1.0) < 1e-8);
+ return v - (2.0 * dot(v)) * (*this);
}
};