public class Diffn extends Nooverlap
Modifier and Type  Field and Description 

protected List<Var> 
auxVar 
protected List<Constraint> 
constraints 
atomicExecution, consistencyPruningEvents, constraintScope, earlyTerminationOK, increaseWeight, numberId, scope
queueIndex
Constructor and Description 

Diffn(IntVar[][] rectangles)
It specifies a diff constraint.

Diffn(IntVar[][] rectangles,
boolean strict)
It specifies a diff constraint.

Diffn(IntVar[] origin1,
IntVar[] origin2,
IntVar[] length1,
IntVar[] length2)
It constructs a diff constraint.

Diffn(IntVar[] origin1,
IntVar[] origin2,
IntVar[] length1,
IntVar[] length2,
boolean strict)
It constructs a diff constraint.

Diffn(List<? extends IntVar> o1,
List<? extends IntVar> o2,
List<? extends IntVar> l1,
List<? extends IntVar> l2)
It constructs a diff constraint.

Diffn(List<? extends IntVar> o1,
List<? extends IntVar> o2,
List<? extends IntVar> l1,
List<? extends IntVar> l2,
boolean strict)
It constructs a diff constraint.

Diffn(List<? extends List<? extends IntVar>> rectangles)
It specifies a diffn constraint.

Diffn(List<? extends List<? extends IntVar>> rectangles,
boolean strict)
It specifies a diffn constraint.

Modifier and Type  Method and Description 

List<Var> 
auxiliaryVariables() 
void 
consistency(Store store)
It is a (most probably incomplete) consistency function which removes the
values from variables domains.

List<Constraint> 
decompose(Store store)
It returns an array list of constraint which are used to decompose this
constraint.

void 
imposeDecomposition(Store store)
It imposes DiffnDecomposed in a given store.

String 
toString()
It produces a string representation of a constraint state.

getDefaultConsistencyPruningEvent, impose, notSatisfied, satisfied
afc, arguments, cleanAfterFailure, getConsistencyPruningEvent, getGuideConstraint, getGuideValue, getGuideVariable, grounded, grounded, id, impose, increaseWeight, intArrayToString, long2int, numberArgs, queueVariable, removeConstraint, requiresMonotonicity, setConsistencyPruningEvent, setConstraintScope, setScope, setScope, setScope, setScope, setScope, setWatchedVariableGrounded, supplyGuideFeedback, updateAFC, watchedVariableGrounded
checkInput, checkInput, checkInputForDuplication, checkInputForDuplicationSkipSingletons, checkInputForNullness, checkInputForNullness, checkInputForNullness, derivative, getDubletonsSkipSingletons, imposeDecomposition
protected List<Constraint> constraints
public Diffn(IntVar[][] rectangles)
rectangles
 list of rectangles which can not overlap in at least one dimension.public Diffn(IntVar[][] rectangles, boolean strict)
rectangles
 list of rectangles which can not overlap in at least one dimension.strict
 true zero size rectangles need to be between other rectangles; false these rectangles can be anywherepublic Diffn(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 Diffn(IntVar[] origin1, IntVar[] origin2, IntVar[] length1, IntVar[] length2, boolean strict)
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.strict
 true zero size rectangles need to be between other rectangles; false these rectangles can be anywherepublic Diffn(List<? extends List<? extends IntVar>> rectangles)
rectangles
 list of rectangles which can not overlap in at least one dimension.public Diffn(List<? extends List<? extends IntVar>> rectangles, boolean strict)
rectangles
 list of rectangles which can not overlap in at least one dimension.strict
 true zero size rectangles need to be between other rectangles; false these rectangles can be anywherepublic Diffn(List<? extends IntVar> o1, List<? extends IntVar> o2, List<? extends IntVar> l1, List<? 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 Diffn(List<? extends IntVar> o1, List<? extends IntVar> o2, List<? extends IntVar> l1, List<? extends IntVar> l2, boolean strict)
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.strict
 true zero size rectangles need to be between other rectangles; false these rectangles can be anywherepublic void consistency(Store store)
Constraint
consistency
in class Nooverlap
store
 constraint store within which the constraint consistency is being checked.public void imposeDecomposition(Store store)
imposeDecomposition
in class Constraint
store
 the constraint store to which the constraint is imposed to.public List<Constraint> decompose(Store store)
Constraint
decompose
in class Constraint
store
 the constraint store in which context the decomposition takes place.public List<Var> auxiliaryVariables()
auxiliaryVariables
in class DecomposedConstraint<Constraint>
public String toString()
Constraint
Copyright © 2022. All rights reserved.