Skip to content
Snippets Groups Projects
Commit 17a9b830 authored by Johannes Junggeburth's avatar Johannes Junggeburth :dog2:
Browse files

GeoShapeShift - Collapse a chain of GeoShapeShifts into one

parent 8d7262c8
No related branches found
No related tags found
1 merge request!248GeoShapeShift - Collapse a chain of GeoShapeShifts into one
......@@ -9,7 +9,15 @@ const std::string GeoShapeShift::s_classType = "Shift";
const ShapeType GeoShapeShift::s_classTypeID = 0x03;
GeoShapeShift::GeoShapeShift (const GeoShape* A, const GeoTrf::Transform3D &X):
m_op{A}, m_shift{X} {}
m_op{A}, m_shift{X} {
/// Check whether the given shape also a shape shift. If so then we can simply
/// take the operand of the sub shift and summarize the transformations of the two into one
if (getOp()->typeID() == typeID()) {
const GeoShapeShift* subShift{static_cast<const GeoShapeShift*>(getOp())};
m_shift = subShift->getX() * getX();
m_op.reset(subShift->getOp());
}
}
void GeoShapeShift::extent (double& xmin, double& ymin, double& zmin,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment