20 #ifndef GeomAlgoAPI_ShapeBuilder_H_
21 #define GeomAlgoAPI_ShapeBuilder_H_
23 #include "GeomAlgoAPI.h"
24 #include "GeomAlgoAPI_MakeShapeList.h"
26 #include <GeomAPI_Shape.h>
37 GEOMALGOAPI_EXPORT
static void add(std::shared_ptr<GeomAPI_Shape> theShape,
38 const std::shared_ptr<GeomAPI_Shape> theShapeToAdd);
43 GEOMALGOAPI_EXPORT
static void remove(std::shared_ptr<GeomAPI_Shape> theShape,
44 const std::shared_ptr<GeomAPI_Shape> theShapeToRemove);
51 GEOMALGOAPI_EXPORT
void removeInternal(
const std::shared_ptr<GeomAPI_Shape> theShape);
56 GEOMALGOAPI_EXPORT
void addInternal(
const std::shared_ptr<GeomAPI_Shape> theShape,
57 const ListOfShape& theShapesToAdd);
List of topological shapes constructions.
Definition: GeomAlgoAPI_MakeShapeList.h:33
Allows to add or remove subshapes from a shape.
Definition: GeomAlgoAPI_ShapeBuilder.h:32
void removeInternal(const std::shared_ptr< GeomAPI_Shape > theShape)
Store new shape as result of removing internal shapes from theShape.
Definition: GeomAlgoAPI_ShapeBuilder.cpp:74
static void remove(std::shared_ptr< GeomAPI_Shape > theShape, const std::shared_ptr< GeomAPI_Shape > theShapeToRemove)
Removes theShapeToRemove in theShape.
Definition: GeomAlgoAPI_ShapeBuilder.cpp:54
static void add(std::shared_ptr< GeomAPI_Shape > theShape, const std::shared_ptr< GeomAPI_Shape > theShapeToAdd)
Adds theShapeToAdd in theShape.
Definition: GeomAlgoAPI_ShapeBuilder.cpp:38
GeomAlgoAPI_ShapeBuilder()
Creates empty builder.
Definition: GeomAlgoAPI_ShapeBuilder.cpp:69
void addInternal(const std::shared_ptr< GeomAPI_Shape > theShape, const ListOfShape &theShapesToAdd)
Store new shape as result of adding theShapesToAdd to theShape as internal shapes.
Definition: GeomAlgoAPI_ShapeBuilder.cpp:123