mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-25 09:32:37 +00:00
Fix transform matrix computation in Axis2Placement3D
This commit is contained in:
@@ -267,9 +267,9 @@ typedef item const* ptr;
|
|||||||
struct matrix4 : public item, public eigen_base<Eigen::Matrix4d> {
|
struct matrix4 : public item, public eigen_base<Eigen::Matrix4d> {
|
||||||
private:
|
private:
|
||||||
void init(const Eigen::Vector3d& o, const Eigen::Vector3d& z, const Eigen::Vector3d& x) {
|
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 Z = z.normalized();
|
||||||
|
auto Y = Z.cross(x).normalized();
|
||||||
|
auto X = Y.cross(Z);
|
||||||
components_ = new Eigen::Matrix4d;
|
components_ = new Eigen::Matrix4d;
|
||||||
(*components_) <<
|
(*components_) <<
|
||||||
X(0), Y(0), Z(0), o(0),
|
X(0), Y(0), Z(0), o(0),
|
||||||
|
|||||||
Reference in New Issue
Block a user