- A área de pesquisa pode ser limitada a um retângulo (variável
Rect), a uma região (isto é, um conjunto contínuo de retângulos — variávelRegion) ou a um conjunto de retângulos que, em geral, não precisa ser contínuo (variávelRectArray). Esse tipo de restrição é definido usando a funçãoRestrictSearchAreae especificando um parâmetro do tipo correspondente. Qualquer expressão que retorne valores do tipo requerido pode ser especificada como parâmetro. - A área de pesquisa pode ser limitada a um semiplano localizado à esquerda, à direita, acima ou abaixo de um ponto específico. Tais restrições são definidas usando as funções Leftof, Rightof, Above e Below.
- Às vezes, pode ser necessário definir restrições para um limite do elemento. Por exemplo, pode-se saber previamente que o limite esquerdo de um elemento está sempre localizado na parte esquerda da imagem, enquanto o limite direito pode se estender indefinidamente para a direita. A linguagem FlexiLayout permite definir tais restrições na etapa de cálculo da área de pesquisa, reduzindo assim o conjunto de possíveis hipóteses para um elemento. Essas restrições são definidas usando as funções
LeftBound,RightBound,topBoundeBottomBounde os operadores>e<. As funçõesLeftBoundeRightBoundsão usadas para acessar os limites esquerdo e direito da área de pesquisa, e as funçõestopBoundeBottomBoundsão usadas para acessar os limites superior e inferior, respectivamente. - Você pode definir restrições de pesquisa excluindo um retângulo, um conjunto de retângulos, uma hipótese etc. da área de pesquisa. Isso pode ser feito usando as funções
Exclude,ExcludeRecteExcludeSet.
