Add plot method
[linpy.git] / pypol / domains.py
index 44c38e7..375be85 100644 (file)
@@ -268,24 +268,20 @@ class Domain:
         points = {}
         num = 0
         vertices_points = []
-        symbols = list(self.symbols)
         for vertex in vertices:
-            expr = libisl.isl_vertex_get_expr(vertex); #make vertices a bset
             if islhelper.isl_version < '0.13':
+                expr = libisl.isl_vertex_get_expr(vertex)
                 constraints = islhelper.isl_basic_set_constraints(expr) #get bset constraints
-                for dim in symbols:
-                    index = symbols.index(dim)
-                    for c in constraints: #for each constraint 
-                        constant = libisl.isl_constraint_get_constant_val(c) #get contant value
+                for index, dim in enumerate(self.symbols):
+                    for c in constraints: #for each constraint
+                        constant = libisl.isl_constraint_get_constant_val(c) #get constant value
                         constant = islhelper.isl_val_to_int(constant)
                         coefficient = libisl.isl_constraint_get_coefficient_val(c,libisl.isl_dim_set, index)
                         coefficient = islhelper.isl_val_to_int(coefficient) #get coefficient
                         if coefficient != 0:
-                            num = Fraction(constant, coefficient)
-                        points.update({dim:num})
-                vertices_points.append(points)
-                print(points)
-                    
+                            num = -Fraction(constant, coefficient)
+                            points[dim]= float(num)
+                vertices_points.append(points.copy())
             else:
                 points = []
                 string = islhelper.isl_multi_aff_to_str(expr)