1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: FeaturesPlugin_RevolutionBoolean.h
4 // Created: 11 June 2015
5 // Author: Dmitry Bobylev
7 #ifndef FeaturesPlugin_RevolutionBoolean_H_
8 #define FeaturesPlugin_RevolutionBoolean_H_
10 #include "FeaturesPlugin_Revolution.h"
11 #include "FeaturesPlugin_CompositeBoolean.h"
13 /// \class FeaturesPlugin_RevolutionBoolean
15 /// \brief Interface for the composite revolution feature.
16 class FeaturesPlugin_RevolutionBoolean : public FeaturesPlugin_Revolution,
17 public FeaturesPlugin_CompositeBoolean
20 /// Request for initialization of data model of the feature: adding all attributes.
21 FEATURESPLUGIN_EXPORT virtual void initAttributes();
24 FeaturesPlugin_RevolutionBoolean(){};
26 // Creates revolutions.
27 bool makeGeneration(ListOfShape& theBaseShapes,
28 ListOfMakeShape& theMakeShapes);
30 /// Stores generation history.
31 void storeGenerationHistory(ResultBodyPtr theResultBody,
32 const GeomShapePtr theBaseShape,
33 const std::shared_ptr<GeomAlgoAPI_MakeShape> theMakeShape,