Define the most commonly used variables on all
objects (union of
nodes and
edges). The following explainations give an intuition of how the variables should be used. Note that this makro itself only defines the variables and does not add or introduce any constraints. For example the variable
b_r is ment to say something about the begin of an object, but you need to include the
set_begin_end makros to actually get this behaviour.
x(rows, cols, objects):
For every pixel and given object the value of x is 1 if the object occupies this pixel and 0 otherwise.
b_r(rows, objects):
For every object o this variable is 1 iff r is the first row for which x(r,o) = 1
e_r(rows, objects):
For every object o this variable is 1 iff r is the last row for which x(r,o) = 1
b_c(cols, objects):
For every object o this variable is 1 iff c is the first column for which x(c,o) = 1
e_c(cols, objects):
For every object o this variable is 1 iff c is the last column for which x(c,o) = 1