X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOMImpl%2FGEOMImpl_IMeasureOperations.hxx;fp=src%2FGEOMImpl%2FGEOMImpl_IMeasureOperations.hxx;h=d896b5da1adcd036b8d520c268e6dc8f379c58eb;hb=f190cc9ae627a8bd91983609a5b008fbdabad5d1;hp=827f695fff310e441679ea5952ac548558e1b196;hpb=89b8ea7bd712a14894636057019750c709de8970;p=modules%2Fgeom.git diff --git a/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx b/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx index 827f695ff..d896b5da1 100644 --- a/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx @@ -217,6 +217,28 @@ class GEOMImpl_IMeasureOperations : public GEOM_IOperations { Standard_EXPORT Standard_Real MinSurfaceCurvatureByPoint (Handle(GEOM_Object) theSurf, Handle(GEOM_Object) thePoint); + // Methods checking the shapes which are not applicable to modelling operations + typedef std::pair< Handle(GEOM_Object), Handle(GEOM_Object)> CoupleOfObjects; + struct FailedChecks + { + Standard_Integer TypeOfCheck; + CoupleOfObjects FailedShapes; + }; + + Standard_EXPORT std::list SelfIntersected2D(const std::list& theChecks); + Standard_EXPORT std::list InterferingSubshapes(const std::list& theChecks, + const int theShapeType1, + const int theShapeType2); + Standard_EXPORT Handle(TColStd_HSequenceOfTransient) SmallEdges(const std::list& theChecks); + Standard_EXPORT std::list DistantShapes(const std::list& theChecks, + const int theShapeType, + const int theSubShapeType, + double theTolerance); + Standard_EXPORT void CheckConformityShape(Handle(GEOM_Object) theShape, std::list& theChecks); + + Standard_EXPORT double ComputeTolerance(Handle(GEOM_Object) theEdge, Handle(GEOM_Object) theFace); + Standard_EXPORT double UpdateTolerance(Handle(GEOM_Object) theShape); + Standard_EXPORT Handle(GEOM_Object) SurfaceCurvatureByPointAndDirection (Handle(GEOM_Object) theSurf, Handle(GEOM_Object) thePoint,