Skip to content

Commit

Permalink
Apparent fix to cant placement matrix
Browse files Browse the repository at this point in the history
  • Loading branch information
RickBrice committed Apr 15, 2024
1 parent 969b738 commit e946e34
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 3 deletions.
6 changes: 3 additions & 3 deletions src/ifcgeom/mapping/IfcCurveSegment.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -275,10 +275,10 @@ class cant_adjuster : public GEOMETRY_ADJUSTER {
double cant = parent_curve_point.col(3)(1);
auto tilt = -atan2(fabs(h), cant);

// Create a transformation matrix
// Create a transformation matrix for twist about the RefDirection (x-axis)
Eigen::Matrix4d m = Eigen::Matrix4d::Identity();
m.col(2)(1) = cos(tilt);
m.col(2)(2) = sin(tilt);
m.col(2)(2) = cos(tilt);
m.col(2)(3) = sin(tilt);

// apply cant tilt to the parent curve point
Eigen::Matrix4d p = m * parent_curve_point;
Expand Down
1 change: 1 addition & 0 deletions src/ifcgeom/mapping/IfcFixedReferenceSweptAreaSolid.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcFixedReferenceSweptAreaSolid
ss << m4;
auto s = ss.str();
std::wcout << s.c_str() << std::endl;
std::wcout << "determinant: " << m4.determinant() << std::endl;

Eigen::Matrix4d m4b = Eigen::Matrix4d::Identity();
bool is_directrix_derived = false;
Expand Down

0 comments on commit e946e34

Please sign in to comment.