OpenGeoRock
2.2

Geometría y contornos

Válido para OGR Slip2D 0.1.235

Un modelo es una sección bidimensional construida con contornos: un contorno externo que encierra el terreno, contornos de material que lo dividen en regiones y líneas que representan el agua, una grieta de tracción, una capa débil o la orientación de la estratificación.

2.2.1Tipos de contorno#

El menú Boundaries tiene un comando por tipo, con los atajos Ctrl+1 a Ctrl+8. La Figura 2.2.1 muestra los principales sobre la sección de un talud y la Tabla 2.2.1 los recoge todos.

Sección de un talud con un contorno externo cerrado, un contorno de material abierto que va del borde izquierdo al derecho y divide el terreno en dos regiones, un nivel freático y la línea de la grieta de tracción bajo la coronación W Contorno externo (polígono cerrado) Contorno de material, de borde a borde Nivel freático Grieta de tracción lado del pie coronación
Figura 2.2.1 Contornos en un talud que rompe de derecha a izquierda. El contorno de material va de un lado a otro del contorno externo y divide el terreno en dos regiones; el nivel freático y la grieta de tracción no lo dividen.
Tabla 2.2.1 Tipos de contorno y reglas que siguen.
ComandoQué esReglas
Add External Boundary Ctrl+1Polígono cerrado que rodea todo el modelo. Su borde superior es la superficie del terreno.Exactamente uno. Al dibujar un segundo, el programa pregunta si debe sustituir al primero; los contornos de material se conservan.
Add Material Boundary Ctrl+2Polilínea abierta que divide el terreno en regiones, cada una de las cuales recibe un materialVa de contorno a contorno (Contornos de material y regiones). Puede haber varios.
Add Water Table Ctrl+3Superficie freática; define la presión intersticial de los materiales que se le asignanComo máximo uno. El agua dibujada por encima de la superficie del terreno se convierte en agua embalsada.
Add Drawdown Line Ctrl+4Nivel del embalse después de un desembalse rápido; el nivel freático es el de antes del desembalseComo máximo una, y solo si se ha elegido Rapid Drawdown analysis en la Sección 2.1.4
Add Piezometric Line Ctrl+5Línea de altura de presión para los materiales que se le asignanPuede haber varias; se numeran en el orden en que se dibujan. Nunca crea agua embalsada.
Add Tension Crack Ctrl+6Base de la zona de grietas de tracción detrás de la coronaciónComo máximo una (Grieta de tracción)
Add Weak Layer Ctrl+7Polilínea con la resistencia de un material; las superficies de rotura la siguen en vez de atravesarlaNo divide regiones (Capas débiles y superficies anisótropas)
Add Anisotropic Surface Ctrl+8Polilínea que da, punto a punto, la orientación de la estratificación de un material anisótropoNo divide regiones; el orden de sus vértices importa (Capas débiles y superficies anisótropas)
Surfaces → Add Block Search Window, … Line, … Point, … PolylineObjetos que guían la búsqueda por bloquesSolo con el método Block Search (Objetos de búsqueda por bloques)

Los comandos que infringirían una regla aparecen en gris, con una información emergente que explica el motivo; por ejemplo, Add Water Table cuando el modelo ya tiene uno.

2.2.2Dibujar y teclear contornos#

Dibuja primero el contorno externo, después los contornos de material y, por último, el agua y las demás líneas. Todo dibujo sigue las convenciones del lienzo (Dibujar en el lienzo):

  1. Elige el comando, por ejemplo Boundaries → Add External Boundary (Ctrl+1).
  2. Haz clic en cada vértice o tecléalo como x, y en el campo Enter X,Y: de la barra de estado y pulsa Enter. Con SNAP activado, los clics se ajustan a los vértices y las líneas existentes y a la rejilla, y así se consigue que un contorno de material empiece y acabe exactamente sobre el contorno externo.
  3. Termina con Enter o con Done en el menú del clic derecho. El contorno externo se cierra solo; Esc cancela el dibujo.

Mientras se dibuja, la opción Coordinate Table… del menú del clic derecho muestra los vértices colocados hasta ese momento, para corregirlos o para teclear el resto del contorno como una tabla. Dibuja el nivel freático, las líneas piezométricas y la línea de desembalse de izquierda a derecha y a todo el ancho de los materiales a los que se aplican: fuera de la extensión horizontal de una línea de agua, la presión intersticial que esta da es nula.

Un contorno también se puede dibujar en la capa de anotaciones y convertir después en geometría: Tools → Draw admite coordenadas tecleadas para una línea, una polilínea, un polígono, un rectángulo o un círculo, y Tools → Convert Tool to Boundary… lo copia como contorno externo, contorno de material, nivel freático, línea piezométrica o grieta de tracción.

Contornos de material y regiones#

Las regiones del modelo son las partes en que los contornos de material dividen el contorno externo. Cada región recibe un material (Sección 2.3.3). Para que las regiones resulten como se espera:

  • Lleva cada contorno de material de contorno a contorno, es decir, de un borde del contorno externo a otro o hasta otro contorno de material. Un extremo que quede de otro contorno a una distancia inferior al 0.8 % de la diagonal del modelo (valor aproximado) se suelda a él, y se inserta allí un nodo.
  • Un extremo que se detiene dentro del modelo se prolonga en línea recta, en la dirección de su último segmento, hasta salir del modelo, y corta todas las regiones que encuentra a su paso. Es mejor prolongar la línea a propósito que depender de este comportamiento.
  • Una lente (una bolsa de un material dentro de otro) es un contorno de material cerrado, que forma una región propia y deja un hueco en la región que la rodea.
Dibujar una lente en 0.1.235

Add Material Boundary siempre produce una polilínea abierta, aunque el último clic caiga sobre el primer vértice, y los dos extremos de ese lazo se prolongan entonces de lado a lado del modelo, como cualquier otro extremo suelto. Para crear una lente, usa en su lugar un polígono cerrado: tecléalo con Tools → Draw → Polygon y conviértelo en un Material Boundary con Tools → Convert Tool to Boundary…, o impórtalo desde un dibujo DXF.

Una región a la que no se ha asignado ningún material toma el primer material del proyecto (Regiones sin material).

Líneas de agua#

El nivel freático, las líneas piezométricas y la línea de desembalse son polilíneas abiertas que nunca dividen regiones. Solo actúan sobre los materiales que las tienen asignadas, y por eso, si el proyecto tiene materiales, al terminar un nivel freático o una línea piezométrica se abre enseguida el diálogo Assign Water Surface. La Sección 2.4 describe cómo se convierten en presiones intersticiales, con el agua embalsada incluida.

Grieta de tracción#

Dibuja la grieta de tracción como una línea bajo la coronación, a la profundidad hasta la que pueden abrirse las grietas; el terreno entre esa línea y la superficie es la zona de grietas. Una superficie de rotura cuyo extremo de coronación cae dentro de la zona de grietas se corta donde alcanza la línea y se cierra con una pared vertical hasta la superficie del terreno: el terreno que queda por encima del corte conserva su peso, pero no ofrece resistencia al corte (Duncan y Wright, 2005). Solo se corta el extremo de coronación; el extremo del pie conserva su resistencia. Se descarta cualquier superficie cuyo extremo de coronación quede en la zona de grietas sin llegar nunca a la línea.

El agua de la grieta se define con Properties → Define Tension Crack… o desde el menú contextual de la grieta. El agua empuja horizontalmente sobre la pared con el empuje hidrostático correspondiente a su profundidad, calculado con el peso específico del fluido intersticial del proyecto.

Tabla 2.2.2 Define Tension Crack: opciones de Water Level y campo que utiliza cada una.
Water LevelSuperficie del agua en la grietaCampo
Dry — no waterSin agua—
Filled — 100% saturatedEn el borde superior de la grieta (por defecto)—
Percent FilledA un porcentaje de la profundidad de la grietaPercent Filled, 0–100 % (100 %)
Filled below Elevation (absolute Y)A una cota fijaElevation (Y), m
Filled to Depth (relative to crack top)A una profundidad dada bajo el borde superior de la grietaDepth from crack top, m
Use Water TableEl nivel freático del modelo; solo disponible cuando existe—
Use Piezometric LineUna línea piezométrica; solo disponible cuando hay algunaPiezo Line

Capas débiles y superficies anisótropas#

Una capa débil es una junta, una banda de corte o una capa delgada a lo largo de la cual puede discurrir una superficie de rotura. No divide el terreno en regiones, y su resistencia es la de un material. Al terminar la línea, si el proyecto tiene materiales, el diálogo Assign Material pregunta cuál se le asigna: una capa débil sin material no tiene resistencia propia. Una superficie de prueba que toca una capa débil se recorta para seguirla. Cómo se trata una superficie que toca varias capas se elige en Surfaces → Surface Options… (Sección 2.7), y la inclinación máxima de la base de dovela que se admite en una superficie así, en la Sección 2.1.9.

Versión 0.1.235

El material de una capa débil solo se puede elegir al dibujar la línea: Properties → Assign Material no actúa sobre las capas débiles. Para dar otro material a una capa débil, bórrala y vuelve a dibujarla. Al convertir un contorno de material en capa débil con Convert Boundary…, se conserva el material que tenía.

Una superficie anisótropa no aporta resistencia ni divide nada: indica en cada punto la dirección de la estratificación, para un material cuyo modelo de resistencia sea Anisotropic Linear o Snowden Modified Anisotropic Linear y que la seleccione en Define Materials (Tipo de resistencia). La orientación se toma en el punto más próximo de la polilínea, no en el que queda en la misma vertical, y el orden en que se marcan los vértices determina el ángulo en un quiebro; por eso hay que marcarlos uno tras otro a lo largo de la estratificación.

Objetos de búsqueda por bloques#

Con Surface Type = Non-Circular y Search Method = Block Search en Surface Options, cuatro comandos del menú Surfaces dibujan los objetos a partir de los cuales la búsqueda construye sus superficies de prueba: una Window (un polígono cerrado), una Line (dos clics), un Point (un clic) y una Polyline (se marca de un extremo a otro, con xx creciente). Al hacer clic derecho sobre un objeto se abre Block Search Object…, que muestra su tipo, las opciones de puntos de una polilínea y su Group ID. Se describen junto con la búsqueda en la Sección 2.7.

2.2.3Edición de contornos#

Los comandos de Boundaries → Edit son herramientas: elige una y haz clic después en el contorno o el vértice al que se aplica; Esc vuelve a la herramienta Select. El clic derecho sobre un contorno o un vértice ofrece directamente las más habituales (Dibujar en el lienzo). Las ediciones de la geometría se pueden deshacer con Edit → Undo (Ctrl+Z).

Tabla 2.2.3 Comandos de edición del menú Boundaries.
ComandoFuncionamiento
Edit → Delete BoundaryUn clic sobre un contorno lo borra.
Edit → Move BoundaryHaz clic en un contorno y arrástralo.
Edit → Copy BoundaryUn clic sobre un contorno añade una copia desplazada 2 m en xx y en yy.
Edit → Scale Boundary…Elige el contorno en una lista y, después, los factores Sx y Sy (iguales mientras Uniform scaling esté marcado; de 0.01 a 100) y el pivote Pivot X, Pivot Y.
Edit → Rotate Boundary…Elige el contorno y, después, Angle (CCW) en grados y el pivote.
Edit → Insert VertexUn clic sobre un lado añade allí un vértice.
Edit → Move VertexArrastra un vértice; el arrastre cuenta como un solo paso de deshacer.
Edit → Delete VertexUn clic sobre un vértice lo borra; un contorno conserva al menos dos.
Convert Boundary…Haz clic en un contorno y elige después su nuevo tipo. Un contorno convertido en línea de agua, grieta, capa débil o superficie anisótropa pasa a ser una polilínea abierta; un contorno cerrado convertido en contorno de material sigue cerrado.
Simplify Boundary…Elige un contorno y una tolerancia ε (0.5 m por defecto): se eliminan los vértices que se apartan de la línea simplificada menos de ε (Ramer–Douglas–Peucker).
Geometry Cleanup…Para cada contorno, informa de las autointersecciones, de si el contorno externo no está cerrado y de los vértices duplicados, y enumera los cruces entre contornos; a continuación elimina los vértices duplicados, con una tolerancia relativa al tamaño del modelo, en un solo paso de deshacer.
Edit Coordinates…Elige un contorno y edita sus vértices como una tabla de X e Y, con Add Row, Delete Row, Move Up y Move Down.
Selection Filter… Ctrl+FElige qué tipos de objeto puede seleccionar el cursor.

El escalado y el giro se hacen respecto al pivote tecleado en el diálogo, (0, 0) por defecto, y no respecto al centro del contorno.

Versión 0.1.235

Convert Boundary… no comprueba las reglas de «uno como máximo por modelo»: permite convertir un contorno en un segundo contorno externo, nivel freático, grieta de tracción o línea de desembalse. Comprueba tú el tipo al que conviertes. La opción Convert Boundary… del menú del clic derecho solo cambia el tipo y deja la polilínea abierta o cerrada como estaba; para convertir un contorno cerrado en una línea abierta, usa el comando del menú Boundaries.

2.2.4Modificar la forma del contorno externo#

Ampliar o reducir el contorno externo#

Boundaries → Expand / Shrink External… (también en el menú contextual del contorno externo) añade terreno al modelo o lo quita, en un solo paso de deshacer. Primero pregunta el método:

  • Draw polyline (recommended): haz clic en el primer punto sobre el contorno externo (el forzado del cursor lo marca), después en los puntos intermedios, fuera del modelo para ampliarlo o dentro para reducirlo, y en el último, de nuevo sobre el contorno externo; termina con Enter o Done. A continuación, el programa pregunta si la parte eliminada del contorno externo anterior debe conservarse como contorno de material, algo útil para mantener la superficie original del terreno como base de un relleno o como perfil de una excavación.
  • Numeric offset (all edges by a fixed distance): desplaza todos los lados la distancia indicada en Offset distance (1.0 m por defecto); un valor positivo amplía y uno negativo reduce.

Cambiar el ángulo del talud#

Boundaries → Change Slope Angle… cambia el ángulo global de la cara del talud (el de la cuerda que une el pie con la coronación) y no mueve nada más. Haz clic en el vértice del pie y después en el de la coronación del contorno externo; el diálogo muestra el ángulo global actual y pregunta cómo cambiarlo.

Tabla 2.2.4 Diálogo Change Slope Angle.
CampoSignificadoPor defecto
Angle changeVariación del ángulo global (de 0.01° a 89.99°); el nuevo ángulo se muestra debajo y debe quedar entre 0° y 90°5°
Increase the angle (steeper) / Decrease the angle (flatter)Sentido del cambioDecrease
Vertex rotation typeProject horizontally: los vértices de la cara conservan su cota. Project vertically: conservan su abscisa. Rotate: la cara gira como un sólido rígido alrededor del pie.Project horizontally
Project only the crest and move each vertex relative to it (keeps bench widths)Con cualquiera de las dos proyecciones, cada vértice intermedio se mueve en proporción a su posición entre el pie y la coronación, de modo que los bancos conservan su anchura; con Rotate no se aplicaactivado

Los vértices de otros contornos que están sobre la cara se mueven con ella, de modo que una capa que llega a la cara sigue llegando a ella. Los soportes y las cargas no se mueven. El cambio es un solo paso de deshacer, y la barra de estado indica el ángulo anterior y el nuevo.

2.2.5Importación y exportación DXF#

Importar un dibujo#

File → Import DXF… pide un dibujo y abre el diálogo Import DXF, que enumera todas las capas del dibujo y permite indicar qué representa cada una.

Tabla 2.2.5 Diálogo Import DXF.
CampoSignificadoPor defecto
Drawing unitsUnidad del dibujo: m, cm, mm, km, ft o in. Se propone la unidad registrada en el archivo, pero es solo orientativa y con frecuencia falta o es errónea.La del archivo
Curve discretisationSegmentos por circunferencia completa con que se representan los arcos, los círculos, las splines y los tramos curvos (bulges) de las polilíneas (de 4 a 720)64
Import as (uno por capa)Función de la capa, propuesta a partir de su nombre: (ignore), External Boundary, Material Boundary, Water Table, Piezometric Line, Drawdown Line, Tension Crack, SupportPropuesta
Welding toleranceLos extremos separados por menos de esta distancia se sueldan, y se inserta un nodo donde un extremo cae sobre un segmento; se expresa como porcentaje de la diagonal del modelo (se recomienda de 0.005 % a 0.5 %)0.05 %
Simplify polylines / Simplification toleranceSimplificación de Douglas–Peucker, también en porcentaje de la diagonal; nunca se eliminan los vértices compartidos con otro contornoactivado / 0.02 %
Replace existing boundaries of the imported typesBorra los contornos que el modelo ya tiene de cada tipo que se importaactivado

La tabla de capas indica las entidades y el número de vértices de cada capa; las capas sin función propuesta aparecen resaltadas para que decidas qué son. La función de cada capa se propone a partir de su nombre, sin tener en cuenta mayúsculas ni separadores: OGR_EXTERNAL, EXTERNAL, EXTERIOR o CONTORNO como contorno externo; OGR_MATERIAL, MATERIAL, SUELO o ESTRATO como contornos de material; OGR_WATER_TABLE, WATER_TABLE, WT o FREATICO como nivel freático; OGR_PIEZO o PIEZOMETRIC como líneas piezométricas; OGR_DRAWDOWN o DRAWDOWN como línea de desembalse; OGR_CRACK o TENSION_CRACK como grieta de tracción; y algunos alias más en inglés y en español.

Preview simula la importación sin aplicarla e informa del número de vértices antes y después de la simplificación, del número de regiones encontradas y de si las áreas de las regiones suman el área del contorno externo, que es la comprobación decisiva. Si no es así, alguna región no se ha cerrado: aumenta un poco la tolerancia de soldadura y vuelve a previsualizar. Con Import, la importación nunca se rechaza: lo que no se ha podido resolver queda enumerado y, si hay problemas, al terminar se abre el panel no modal DXF Import — Problems. Este panel agrupa los problemas por tipo, con su gravedad y una solución propuesta; al seleccionar uno, el lienzo se centra en él, con un doble clic se acerca la vista, y los botones Go to problem y Zoom all hacen lo mismo.

Versión 0.1.235

La función Support todavía no importa nada, y el diálogo no ofrece ninguna función para capas débiles ni para superficies anisótropas: una capa llamada OGR_WEAK_LAYER u OGR_ANISO_SURFACE, como las que escribe Export DXF, aparece como (ignore). Dibuja esas líneas en el programa después de importar el resto.

Exportar un dibujo#

File → Export DXF… escribe el modelo en un dibujo DXF. La geometría va a capas que el importador reconoce, de modo que un modelo se puede exportar, editar en un programa de dibujo y volver a importar; todo lo que es un dibujo de resultados va a capas cuyo nombre empieza por OGR_X_, que el importador ignora por defecto.

Tabla 2.2.6 Diálogo Export DXF y capas que escribe.
OpciónPor defectoCapas
Write coordinates in: m, cm, mm, km, ft, inm—
Boundaries (geometry)activadoOGR_EXTERNAL, OGR_MATERIAL, OGR_WATER_TABLE, OGR_PIEZO, OGR_DRAWDOWN, OGR_CRACK, OGR_WEAK_LAYER, OGR_ANISO_SURFACE
SupportsactivadoOGR_SUPPORT
Loads (as arrows)activadoOGR_X_LOADS
Finite element meshdesactivado (una línea por lado de elemento)OGR_X_MESH
Critical slip surfaceactivado, cuando hay resultadosOGR_X_SLIP_SURFACE
Annotations (title, factor of safety)activadoOGR_X_ANNOTATION
Load arrow size, en porcentaje de la diagonal del modelo (de 0.1 a 20 %)2.0 %—

Las opciones correspondientes a elementos que el modelo no tiene (soportes, cargas, malla, resultados) aparecen en gris. El DXF solo transporta geometría: no se exportan los materiales, el material de una capa débil ni el vínculo de un material con una superficie anisótropa. La barra de estado indica lo que se ha escrito y lo que se ha omitido.

En OGR Slip2D

Las reglas que limitan a uno por modelo el contorno externo, el nivel freático, la grieta de tracción y la línea de desembalse, junto con las condiciones de la línea de desembalse y de los objetos de búsqueda por bloques, se comprueban en un único punto al que recurren la interfaz gráfica, la interfaz de scripts y las herramientas para agentes. Así, un modelo construido con un script cumple las mismas reglas que uno dibujado a mano. Las regiones se obtienen mediante una subdivisión plana del contorno externo y de los contornos de material.

Código: ogr_core/project/rules.py · ogr_core/geometry/regions.py · ogr_core/dxf/