import functools
from salome.geom.gsketcher import Sketcher3D, Sketcher2D, Polyline2D
+from salome.geom.canonicalrecognition import CanonicalRecognition
+from salome.geom.conformity import CheckConformity
+from salome.geom.proximity import ShapeProximity
# In case the omniORBpy EnumItem class does not fully support Python 3
# (for instance in version 4.2.1-2), the comparison ordering methods must be
return aKindTuple
+ ## The function takes a single face with holes and returns a list of faces,
+ # first of them is the original face without holes, and the other faces are placed
+ # on the same surface as the original face but bounded by each hole wire.
+ # If the original face has no holes, it will be returned as an output
+ # @param theShape Face to perform operation on.
+ #
+ # @return GEOM.ListOfGO, list created faces, where first of them is the original face without holes
+ @ManageTransactions("MeasuOp")
+ def PatchFace(self, theShape):
+ """
+ The function takes a single face with holes and returns a list of faces,
+ first of them is the original face without holes, and the other faces are placed
+ on the same surface as the original face but bounded by each hole wire.
+ If the original face has no holes, it will be returned as an output
+
+ Parameters:
+ theShape Face to perform operation on.
+
+ Returns:
+ GEOM.ListOfGO, list created faces, where first of them is the original face without holes
+
+ Example of usage:
+ Circle_1 = geompy.MakeCircle(None, None, 190)
+ Circle_2 = geompy.MakeCircle(None, None, 100)
+ Face_1 = geompy.MakeFaceWires([Circle_1], 1)
+ Face_2 = geompy.MakeFaceWires([Circle_2], 1)
+ Cut_1 = geompy.MakeCutList(Face_1, [Face_2], True)
+ faces = geompy.PatchFace(Cut_1)
+ """
+ aList = self.MeasuOp.PatchFace(theShape)
+ RaiseIfFailed("PatchFace", self.MeasuOp)
+ return aList
+
## Returns the string that describes if the shell is good for solid.
# This is a support method for MakeSolid.
#
aDescr = self.MeasuOp.IsGoodForSolid(theShell)
return aDescr
+ ## Obtain a canonical recognition interface.
+ # @return An instance of
+ # @ref canonicalrecognition.CanonicalRecognition "CanonicalRecognition" interface
+ #
+ # @ref tui_3dsketcher_page "Example"
+ def CanonicalRecognition (self):
+ """
+ Obtain a canonical recognition interface.
+
+ Example of usage:
+ cr = geompy.CanonicalRecognition()
+ cr.isLine(aLine, tolerance)
+ """
+ cr = CanonicalRecognition (self)
+ return cr
+
# end of l2_measure
## @}
RaiseIfFailed("Tesselate", self.TestOp)
return r
+ ## Obtain a shape checker
+ # @return An instance of @ref conformity.CheckConformity "CheckConformity" interface
+ #
+ # @ref tui_conformity_page "Example"
+ def CheckConformity (self, shape):
+ """
+ Obtain a shape checker.
+
+ Example of usage:
+ conf = geompy.CheckConformity(shape)
+ valid = conf.isValid()
+ si2d = conf.selfIntersected2D()
+ dist = conf.distantShapes()
+ small = conf.smallEdges()
+ interfer = cc.interferingSubshapes()
+ """
+ conf = CheckConformity (shape, self)
+ return conf
+
+ ## Obtain a shape proximity calculator
+ # @return An instance of @ref proximity.ShapeProximity "ShapeProximity" interface
+ #
+ # @ref tui_proximity_page "Example"
+ def ShapeProximity (self):
+ """
+ Obtain a shape proximity calculator.
+
+ Example of usage:
+ prox = geompy.ShapeProximity()
+ value = prox.proximity(shape1, shape2)
+ """
+ prox = ShapeProximity (self)
+ return prox
+
# end of l2_testing
## @}