#include <GeomAPI_Shape.h>
#include <GeomAPI_Dir.h>
#include <GeomAPI_Face.h>
+#include <GeomAPI_Trsf.h>
#include <GeomAlgoAPI_MakeShape.h>
#include <GeomAPI_DataMapOfShapeShape.h>
#include <memory>
* \param[in] theDestShape destination object
* \param[in] theIsReverse indicates that the solid materials should be on the same side against the destination plane
* \param[in] theIsCentering indicates the planes should be centered
+ * \param[in] theSimpleTransform makes just transformation of shape without changing of topology or geometry
*/
GEOMALGOAPI_EXPORT GeomAlgoAPI_Placement(std::shared_ptr<GeomAPI_Shape> theSourceSolid,
std::shared_ptr<GeomAPI_Shape> theDestSolid,
std::shared_ptr<GeomAPI_Shape> theSourceShape,
std::shared_ptr<GeomAPI_Shape> theDestShape,
bool theIsReverse = false,
- bool theIsCentering = false);
+ bool theIsCentering = false,
+ bool theSimpleTransform = false);
/// Returns True if algorithm succeed
GEOMALGOAPI_EXPORT const bool isDone() const
/// Return interface for for History processing
GEOMALGOAPI_EXPORT GeomAlgoAPI_MakeShape* makeShape () const;
+ /// Returns the simple transformation
+ GEOMALGOAPI_EXPORT std::shared_ptr<GeomAPI_Trsf> transformation() const;
+
/// Destructor
GEOMALGOAPI_EXPORT virtual ~GeomAlgoAPI_Placement();
const std::shared_ptr<GeomAPI_Shape>& theSourceShape,
const std::shared_ptr<GeomAPI_Shape>& theDestShape,
bool theIsReverse,
- bool theIsCentering);
+ bool theIsCentering,
+ bool theSimpleTransform);
/// fields
bool myDone;
std::shared_ptr<GeomAPI_Shape> myShape;
GeomAPI_DataMapOfShapeShape myMap;
GeomAlgoAPI_MakeShape * myMkShape;
+ std::shared_ptr<GeomAPI_Trsf> myTrsf; ///< transformation of the shape in case theSimpleTransform
};
#endif