Within
Espacio de nombres: Digi21.DigiNG.Entities.Relations
Ensamblado: Digi21.DigiNG
Indica si la primera área está dentro de la segunda y comparte con ella al menos un vértice.


public static bool Within(ReadOnlyLine a, ReadOnlyLine b)
public static bool Within(ReadOnlyLine a, ReadOnlyPolygon b)
public static bool Within(ReadOnlyPolygon a, ReadOnlyLine b)
public static bool Within(ReadOnlyPolygon a, ReadOnlyPolygon b)
| Parámetro | Descripción |
|---|---|
a |
Área que se comprueba si está dentro de b: una ReadOnlyLine cerrada o un ReadOnlyPolygon. |
b |
Área contenedora. |
Valor devuelto
true si se cumplen las tres condiciones:
- Ningún vértice de
aestá fuera deb. Un vértice dentro de un hueco debestá fuera deb. - Al menos un vértice de
acoincide con un vértice deb. - Ningún vértice de
b, huecos incluidos, está dentro dea.
Si ningún vértice de a está dentro de b (todos son comunes o están sobre los lados de b), el método calcula un punto interior de a y devuelve true si ese punto está dentro de b.
Si a está dentro de b sin vértices comunes, este método devuelve false y CompletelyWithin(a, b) devuelve true. Para cubrir los dos casos, combina Within(a, b) || CompletelyWithin(a, b). El método no es simétrico: para saber si b está dentro de a, llama a Within(b, a).
Excepciones
| Excepción | Cuándo |
|---|---|
ArgumentNullException |
a o b es null. |
SEHException |
Un área tiene un anillo sin cerrar, de área nula o con una espiga. Lee las excepciones de AreaArea. |
Ejemplo
Lee el ejemplo de AreaArea.