From 4bee713455a571b16808eafad865e25d2c778c2a Mon Sep 17 00:00:00 2001 From: Kipre Date: Tue, 28 Jan 2025 22:26:20 +0100 Subject: [PATCH] Fix transform matrix computation in Axis2Placement3D --- src/ifcgeom/taxonomy.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ifcgeom/taxonomy.h b/src/ifcgeom/taxonomy.h index f109863fdf..4f73f10a66 100644 --- a/src/ifcgeom/taxonomy.h +++ b/src/ifcgeom/taxonomy.h @@ -267,9 +267,9 @@ typedef item const* ptr; struct matrix4 : public item, public eigen_base { private: void init(const Eigen::Vector3d& o, const Eigen::Vector3d& z, const Eigen::Vector3d& x) { - auto X = x.normalized(); - auto Y = z.cross(x).normalized(); auto Z = z.normalized(); + auto Y = Z.cross(x).normalized(); + auto X = Y.cross(Z); components_ = new Eigen::Matrix4d; (*components_) << X(0), Y(0), Z(0), o(0),