-// Copyright (C) 2014-2021 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2024 CEA, EDF
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
#include <map>
#include <set>
#ifdef WIN32
- #include<array>
-#endif WIN32
+#include<array>
+#endif
class GeomAPI_Ax1;
class GeomAPI_Edge;
const GeomShapePtr& theShape2,
std::array<double, 3> & fromShape1To2);
+ /// \brief Calculate maximal value of all possible distances between shapes.
+ /// The shapes can be two edges or two faces only.
+ GEOMALGOAPI_EXPORT static double shapeProximity(const GeomShapePtr& theShape1,
+ const GeomShapePtr& theShape2);
+
/// \brief Combines faces with common edges to shells, or solids to compsolids.
/// \param[in] theCompound compound of shapes.
/// \param[in] theType type of combine.
const ListOfShape& theBaseShapes,
const std::shared_ptr<GeomAPI_Dir> theDir,
double& theToSize, double& theFromSize);
+
+ /// \brief Get shared faces of a shape
+ /// \param[in] theShape shape that should be exploded
+ /// \return list of shared faces
+ GEOMALGOAPI_EXPORT static ListOfShape getSharedFaces(const GeomShapePtr& theShape);
};
#endif