public class ForbiddenArea extends InternalConstraint
Constructor and Description |
---|
ForbiddenArea(Geost geost,
int[] origin,
int[] length)
It constructs an internal constraint forbidding an object to be
placed within this aread.
|
Modifier and Type | Method and Description |
---|---|
int[] |
AbsInfeasible(Geost.SweepDirection minlex)
It provides the largest or smallest point contained in the forbidden area represented by this
constraint.
|
int |
cardInfeasible()
It provides an approximation of the number of infeasible points enforced by this constraint only.
|
String |
checkInvariants()
It checks whether the ForbiddenArea is consistent.
|
Collection<Var> |
definingVariables()
It provides a collection, possibly empty, of variables which define this constraint.
|
DBox |
isFeasible(Geost.SweepDirection min,
LexicographicalOrder order,
GeostObject o,
int currentShape,
int[] c)
It determines whether the given point is a feasible origin of object o, considering
this constraint only.
|
boolean |
isSingleUse()
In some cases, a constraint is used only once per sweep direction on a path
from root to leaf in the search tree.
|
boolean |
isStatic()
It provides information about the constraint future.
|
public ForbiddenArea(Geost geost, int[] origin, int[] length)
geost
- the geost constraint in which this internal constraint exists.origin
- the origin of the forbidden area.length
- the length of the forbidden area.public String checkInvariants()
public DBox isFeasible(Geost.SweepDirection min, LexicographicalOrder order, GeostObject o, int currentShape, int[] c)
InternalConstraint
isFeasible
in class InternalConstraint
min
- the direction of the sweeporder
- the order to be usedo
- the object the constraint is applied tocurrentShape
- the shape id that is currently considered for oc
- the current position of the sweep.public int[] AbsInfeasible(Geost.SweepDirection minlex)
InternalConstraint
AbsInfeasible
in class InternalConstraint
minlex
- defines whether the maximal or minimal point should be returnedpublic final int cardInfeasible()
InternalConstraint
cardInfeasible
in class InternalConstraint
public Collection<Var> definingVariables()
InternalConstraint
definingVariables
in class InternalConstraint
public boolean isStatic()
InternalConstraint
isStatic
in class InternalConstraint
public boolean isSingleUse()
InternalConstraint
isSingleUse
in class InternalConstraint
Copyright © 2015. All rights reserved.