|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.ObjectJaCoP.constraints.DecomposedConstraint
JaCoP.constraints.Constraint
JaCoP.constraints.Diff
public class Diff
Diff constraint assures that any two rectangles from a vector of rectangles does not overlap in at least one direction. It is a simple implementation which does not use sophisticated techniques for efficient backtracking.
| Field Summary | |
|---|---|
boolean |
doProfile
It specifies if the constraint should compute and use the profile. |
Rectangle[] |
rectangles
It specifies the list of rectangles which are of interest for this diff constraint. |
static java.lang.String[] |
xmlAttributes
It specifies the arguments required to be saved by an XML format as well as the constructor being called to recreate an object from an XML format. |
| Fields inherited from class JaCoP.constraints.Constraint |
|---|
atomicExecution, consistencyPruningEvents, earlyTerminationOK, id, increaseWeight, numberArgs, numberId |
| Fields inherited from class JaCoP.constraints.DecomposedConstraint |
|---|
queueIndex |
| Constructor Summary | |
|---|---|
Diff(java.util.ArrayList<? extends java.util.ArrayList<? extends IntVar>> rectangles)
It specifies a diffn constraint. |
|
Diff(java.util.ArrayList<? extends java.util.ArrayList<? extends IntVar>> rectangles,
boolean profile)
It specifies a diff constraint. |
|
Diff(java.util.ArrayList<? extends IntVar> o1,
java.util.ArrayList<? extends IntVar> o2,
java.util.ArrayList<? extends IntVar> l1,
java.util.ArrayList<? extends IntVar> l2)
It constructs a diff constraint. |
|
Diff(java.util.ArrayList<? extends IntVar> o1,
java.util.ArrayList<? extends IntVar> o2,
java.util.ArrayList<? extends IntVar> l1,
java.util.ArrayList<? extends IntVar> l2,
boolean profile)
It constructs a diff constraint. |
|
Diff(IntVar[][] rectangles)
It specifies a diff constraint. |
|
Diff(IntVar[][] rectangles,
boolean profile)
It specifies a diff constraint. |
|
Diff(IntVar[] origin1,
IntVar[] origin2,
IntVar[] length1,
IntVar[] length2)
It constructs a diff constraint. |
|
Diff(IntVar[] o1,
IntVar[] o2,
IntVar[] l1,
IntVar[] l2,
boolean profile)
It constructs a diff constraint. |
|
Diff(Rectangle[] rectangles,
boolean doProfile)
It specifies a diff constraint. |
|
| Method Summary | |
|---|---|
java.util.ArrayList<Var> |
arguments()
It returns the variables in a scope of the constraint. |
void |
consistency(Store store)
It is a (most probably incomplete) consistency function which removes the values from variables domains. |
int |
getConsistencyPruningEvent(Var var)
It retrieves the pruning event which causes reevaluation of the constraint. |
java.lang.String |
id()
It gives the id string of a constraint. |
void |
impose(Store store)
It imposes the constraint in a given store. |
void |
increaseWeight()
It increases the weight of the variables in the constraint scope. |
void |
queueVariable(int level,
Var V)
This is a function called to indicate which variable in a scope of constraint has changed. |
void |
removeConstraint()
It removes the constraint by removing this constraint from all variables. |
void |
removeLevel(int level)
This function is called in case of the backtrack, so a constraint can clear the queue of changed variables which is no longer valid. |
boolean |
satisfied()
It checks if the constraint is satisfied. |
java.lang.String |
toString()
It produces a string representation of a constraint state. |
| Methods inherited from class JaCoP.constraints.Constraint |
|---|
cleanAfterFailure, decompose, getGuideConstraint, getGuideValue, getGuideVariable, impose, imposeDecomposition, numberArgs, removeLevelLate, requiresMonotonicity, setConsistencyPruningEvent, supplyGuideFeedback |
| Methods inherited from class JaCoP.constraints.DecomposedConstraint |
|---|
auxiliaryVariables, imposeDecomposition |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public Rectangle[] rectangles
public boolean doProfile
public static java.lang.String[] xmlAttributes
| Constructor Detail |
|---|
public Diff(Rectangle[] rectangles,
boolean doProfile)
rectangles - list of rectangles which can not overlap in at least one dimension.doProfile - should the constraint compute and use the profile functionality.public Diff(IntVar[][] rectangles)
rectangles - list of rectangles which can not overlap in at least one dimension.
public Diff(IntVar[] o1,
IntVar[] o2,
IntVar[] l1,
IntVar[] l2,
boolean profile)
o1 - list of variables denoting origin of the rectangle in the first dimension.o2 - list of variables denoting origin of the rectangle in the second dimension.l1 - list of variables denoting length of the rectangle in the first dimension.l2 - list of variables denoting length of the rectangle in the second dimension.profile - it specifies if the profile should be computed and used.
public Diff(IntVar[] origin1,
IntVar[] origin2,
IntVar[] length1,
IntVar[] length2)
origin1 - list of variables denoting origin of the rectangle in the first dimension.origin2 - list of variables denoting origin of the rectangle in the second dimension.length1 - list of variables denoting length of the rectangle in the first dimension.length2 - list of variables denoting length of the rectangle in the second dimension.public Diff(java.util.ArrayList<? extends java.util.ArrayList<? extends IntVar>> rectangles)
rectangles - list of rectangles which can not overlap in at least one dimension.
public Diff(java.util.ArrayList<? extends java.util.ArrayList<? extends IntVar>> rectangles,
boolean profile)
profile - specifies is the profiles are used.rectangles - list of rectangles which can not overlap in at least one dimension.
public Diff(java.util.ArrayList<? extends IntVar> o1,
java.util.ArrayList<? extends IntVar> o2,
java.util.ArrayList<? extends IntVar> l1,
java.util.ArrayList<? extends IntVar> l2)
o1 - list of variables denoting origin of the rectangle in the first dimension.o2 - list of variables denoting origin of the rectangle in the second dimension.l1 - list of variables denoting length of the rectangle in the first dimension.l2 - list of variables denoting length of the rectangle in the second dimension.
public Diff(java.util.ArrayList<? extends IntVar> o1,
java.util.ArrayList<? extends IntVar> o2,
java.util.ArrayList<? extends IntVar> l1,
java.util.ArrayList<? extends IntVar> l2,
boolean profile)
o1 - list of variables denoting origin of the rectangle in the first dimension.o2 - list of variables denoting origin of the rectangle in the second dimension.l1 - list of variables denoting length of the rectangle in the first dimension.l2 - list of variables denoting length of the rectangle in the second dimension.profile - it specifies if the profile should be computed and used.
public Diff(IntVar[][] rectangles,
boolean profile)
profile - specifies is the profiles are used.rectangles - list of rectangles which can not overlap in at least one dimension.| Method Detail |
|---|
public java.util.ArrayList<Var> arguments()
Constraint
arguments in class Constraintpublic void removeLevel(int level)
Constraint
removeLevel in class Constraintlevel - the level which is being removed.public void consistency(Store store)
Constraint
consistency in class Constraintstore - constraint store within which the constraint consistency is being checked.public int getConsistencyPruningEvent(Var var)
Constraint
getConsistencyPruningEvent in class Constraintvar - variable for which pruning event is retrieved
public java.lang.String id()
Constraint
id in class Constraintpublic void impose(Store store)
Constraint
impose in class Constraintstore - the constraint store to which the constraint is imposed to.
public void queueVariable(int level,
Var V)
Constraint
queueVariable in class Constraintlevel - the level of the store at which the change has occurred.V - variable which has changed.public void removeConstraint()
Constraint
removeConstraint in class Constraintpublic boolean satisfied()
Constraint
satisfied in class Constraintpublic java.lang.String toString()
Constraint
toString in class Constraintpublic void increaseWeight()
Constraint
increaseWeight in class Constraint
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||