summaryrefslogtreecommitdiffstats
path: root/src/render/raycasting/qray3d.cpp
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2019-08-09 21:11:12 +0200
committerAlexandru Croitor <alexandru.croitor@qt.io>2019-08-10 21:49:14 +0200
commit336e0eb1bc21215012f56f725ebbfb5710d22814 (patch)
tree61cef7fbd348dcddfcebbdea212d7ed1ec7f0504 /src/render/raycasting/qray3d.cpp
parent1b4487817e68a5e87eff54793b02c85792accc10 (diff)
parentba717d2c21950f06a9795e711c86b4b6e8e66137 (diff)
Merge "Merge remote-tracking branch 'origin/dev' into wip/qt6"
Diffstat (limited to 'src/render/raycasting/qray3d.cpp')
-rw-r--r--src/render/raycasting/qray3d.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/render/raycasting/qray3d.cpp b/src/render/raycasting/qray3d.cpp
index d8ad25b50..18dd9a40a 100644
--- a/src/render/raycasting/qray3d.cpp
+++ b/src/render/raycasting/qray3d.cpp
@@ -101,7 +101,7 @@ QRay3D::QRay3D()
*/
QRay3D::QRay3D(const Vector3D &origin, const Vector3D &direction, float distance)
: m_origin(origin)
- , m_direction(direction)
+ , m_direction(direction.normalized())
, m_distance(distance)
{}
@@ -157,7 +157,7 @@ void QRay3D::setDirection(const Vector3D &value)
if (value.isNull())
return;
- m_direction = value;
+ m_direction = value.normalized();
}
float QRay3D::distance() const
@@ -178,14 +178,14 @@ Vector3D QRay3D::point(float t) const
QRay3D &QRay3D::transform(const Matrix4x4 &matrix)
{
m_origin = matrix * m_origin;
- m_direction = matrix.mapVector(m_direction);
+ m_direction = matrix.mapVector(m_direction).normalized();
return *this;
}
QRay3D QRay3D::transformed(const Matrix4x4 &matrix) const
{
- return QRay3D(matrix * m_origin, matrix.mapVector(m_direction));
+ return QRay3D(matrix * m_origin, matrix.mapVector(m_direction).normalized());
}
bool QRay3D::operator==(const QRay3D &other) const