public class DE9IMRelationSolver extends ConstraintSolver
DE9IMRelations. This solver handles variables of type GeometricShapeVariable, which represent
points, line strings, or polygons. The latter are not necessarily convex.ConstraintSolver.OPTIONS| Modifier and Type | Field and Description |
|---|---|
protected Constraint[] |
addedConstraints |
protected boolean |
addedVariables |
protected boolean |
removedConstraints |
protected boolean |
removedVariables |
autoprop, components, constraintTypes, IDs, logger, name, nesting, noPropOnVarCreation, numcalls, skipPropagation, spacing, theNetwork, variableType| Modifier | Constructor and Description |
|---|---|
|
DE9IMRelationSolver()
Creates a new solver for
DE9IMRelations. |
protected |
DE9IMRelationSolver(java.lang.Class<?>[] constraintTypes,
java.lang.Class<?> variableType) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
addConstraintsSub(Constraint[] c)
This method must be implemented by the developer of the specific
ConstraintSolver
class. |
protected Variable[] |
createVariablesSub(int num)
This method must be implemented by the developer of the specific
ConstraintSolver
class. |
Constraint[] |
getAllImplicitRCC8Relations()
Get all the implicit
DE9IMRelations that exist among the variables in this solver's ConstraintNetwork. |
Constraint[] |
getAllImplicitRelations()
Get all the implicit
DE9IMRelations that exist among the variables in this solver's ConstraintNetwork. |
boolean |
propagate()
Propagate the constraint network.
|
void |
registerValueChoiceFunctions() |
protected void |
removeConstraintsSub(Constraint[] c)
This method must be implemented by the developer of the specific
ConstraintSolver
class. |
protected void |
removeVariablesSub(Variable[] v)
This method must be implemented by the developer of the specific
ConstraintSolver
class. |
addConstraint, addConstraintNoPropagation, addConstraints, addConstraintsDebug, addConstraintsNoPropagation, containsVariable, createVariable, createVariable, createVariables, createVariables, createVariablesSub, deplenish, getComponent, getComponents, getConstraintNetwork, getConstraints, getConstraints, getDescription, getID, getOption, getVariable, getVariables, getVariables, getVariables, isCompatible, maskConstraints, removeConstraint, removeConstraints, removeVariable, removeVariables, setComponent, setComponents, setConstraintNetwork, setName, setOptions, toString, unmaskConstraintsprotected Constraint[] addedConstraints
protected boolean removedConstraints
protected boolean addedVariables
protected boolean removedVariables
protected DE9IMRelationSolver(java.lang.Class<?>[] constraintTypes,
java.lang.Class<?> variableType)
public DE9IMRelationSolver()
DE9IMRelations.public Constraint[] getAllImplicitRelations()
DE9IMRelations that exist among the variables in this solver's ConstraintNetwork.DE9IMRelations that exist among the variables in this solver's ConstraintNetwork.public Constraint[] getAllImplicitRCC8Relations()
DE9IMRelations that exist among the variables in this solver's ConstraintNetwork. These
are limited to the eight Jointly Exclusive, Pairwise Disjoint relationsDE9IMRelations that are also RCC8 relations existing among the variables in this solver's ConstraintNetwork.public boolean propagate()
ConstraintSolverpropagate in class ConstraintSolverprotected boolean addConstraintsSub(Constraint[] c)
ConstraintSolverConstraintSolver
class. It should implement all operations necessary to add multiple constraints, and should return
true upon success, false otherwise.addConstraintsSub in class ConstraintSolverc - The constraints to add.true iff the constraints were added to the ConstraintNetwork.protected void removeConstraintsSub(Constraint[] c)
ConstraintSolverConstraintSolver
class. Should implement all operations necessary to remove a batch of constraints.removeConstraintsSub in class ConstraintSolverc - The constraints to remove.protected Variable[] createVariablesSub(int num)
ConstraintSolverConstraintSolver
class. It should implement all operations necessary to create a batch of variable for the specific
type of ConstraintSolver.createVariablesSub in class ConstraintSolvernum - The number of variables to create.Variable for this ConstraintSolver.protected void removeVariablesSub(Variable[] v)
ConstraintSolverConstraintSolver
class. It should implement all operations necessary to remove a batch of variables for
the specific type of ConstraintSolver.removeVariablesSub in class ConstraintSolverv - The Variables to remove.public void registerValueChoiceFunctions()
registerValueChoiceFunctions in class ConstraintSolver