+ //! Updates color of sub shape drawer
+ Standard_EXPORT virtual void SetColor (const Quantity_Color& theColor);
+
+ /// Change presentation to have given shape hidden.
+ /// It suports FACE type of the shape to be hidden.
+ /// If presentation type is greater than FACE, the SHELL with be shown with the FACE hidden
+ /// It is possible to hide more than one FACE by calling the method with given FACES
+ /// Visual state of the face is controlled by the second parameter
+ /// \param theShapes a container of shape objects
+ /// \returns true if the presentation is changed, or false (if for example it was hidden)
+ Standard_EXPORT bool setSubShapeHidden(const NCollection_List<TopoDS_Shape>& theShapes);
+
+ /// Returns true if parameter shape has been hidden
+ /// \param theShape sub-shape of the presentation shape
+ /// \return boolean value
+ Standard_EXPORT bool isSubShapeHidden(const TopoDS_Shape& theShape);
+
+ /// Returns true if there are no hidden sub shapes or original shape has at least one not hidden
+ /// \param theShapesToSkip container of shape to be hidden in the presentation (faces)
+ /// \return boolean value
+ Standard_EXPORT bool hasSubShapeVisible(const NCollection_List<TopoDS_Shape>& theShapesToSkip);
+
+ /// Set transparency of hidden sub shapes: if value is 1, shapes are entirely hidden
+ /// \param theTransparency transparency value
+ /// \return false if parameter is out of [0, 1]
+ Standard_EXPORT bool setHiddenSubShapeTransparency(double theTransparency);
+
+ Standard_EXPORT TopoDS_Shape originalShape() const { return myOriginalShape; }
+
+ Standard_EXPORT bool isSubstituted() const { return myIsSubstituted; }
+
+