- Throw and catch IfcExceptions while parsing

- Fix issues with left-handed IfcCartesianTransformationOperator3D [fixes #3405491 Issues with MappingTarget of IfcMappedItem]
This commit is contained in:
Thomas Krijnen
2011-10-13 11:25:59 +00:00
parent 34efb480d6
commit 6dbf618360
4 changed files with 1005 additions and 994 deletions
+2 -1
View File
@@ -139,7 +139,8 @@ bool IfcGeom::convert(const Ifc2x3::IfcCartesianTransformationOperator3D::ptr l,
if ( l->hasAxis2() ) IfcGeom::convert(l->Axis2(),axis2);
if ( l->hasAxis3() ) IfcGeom::convert(l->Axis3(),axis3);
else axis3 = axis1.Crossed(axis2);
const gp_Ax3 ax3 (origin,axis3,axis1);
gp_Ax3 ax3 (origin,axis3,axis1);
if ( axis2.Dot(ax3.YDirection()) < 0 ) ax3.YReverse();
trsf.SetTransformation(ax3);
trsf.Invert();
if ( l->hasScale() ) trsf.SetScaleFactor(l->Scale());