Corrección de imperfecciones REPARACIÓN DE FICHEROS El objetivo de este capitulo es mostrar algunos problemas típicos que pueden aparecer al importar geometría creada externamente, y el modo de abordar su corrección. Esta problemática suele ser común para todos los formatos importados: IGES, VDA, DXF, Parasolid, ACIS, aunque a veces los defectos son más característicos de alguno de ellos. Muchos de los defectos pasan inadvertidos hasta que se intenta cerrar un volumen, o generar una malla, lo cual en ocasiones puede convertirse en imposible. También pueden detectarse imperfecciones al mostrar el contorno de la malla en caso de que se pueda generar. Pieza cedida por gentileza de PSA DECAD-MAC AIE 35
TABLA DE CONTENIDOS 1. IMPORTACIÓN DE FICHEROS... 37 1.1. TOLERANCIA DE COLAPSO DE UN FICHERO IMPORTADO... 37 1.2. DEFECTO 1: SUPERFICIES SUPERPUESTAS NO CONFORMES... 38 1.2.1. Detección del problema... 38 1.2.2. Corrección mediante un colapso... 40 1.2.3. Información de la calidad de la malla... 41 1.2.4. Corrección redefiniendo el contorno correcto... 43 1.3. DEFECTO 2: VOLUMEN QUE NO SE PUEDE CREAR... 44 1.4. DEFECTO 3: SUPERFICIES QUE NO SE PUEDEN MALLAR... 46 36
1. IMPORTACIÓN DE FICHEROS GiD permite importar diferentes formatos de ficheros. Entre ellos se encuentran formatos estándar como IGES, DXF, VDA, Parasolid o ACIS, generados por la mayoría de programas CAD. Por otra parte GiD también permite importar mallas generadas por otros programas, en formatos NASTRAN o STL. La importación de un fichero no es siempre perfecta. A veces, el fichero de origen contiene incompatibilidades con el formato requerido por GiD, que se tienen que solucionar manualmente. A lo largo de este ejemplo se estudiarán algunas posibles soluciones a las dificultades que pueden aparecer en el proceso de importación. 1.1. Tolerancia de colapso de un fichero importado Es fundamental que el usuario sepa, que tras el proceso de lectura y traducción a las entidades propias de GiD de un fichero importado, con las preferencias por defecto, el programa realiza un colapso para fusionar las entidades superpuestas (según una tolerancia automática) Efecto de un colapso del modelo con tolerancia = 0.5 37
En las preferencias de Importación, puede elegirse que no se haga este colapso tras la lectura, para ver con menos interferencias lo que se ha leído realmente (el colapso al fin y al cabo siempre puede hacerse a posteriori, seleccionando la tolerancia más apropiada) Por defecto el valor de la tolerancia de colapsado lo determina el programa automáticamente, pero a veces es necesario imponerlo manualmente (por ejemplo para tratar de eliminar detalles relativamente grandes) 1.2. Defecto 1: superficies superpuestas no conformes 1.2.1. Detección del problema La siguiente geometría es una porción de un fichero IGES tras la importación y colapsado automático. Si se hace una visualización con iluminación foto realista ( render ), se tiene lo siguiente, que aparentemente es perfecto: Render de un trozo de chapa importado Sin embargo, si se muestran las etiquetas ( labels ) de las líneas que forman el contorno de la pieza y que por tanto deben tener el valor higherentities=1 (1 superficie con la línea formando parte de su contorno), aparecen más líneas de las esperadas Menú: View->Label->Select->Lines Filter:higher=1 38
1: La línea Filter:higher=1 Indica que se filtre la selección, dejando sólo las entidades con valor de higherentities=1 1: indica que se seleccionan todas las líneas (de la 1 en adelante) La selección de entidades con filtros también puede hacerse usando la ventana de selección (puede abrirse desde el menú contextual, cuando se está dentro de una función que requiere una selección) menú contextual y ventana de selección Además de las líneas del exterior, aparecen algunas inesperadas en la parte supuestamente interior, marcadas con el círculo rojo en la imagen. Defecto, las superficies no están bien conectadas, a la derecha la imagen ampliada Otro modo rápido para ver esto es dibujar por colores el valor de superentidades de las líneas. (menú Utilities->Draw Higher->Lines) 39
Dibujo del número de superentidades de las líneas por colores 1.2.2. Corrección mediante un colapso Si los puntos que deberían coincidir no están muy separados, pueden colapsarse imponiendo una tolerancia mayor que su distancia. Atención, el colapso sólo es operativo para pequeñas distorsiones, con una tolerancia muy grande se puede llegar a corromper el modelo (las líneas pueden dejar de estar sobre las superficies, etc.) En este caso, las superficies están solapadas por un error del modelo, se colapsa de nuevo con una tolerancia bastante elevada, suficiente para unir los puntos 185 y 221 mostrados en la imagen ampliada. El colapso se puede aplicar a todo el modelo, o sólo localmente a una selección. Si la tolerancia es pequeña, puede aplicarse sin riesgo a todo el modelo, pero siendo tan grande es mejor aplicarla solamente a las líneas que rodean a estos dos puntos. El resultado obtenido es la fusión de puntos y líneas, y la deformación de las líneas y superficies afectadas. 40
Efecto de limpieza del colapsado local Se restaura el valor de la tolerancia a su valor automático, para evitar usar el valor elevado de nuevo inadvertidamente. Ahora ya está todo bien conectado, y el contorno se dibujará correctamente. 1.2.3. Información de la calidad de la malla Probamos a generar una malla de triángulos (con los valores por defecto) Malla de triángulos y se contorno La malla obtenida parece correcta, visualizando el contorno no se detectan gaps. Hay una utilidad para ver la calidad de la malla en forma de gráfica: con criterio de ángulos mínimo o máximo, longitud de lado mínimo, volumen, etc. Si visualizamos el ángulo mínimo se observa que hay valores muy pequeños, de tan sólo 1.11º, lo cual puede crear dificultades para muchos análisis posteriores. 41
Distribución del ángulo mínimo (distribución acumulada y de frecuencia) Si se hace doble clic sobre la gráfica, se seleccionarán los elementos que tienen un valor de ángulo mínimo por debajo del que se pique. (Estos elementos se podrían separar enviándolos a otra capa) Elementos con ángulo menor que el seleccionado (aprox. 3º) Si se visualiza de nuevo la geometría, se ve que son debidos a una superficie muy delgada, que debería ser destruida (borrándola o mediante el colapso) 42
1.2.4. Corrección redefiniendo el contorno correcto Si el defecto a corregir es de tamaño grande (relativo al tamaño de la pieza), no puede solucionarse el problema con un colapso, que produciría efectos muy destructivos, hay que redefinir manualmente las partes defectuosas. Supongamos que volvemos a tener la pieza como al principio. Porción sobrante (en rojo) de la superficie 69 Hay que sustituir la superficie 69 por otra con la misma forma interna, pero recortada de manera distinta: Superficie recortada con un nuevo contorno Si la forma fuese plana, podría borrarse la superficie y crear una nueva definida únicamente por su contorno, pero en este caso la superficie tiene curvatura, y si se crea una nueva sólo con la información del contorno, sus curvaturas no coincidirán (se perderá la tangencia con superficies vecinas). Por tanto, lo que debe hacerse es crear una superficie recortando la forma base de la previa. (menú Geomtry->Create->NurbSurface->Trimmed) 43
Se selecciona la forma base, y las nuevas curvas de recorte, por último se borra la superficie antigua y las líneas y puntos sobrantes. geometría corregida manualmente Como puede apreciarse, esta forma de solucionar el problema es menos agresiva con la geometría inicial que la técnica del colapsado, sin embargo, si hay muchos defectos, puede ser excesivamente laboriosa. 1.3. Defecto 2: volumen que no se puede crear Para que un conjunto de superficies pueda cerrar una región del espacio, las líneas deben tener una superficie a cada lado, es decir, el número de superentidades local de las líneas debe ser higherentities=2, de no ser así, topológicamente el volumen no es correcto, y no puede crearse. Por ejemplo, tratamos de crear el siguiente volumen seleccionando las superficies, pero GiD muestra la siguente ventana con información del problema: Problemas al tratar de crear un volumen 44
El primer paso es visualizar donde está el problema, para ello activamos las etiquetas de las líneas conflictivas: View->Label->Select->Lines 6 7 19 20 visualización del problema: hay líneas duplicadas También se observa el problema dibujando las superentidades en colores: Las etiquetas se ven superpuestas en la imagen de la izquierda, hay líneas superpuestas que deben ser fusionadas. En la mayor parte de casos bastará hacer un simple colapso de estas entidades con la tolerancia adecuada. Imagen tras colapsar las líneas, y el volumen representado en azul claro 45
1.4. Defecto 3: superficies que no se pueden mallar En ocasiones, algunas superficies teóricamente correctas, son en la práctica difíciles de mallar. Este caso es muy habitual en superficies paramétricas cuyas curvas u=0 y u=1 (ó v=0 y v=1) en el espacio de parámetros u-v, se juntan al transformarse por la parametrización al espacio 3D. Este caso, a pesar de parecer un caso extraño, es muy habitual, pasará por ejemplo con un cilindro, un cono, una esfera, un toro, etc, si están formados por una única superficie. Ejemplo de superficie con curvas u=0 coincidente en 3D con u=1 El problema surge porque no hay una relación biyectiva entre los puntos del espacio de parámetros y el espacio 3D, y la función inversa de la parametrización no está bien definida: los puntos de la arista pueden mapearse tanto en u=0 como en u=1. Esto genera problemas en multitud de algoritmos: generación de malla, cálculo de áreas, determinación de puntos interiores, etc. Si se renderiza la superficie pueden aparecer efectos extraños (al fin y al cabo el render crea una malla para la visualización) En una esfera, además de coincidir dos curvas coordenadas, las otras degeneran en un punto en los polos, y en un toro coinciden u=0 con u=1 y v=0 con v=1. Lo más recomendable es evitar este tipo de casos, subdividiendo la superficie. 46