islset = libisl.isl_set_lexmax(islset)
return self._fromislset(islset, self.symbols)
- def num_parameters(self):
- """
- Return the total number of parameters, input, output or set dimensions.
- """
- islbset = self._toislbasicset(self.equalities, self.inequalities, self.symbols)
- num = libisl.isl_basic_set_dim(islbset, libisl.isl_dim_set)
- return num
- def involves_dims(self, dims):
+ def involves_vars(self, vars):
"""
- Returns true if set depends on given dimensions.
+ Returns true if a set depends on given dimensions.
"""
islset = self._toislset(self.polyhedra, self.symbols)
- dims = sorted(dims)
+ dims = sorted(vars)
symbols = sorted(list(self.symbols))
n = 0
if len(dims)>0:
Return a list of vertices for this Polygon.
"""
from .polyhedra import Polyhedron
+ if not self.isbounded():
+ raise ValueError('domain must be bounded')
islbset = self._toislbasicset(self.equalities, self.inequalities, self.symbols)
vertices = libisl.isl_basic_set_compute_vertices(islbset);
vertices = islhelper.isl_vertices_vertices(vertices)
return sorted(points, key=angles.get)
def faces(self):
+ """
+ Returns the vertices of the faces of a polyhedra.
+ """
faces = []
for polyhedron in self.polyhedra:
vertices = polyhedron.vertices()
axes.set_zlim(zmin, zmax)
return axes
+
def plot(self, plot=None, **kwargs):
"""
Display plot of this set.
return False
def subs(self, symbol, expression=None):
+ """
+ Subsitute the given value into an expression and return the resulting
+ expression.
+ """
polyhedra = [polyhedron.subs(symbol, expression)
for polyhedron in self.polyhedra]
return Domain(*polyhedra)