1 // File: GeomAPI_Shape.hxx
2 // Created: 23 Apr 2014
3 // Author: Mikhail PONIKAROV
5 #ifndef GeomAPI_Shape_H_
6 #define GeomAPI_Shape_H_
8 #include <GeomAPI_Interface.h>
12 /**\class GeomAPI_Shape
14 * \brief Interface to the topological shape object
16 class GEOMAPI_EXPORT GeomAPI_Shape : public GeomAPI_Interface
19 /// Creation of empty (null) shape
24 /// Returns whether the shapes are equal
25 virtual bool isEqual(const std::shared_ptr<GeomAPI_Shape> theShape) const;
27 /// Returns whether the shape is a vertex
28 virtual bool isVertex() const;
30 /// Returns whether the shape is an edge
31 virtual bool isEdge() const;
33 /// Returns whether the shape is a face
34 virtual bool isFace() const;
38 //! Pointer on list of shapes
39 typedef std::list<std::shared_ptr<GeomAPI_Shape> > ListOfShape;
41 //! Pointer on attribute object
42 typedef std::shared_ptr<GeomAPI_Shape> GeomShapePtr;