mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-11 06:18:09 +00:00
Retain non-uniform scaling by assigning to gtrsf mat directly #6841
This commit is contained in:
@@ -204,12 +204,12 @@ IfcGeom::ConversionResultShape* IfcGeom::Representation::BRep::as_compound(bool
|
|||||||
if (it->Placement()->components_) {
|
if (it->Placement()->components_) {
|
||||||
gp_Trsf tr;
|
gp_Trsf tr;
|
||||||
const auto& m = it->Placement()->ccomponents();
|
const auto& m = it->Placement()->ccomponents();
|
||||||
tr.SetValues(
|
trsf.SetVectorialPart(gp_Mat(
|
||||||
m(0, 0), m(0, 1), m(0, 2), m(0, 3),
|
m(0, 0), m(0, 1), m(0, 2),
|
||||||
m(1, 0), m(1, 1), m(1, 2), m(1, 3),
|
m(1, 0), m(1, 1), m(1, 2),
|
||||||
m(2, 0), m(2, 1), m(2, 2), m(2, 3)
|
m(2, 0), m(2, 1), m(2, 2)
|
||||||
);
|
));
|
||||||
trsf = tr;
|
trsf.SetTranslationPart(gp_XYZ(m(0, 3), m(1, 3), m(2, 3)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!force_meters && settings().get<ifcopenshell::geometry::settings::ConvertBackUnits>().get()) {
|
if (!force_meters && settings().get<ifcopenshell::geometry::settings::ConvertBackUnits>().get()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user