//! edge on the face.
Standard_EXPORT static void UpdateFaceUVPoints (const TopoDS_Face& theF);
- //! Removes all the triangulations of the faces of <S>
- //! and removes all polygons on triangulations of the
- //! edges.
+ //! Removes all cashed polygonal representation of the shape,
+ //! i.e. the triangulations of the faces of <S> and polygons on
+ //! triangulations and polygons 3d of the edges.
+ //! In case polygonal representation is the only available representation
+ //! for the shape (shape does not have geometry) it is not removed.
Standard_EXPORT static void Clean (const TopoDS_Shape& S);
//! Removes geometry (curves and surfaces) from all edges and faces of the shape
Standard_EXPORT static TopAbs_Orientation OriEdgeInFace(const TopoDS_Edge& theEdge,
const TopoDS_Face& theFace);
+ //! Removes internal sub-shapes from the shape.
+ //! The check on internal status is based on orientation of sub-shapes,
+ //! classification is not performed.
+ //! Before removal of internal sub-shapes the algorithm checks if such
+ //! removal is not going to break topological connectivity between sub-shapes.
+ //! The flag <theForce> if set to true disables the connectivity check and clears
+ //! the given shape from all sub-shapes with internal orientation.
+ Standard_EXPORT static void RemoveInternals (TopoDS_Shape& theS,
+ const Standard_Boolean theForce = Standard_False);
+
protected: