#include "FeaturesAPI_Placement.h"
+#include <ModelHighAPI_Dumper.h>
#include <ModelHighAPI_Tools.h>
//==================================================================================================
: ModelHighAPI_Interface(theFeature)
{
if(initialize()) {
- setObjects(theObjects);
- setStartShape(theStartShape);
- setEndShape(theEndShape);
- setReverseDirection(theReverseDirection);
+ fillAttribute(theObjects, myobjects);
+ fillAttribute(theStartShape, mystartShape);
+ fillAttribute(theEndShape, myendShape);
+ fillAttribute(theReverseDirection, myreverseDirection);
setCentering(theCentering);
}
}
execute();
}
-// TODO(spo): make add* as static functions of the class
+//==================================================================================================
+void FeaturesAPI_Placement::dump(ModelHighAPI_Dumper& theDumper) const
+{
+ FeaturePtr aBase = feature();
+ const std::string& aDocName = theDumper.name(aBase->document());
+
+ AttributeSelectionListPtr anAttrObjects =
+ aBase->selectionList(FeaturesPlugin_Placement::OBJECTS_LIST_ID());
+ AttributeSelectionPtr anAttrStartShape =
+ aBase->selection(FeaturesPlugin_Placement::START_SHAPE_ID());
+ AttributeSelectionPtr anAttrEndShape = aBase->selection(FeaturesPlugin_Placement::END_SHAPE_ID());
+ AttributeBooleanPtr anAttrReverse = aBase->boolean(FeaturesPlugin_Placement::REVERSE_ID());
+ AttributeBooleanPtr anAttrCentering = aBase->boolean(FeaturesPlugin_Placement::CENTERING_ID());
+
+ theDumper << aBase << " = model.addPlacement(" << aDocName << ", "
+ << anAttrObjects << ", " << anAttrStartShape << ", " << anAttrEndShape << ", "
+ << anAttrReverse << ", " << anAttrCentering << ")" << std::endl;
+}
+
//==================================================================================================
PlacementPtr addPlacement(const std::shared_ptr<ModelAPI_Document>& thePart,
const std::list<ModelHighAPI_Selection>& theObjects,