Propuesta para Trabajo de Grado


IV – DESARROLLO DEL TRABAJO



Yüklə 177,42 Kb.
səhifə8/9
tarix25.07.2018
ölçüsü177,42 Kb.
#58144
1   2   3   4   5   6   7   8   9

IV – DESARROLLO DEL TRABAJO


En esta sección se describe los elementos necesarios para el trabajo con su debida justificación, y el desarrollo del mismo que consiste en la definición de un modelo interactivo de deformación de mallas.

1. Características de la malla


El uso de una malla 2-simplex [3] permite la aplicación de fuerzas externas sin preocupase de la magnitud de la fuerza, ni de la continuidad de la malla; ya que la tarea de las fuerzas internas consiste en mantener la estabilidad del modelo. Lo importante, es que la fuerza que se aplica a un punto perteneciente a la malla, se encuentre en la dirección de la normal de la malla dada en dicho punto . De esta manera, se puede definir un modelo deformable aplicable en la fuerza externa de la malla 2-simplex, cuyo problema se enfoque principalmente en la interacción con el usuario. Dada esta gran ventaja que poseen las mallas simplex, es el modelo de malla poligonal que se usará.

Hay que tener en cuenta, que en un estado inicial la malla se presenta como una triangulación (Debido a que la construcción de la malla poligonal a partir de los contornos, produce una triangulación. Tal como se especifica al inicio de este documento). Basta con encontrar el dual de la triangulación [3], para determinar la malla 2-simplex.

Finalmente, se determina la estructura de datos que se utilizará para representar la malla 2-simplex. La estructura de datos más usada comúnmente para representar mallas poligonales es la sopa de polígonos [14]. Sin embargo, en este caso no se utilizará este tipo de estructura, ya que no es computacionalmente eficiente, debido al comportamiento de la malla simplex.

Temiendo en cuenta que para aplicar la fuerza interna en la malla simplex, dado un punto perteneciente a la malla, se requiere conocer rápidamente sus vecinos. Para encontrar un vecino, la estructura de sopa de polígonos requiere que se recorra una lista la cual contiene almacenada, ya sea el par de puntos que forman una línea; o el conjunto de puntos que conforman una cara. Si esta lista tiene elementos, esta búsqueda genera una complejidad de . Si se requiere hacer la búsqueda para puntos, la complejidad aumentaría a .

Si en vez de utilizar la estructura de sopa de polígonos, se usa una estructura QuadEdge [4] para representar la malla 2-simplex, la complejidad disminuiría ya que en esta estructura de datos se puede conocer rápidamente un vecino de un punto gracias a la topología fija de la malla, donde cada vértice siempre tiene 3 vecinos. Conociendo esto, resulta menos costoso acceder directamente a los vecinos por medio de los operadores de la estructura QuadEdge, que realizar una iteración alrededor de , así la complejidad disminuye a . Si se requiere hacer la búsqueda de los vecinos para puntos, la complejidad sería únicamente .

Concluyendo, se construye una malla 2-simplex a partir de una triangulación, donde la malla 2-simplex estará representada por la estructura de datos QuadEdge. La malla 2-simplex permite realizar deformaciones, abstrayendo su continuidad y estabilidad.

2. Modelo interactivo


El modelo interactivo deformable, estará basado en el control que el usuario tiene sobre una esfera, se podrá desplazar a través de la superficie de la malla. La posición de la esfera determinará qué zona de la malla se quiere deformar, y el tamaño de la esfera indicará la cantidad de fuerza aplicada. De esta manera, el usuario podrá determinar qué zonas quiere deformar y con qué magnitud. Se debe asegurar entonces que:

  • El centro de la esfera permanezca fijo a la superficie de la malla, de manera que si se desplaza la esfera, esta no se deje de ubicar sobre la malla.

  • El radio de la esfera se pueda variar, de manera que se pueda modificar el tamaño de la esfera, y que es este factor el que determinará la magnitud de la esfera.

  • Teniendo en cuenta que al aplicar la fuerza, la dirección de ésta para cada punto perteneciente a la malla va en el sentido de la normal de respecto a la malla. El usuario podrá determinar si la magnitud de la fuerza es positiva o negativa; ya que si es positiva, la dirección de la fuerza es la misma dirección que la normal; pero si la fuerza es negativa, la dirección de ésta es en el sentido opuesto a la normal.

  • Una vez aplicada una fuerza, el modelo simplex a través de las fuerzas internas controla la estabilidad de la malla automáticamente.


3. Herramientas


Una vez definidas las estructuras de datos y el modelo interactivo, el siguiente paso consiste en determinar las herramientas que se usarán para el desarrollo del trabajo. Las librerías utilizadas en el prototipo son las siguientes:


  • VTK: Es una librería de visualización científica, utilizada principalmente para la visualización del modelo tridimensional de las mallas [16].

  • ITK: Es una librería que cuenta con diversos métodos y estructuras de datos para computación gráfica, utilizada principalmente en la representación de la malla 2-simplex [17].

Adicionalmente a estas herramientas, se tiene un paquete denominado itkQESimplex, el cual contiene diversas clases para representar la malla simplex, que se realizó previamente como parte del proyecto de la visualización del pulmón tridimensional en su totalidad. La figura 14 muestra un diagrama con los elementos principales de este paquete, sin entrar en mucho detalle:





Figura 14. Paquete itkQESimplex
Dentro de itkQESimplex, se describen las siguientes clases:


  • QuadEdgeMesh: Es una clase de la librería ITK, que permite representar una malla, es una estructura de datos QuadEdge.

  • vtkPolyData: Es una clase de la librería VTK, la cual representa una malla que puede ser visualizada por computador. Se utiliza principalmente, ya que la malla simplex requiere ser vista en el computador.

  • Mesh: Es una clase de itkQESimplex que representa la malla simplex. Esta clase hereda de QuadEdgeMesh, para usar la representación QuadEdge. Adicionalmente, describe toda la geometría de la malla simplex.

  • vtkPolyDataAdapter: Es una clase de itkQESimplex, que permite la adaptación de la malla simplex para ser mostrada en el computador, a partir de un vtkPolyData.

  • PointMovedEvent: Es una clase de itkQESimplex utilizada por Mesh, como un generador de eventos ante una modificación en la geometría de la malla simplex, de manera que los cambios puedan ser actualizados en la visualización de vtkPolyDataAdapter.

  • PointMovedObserver: Es una clase observadora de itkQESimplex, que recibe los eventos generados por PointMovedEvent, y genera los cambios en la malla visualizada de vtkPolyDataAdapter.

  • ForceFunctionBase: Es una clase de itkQESimplex, que representa una función de fuerza aplicable a la malla simplex.

  • ForceApplier: Es una clase de itkQESimplex, que contiene un conjunto de fuerzas aplicables a la malla simplex (ForceFunctionBase), y aplica estas fuerzas directamente sobre la malla simplex.

  • InternalForceFunction: Es una clase de itkQESimplex, que representa la fuerza interna de la malla simplex, por medio de la herencia a ForceFunctionBase.

  • ExternalForceFunction: Es una clase de itkQESimplex, que representa la fuerza externa de la malla simplex, por medio de la herencia a ForceFunctionBase. (Esta clase no cuenta con un método de fuerzas definido).

Adicionalmente a estas clases, también se tiene un filtro que convierte una malla triangular en una malla simplex, denominado itkQESimplexConstructFromTriangulationFilter. Es necesario, ya que la malla de entrada es triangular, y se requiere deformar una malla simplex.


Como se puede observar, con este paquete ya se tiene la representación fundamental de la malla simplex. Ahora el desarrollo se centra en la problemática del trabajo: el modelo interactivo, y la deformación a partir de fuerza externas; donde este último se define en la clase ExternalForceFunction.


Yüklə 177,42 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin