Salome HOME
Merge branch 'python_parametric_api' of https://git.salome-platform.org/git/modules...
[modules/shaper.git] / src / PythonAPI / model / sketcher / arc.py
index e4d12e3bae84fe89ea70c97da5cfd239ce36447c..0a7ae432dc7be7bb0484d68f10aa37590bf6eb39 100644 (file)
@@ -9,7 +9,7 @@ class Arc(Interface):
     def __init__(self, feature, *args):
         Interface.__init__(self, feature)
         assert(self._feature.getKind() == "SketchArc")
-        
+
         self._center = geomDataAPI_Point2D(
             self._feature.data().attribute("ArcCenter")
             )
@@ -27,15 +27,42 @@ class Arc(Interface):
             raise WrongNumberOfArguments(
                 "Arc takes 3 or 6 arguments (%s given)" % len(args)
                 )
+        self.execute()
+        
+    ########
+    #
+    # Set methods
+    #
+    ########
+    
+    def setCenter(self, x, y):
+        """Set arc center."""
+        self._center.setValue(x, y)
+        
+    def setStartPoint(self, x, y):
+        """Set start point."""
+        self._start_point.setValue(x, y)
+        
+    def setEndPoint(self, x, y):
+        """Set end point value."""
+        self._end_point.setValue(x, y)
+        
+    
+    ########
+    #
+    # Getters
+    #
+    ########
+
 
     def centerData(self):
         """Return the center point data."""
         return self._center
-    
+
     def startPointData(self):
         """Return the start point data."""
         return self._start_point
-    
+
     def endPointData(self):
         """Return the end point data."""
         return self._end_point
@@ -43,30 +70,25 @@ class Arc(Interface):
     def result(self):
         """Return the arc circular line attribute."""
         return self._feature.lastResult()
-    
+
+
     ########
     #
     # Private methods
     #
     ########
-    
-    def __createByCoordinates(self, center_x, center_y, 
-                              start_x, start_y, 
+
+
+    def __createByCoordinates(self, center_x, center_y,
+                              start_x, start_y,
                               end_x, end_y):
         """Create an arc by point coordinates."""
-        self._center.setValue(center_x, center_y)
-        self._start_point.setValue(start_x, start_y)
-        self._end_point.setValue(end_x, end_y)
-        self._feature.execute()
-        
+        self.setCenter(center_x, center_y)
+        self.setStartPoint(start_x, start_y)
+        self.setEndPoint(end_x, end_y)
+
     def __createByPoints(self, center, start, end):
         """Create an arc with point objects."""
-        self._center.setValue(center.x(), center.y())
-        self._start_point.setValue(start.x(), start.y())
-        self._end_point.setValue(end.x(), end.y())
-        self._feature.execute()
-        
-        
-        
-        
-        
+        self.setCenter(center.x(), center.y())
+        self.setStartPoint(start.x(), start.y())
+        self.setEndPoint(end.x(), end.y())