]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/PythonAPI/model/sketcher/tools.py
Salome HOME
Revert "Merge branch 'Pre_2.8.0_development'"
[modules/shaper.git] / src / PythonAPI / model / sketcher / tools.py
index e93fec49cda0fe4247cce01accb5155b426f2e16..de3032f54d16bae221e821bfa78cb0d68c397e36 100644 (file)
@@ -19,9 +19,7 @@
 ##
 
 import ModelHighAPI
-from GeomDataAPI import *
-from ModelAPI import *
-import math
+import GeomDataAPI
 
 def addPolyline(sketch, *coords):
     """Add a poly-line to sketch.
@@ -71,45 +69,19 @@ def dof(sketch):
     return int(filter(str.isdigit, aSketch.string("SolverDOF").value()))
 
 def distancePointPoint(thePoint1, thePoint2):
-    aPnt1 = toList(thePoint1)
-    aPnt2 = toList(thePoint2)
-    return math.hypot(aPnt1[0] - aPnt2[0], aPnt1[1] - aPnt2[1])
-
-def distancePointLine(thePoint, theLine):
-    aPoint = toList(thePoint)
-    aLine = toSketchFeature(theLine)
-
-    aLineStart = geomDataAPI_Point2D(aLine.attribute("StartPoint")).pnt().xy()
-    aLineEnd = geomDataAPI_Point2D(aLine.attribute("EndPoint")).pnt().xy()
-    aLineDir = aLineEnd.decreased(aLineStart)
-    aLineLen = aLineEnd.distance(aLineStart)
-    aCross = (aPoint[0] - aLineStart.x()) * aLineDir.y() - (aPoint[1] - aLineStart.y()) * aLineDir.x()
-    return math.fabs(aCross / aLineLen)
+    aGeomPnt1 = thePoint1
+    aGeomPnt2 = thePoint2
+    if issubclass(type(thePoint1), GeomDataAPI.GeomDataAPI_Point2D):
+        aGeomPnt1 = thePoint1.pnt()
+    if issubclass(type(thePoint2), GeomDataAPI.GeomDataAPI_Point2D):
+        aGeomPnt2 = thePoint2.pnt()
+    return aGeomPnt1.distance(aGeomPnt2)
 
 def lastSubFeature(theSketch, theKind):
     """
     obtains last feature of given kind from the sketch
     """
-    aSketch = featureToCompositeFeature(toSketchFeature(theSketch))
-    for anIndex in range(aSketch.numberOfSubs() - 1, -1, -1):
-        aSub = aSketch.subFeature(anIndex)
+    for anIndex in range(theSketch.numberOfSubs() - 1, -1, -1):
+        aSub = theSketch.subFeature(anIndex)
         if (aSub.getKind() == theKind):
             return aSub
-
-def toSketchFeature(theEntity):
-    """ Converts entity to sketch feature if possible
-    """
-    if issubclass(type(theEntity), ModelHighAPI.ModelHighAPI_Interface):
-        return theEntity.feature()
-    else:
-        return theEntity
-
-def toList(thePoint):
-    if issubclass(type(thePoint), list):
-        return thePoint
-    elif issubclass(type(thePoint), GeomDataAPI_Point2D):
-        return [thePoint.x(), thePoint.y()]
-    else:
-        aFeature = toSketchFeature(thePoint)
-        aPoint = geomDataAPI_Point2D(aFeature.attribute("PointCoordinates"))
-        return [aPoint.x(), aPoint.y()]