Salome HOME
[PythonAPI] small fix
[modules/shaper.git] / src / PythonAPI / model / sketcher / circle.py
index a6a0134cb50f3cd6d6654cc9a2408c38e2b56033..b6ce45e8a33197fd84a3f922726f9428ad7958e6 100644 (file)
@@ -1,20 +1,30 @@
 """Sketch circle feature interface."""
 
 from GeomDataAPI import geomDataAPI_Point2D
+from model.roots import Interface
 
-class Circle():
+class Circle(Interface):
     """Interface for circle feature data manipulation."""
-
-    def __init__(self, circle_feature, x, y, r):
-        self._feature = circle_feature
+    def __init__(self, feature, x, y, radius):
+        Interface.__init__(self, feature)
+        assert(self._feature.getKind() == "SketchCircle")
+        
         self._center = geomDataAPI_Point2D(
             self._feature.data().attribute("CircleCenter")
             )
         self._radius = self._feature.data().real("CircleRadius")
-        self._center.setValue(x, y)
-        self._radius.setValue(r)
-        self._feature.execute()
+        self.setCenter(x, y)
+        self.setRadius(radius)
+        self.execute()
 
+    def setCenter(self, x, y):
+        """Set the center of the circle."""
+        self._center.setValue(x, y)
+        
+    def setRadius(self, radius):
+        """Set the radius of the circle."""
+        self._radius.setValue(radius)
+        
     def centerData(self):
         """Return center data."""
         return self._center