Acessibilidade / Reportar erro

Construção de Superfícies Suaves com Continuidade Geométrica

RESUMO

No uso de métodos numéricos, principalmente o método dos elementos de contorno, aconstrução de superfícies suaves é um dos requisitos importantes para a modelagem computacional de sólidos. Adicionalmente aos métodos numéricos, existem muitos outros campos de aplicação, tais como, na animação computacional e na reconstrução de imagens médicas, em que a continuidade geométrica G 1 é condição fundamental para a geração de superfícies suaves. No presente trabalho é utilizada a técnica de construção de geometria a partir das curvas do contorno. Diferentemente das construções clássicas das funções aproximadoras C 0, a presente construção G 1 faz uso dos vetores normais nos vértices da malha triangular, além de suas coordenadas geométricas. No entanto, os dados de entrada, especialmente os vetores normais, não são de obtenção imediata para geométricas complexas. Com o intuito de contornar esta dificuldade, o presente trabalho desenvolveu um código computacional para construção de superfícies suaves acoplado com o software de computação gráfica Blender TM . Desta forma, a implementação computacional tanto para a criação dos elementos triangulares com continuidade geométrica quanto para a obtenção das informações iniciais, via Blender TM , é explicitada e sua eficiência é comprovada por meio de modelagem de geometrias globalmente paramétricas e não-paramétricas de complexidade variada.

Palavras-chave:
Continuidade G 1; elemento triangular; software Blender TM; geometria complexa

ABSTRACT

In the computational modeling of solids, the construction of a smooth surface is one of the fundamental requirements in order to apply numerical methods, particularly the Boundary Element Methods. In addition, it is required in many other applications such as computer animation models and reconstruction of medical images. All these applications have the geometric continuity G 1 as the fundamental condition for generating smooth surfaces. In this study, the technique of constructing smooth geometries from boundary curves is used. For this construction, the geometric coordinates and the normals of vertices of the triangular patches are required. Because these informations are not immediately available, especially the normal vector, in this study, the computer graphics software named Blender TM is used to overcome this gap in the acquisition of input data. Thus, the procedure for creating the triangular patches with continuity G 1 and the algorithm for obtaining initial information are presented. An excellent efficiency in imposing of the smoothness and ac-curacy in geometrical representation is observed for both globally parametric and globally non-parametric surfaces.

Keywords:
Geometric continuity G 1; triangular patch; BlenderTM software; complex geometry

1 INTRODUÇÃO

A construção de superfícies suaves é uma das principais exigências na modelagem das mais diversas geometrias, que vão desde a carenagem de automóveis ou fuselagem de aviões a objetos presentes em filmes de animação ou jogos interativos.

Um algoritmo para interpolação suave de dados 3D usando superfície composta é obtida a partir da subdivisão e subsequente correção de cada elemento, tanto dentro quanto através dos contornos77 G. Farin. “Surfaces in Computer Aided Geometric Design”. North-Holand (1983), chapter Smooth interpolation to scattered 3D data, pp. 43-63.. Isso significa que uma correção é executada para cada lado na triangularização, o que não é desejável quando as superfícies são ajustadas a um grande conjunto de dados de entrada. O método apresentado em Farin77 G. Farin. “Surfaces in Computer Aided Geometric Design”. North-Holand (1983), chapter Smooth interpolation to scattered 3D data, pp. 43-63. é modificado por Piper1717 B. Piper. Visually smooth interpolation with triangular Bézier patches. In G. Farin (editor), “Geometric Modelling: Algorithms and News Trends”. SIAM (1987), pp. 221-233. para considerar o vetor tangente como dado de entrada, assim como, novos valores para as funções pesos λ, µ e v. No entanto, ainda é necessário proceder as correções para cada lado na triangularização. Com o objetivo de construir superfícies suaves e evitar as correções no processo de triangularização, são construídas superfícies cúbicas G 1 aproximadas, entretanto, à custa de sucessivos refinamentos da triangularização1818 L.A. Shirman & C.H. Séquin. Local surface interpolation with Bézier patches. Computer Aided Geometric Design, 4(4) (1987), 279-295..

Dando continuidade, elementos triangulares que possuem, na interseção, o mesmo plano tangente é objetivo de desenvolvimento usando curvas de contorno2121 D.J. Walton & D.S. Meek. A triangular G1 patch from boundary curves. Computer-Aided Design, 28(2) (1996), 113-123.), (1414 T. Nagata. Smooth local interpolation of surfaces using normal vectors. Journal of Applied Mathematics, (2010).. As curvas de contorno adotadas são inicialmente cúbicas e então são elevadas para ordem quatro a partir da obtenção de pontos internos adicionais aos, já existentes, pontos de controle da curva cúbica por meio da técnica de interpolação ponto-normal2020 D.J. Walton & D.S. Meek. Point normal interpolation for stereolithography modelling. Computer & Graphics, 19(3) (1995), 345-353.. Na tentativa de estimar o vetor normal, autores propuseram a utilização da média normalizada dos vetores normais aos triângulos que contém o vértice em comum2121 D.J. Walton & D.S. Meek. A triangular G1 patch from boundary curves. Computer-Aided Design, 28(2) (1996), 113-123.. E outros propuseram estimar, este vetor, a partir da média ponderada das normais em um mesmo vértice1818 L.A. Shirman & C.H. Séquin. Local surface interpolation with Bézier patches. Computer Aided Geometric Design, 4(4) (1987), 279-295.. Nesta média, os pesos são proporcionais às áreas dos triângulos ou aos ângulos que se encontram nos vértices.

Dentre as novas propostas de construção de superfícies suaves utilizando interpolação pontonormal, tem-se a construção de elementos triangulares curvos a partir da interpolação polinomial cúbica de Bézier cujos pontos de controle são obtidos por meio das projeções dos planos tangentes nos vértices1919 A. Vlachos, J. Peters, C. Boyd & J.L. Mitchell. Curved PN triangles. In “Symposium on interactive 3D graphics” (2001), pp. 159-166., e pela utilização de um fator de forma para regular a planicidade da superfíıcie44 T. Boubekeur & M. Alexa. Phong tessellation. In “SIGGRAPH conference and exhibition on computer graphics and interactive techniques in Asia” (2008), pp. 1-5.. Outros trabalhos propõem a substituição em cada borda do triângulo plano por uma curva ortogonal `as normais dadas nos vértice, e então aproximando o interior do elemento triangular por um polinômio quadrático de Bézier que satisfaça às condições das curvas do contorno do triãngulo1313 T. Nagata. Simple local interpolation of surfaces using normal vector. Computer Aided Geometric Design, 22(4) (2005), 327-347.. Ou utilizando a aproximação dos mínimos quadrados para ajusta a superfície quadrática interna às curvas de contorno11 T. Barrera, A. Hast & E. Benftsson. Surface construction near least square acceleration based on vertex normal on triangular meshes. In “SIGRAD 2002” (2002), pp. 17-22..

No presente trabalho é apresentado um procedimento de construção de superfícies suaves a partir da interpolação ponto-normal. Neste procedimento, os dados de entrada, coordenadas geométricas e os vetores normais nos vértices dos triângulos da malha, são obtidos com auxílio do software de computação gráfica Blender Tm que é acoplado ao programa de geração de superfícies suaves desenvolvido em FORTRAN 11.0. Em seguida, os resultados obtidos pela presente proposta são comparados com os obtidos pela formulação PN1919 A. Vlachos, J. Peters, C. Boyd & J.L. Mitchell. Curved PN triangles. In “Symposium on interactive 3D graphics” (2001), pp. 159-166., Phong Tesselation44 T. Boubekeur & M. Alexa. Phong tessellation. In “SIGGRAPH conference and exhibition on computer graphics and interactive techniques in Asia” (2008), pp. 1-5., Nagata1313 T. Nagata. Simple local interpolation of surfaces using normal vector. Computer Aided Geometric Design, 22(4) (2005), 327-347. e NLSA11 T. Barrera, A. Hast & E. Benftsson. Surface construction near least square acceleration based on vertex normal on triangular meshes. In “SIGRAD 2002” (2002), pp. 17-22..

Este trabalho está organizado da seguinte forma. No item 2 é apresentada a formulação para criação de superfícies suaves. No item 3 é apresentado o procedimento para construção de elementos G 1. No item 4, o código fonte para obtenção de vetores normais via Blender TM 2.70 é apresentado. Em seguida, no item 5, são apresentados exemplos de aplicação. Por fim, no item 6 são realizadas as considerações finais.

2 FORMULAÇÃO PARA CRIAÇÃO DE SUPERFÍCIES SUAVES

Nesta seção são apresentados os fundamentos básicos necessários para a construção de superfícies, assim como é mostrada a formulação teórica dos elementos triangulares com continuidade geométrica G 1.

2.1 Superfícies de Bézier

A abordagem mais elegante e matematicamente mais natural de construir elementos triangulares é por meio das coordenadas baricêntricas. Define-se as coordenadas baricêntricas (u,v,w) de um ponto p = (x,y), com respeito a um triângulo de referência T, pela razão entre áreas

u = Δ 1 Δ , v = Δ 2 Δ , w = Δ 3 Δ , (2.1)

de modo que p = up1 +vp2 +wp3, pk = (x k ,y k ) e u+v+w = 1. Na equação (2.1), tem-se que representa a área do triângulo de referência T, e k , com k = 1,2, 3, representam as áreas dos sub-triângulos do triângulo de referência, que são formados por dois vértices e um terceiro ponto interno de coordenada (x,y).

A partir da expansão de 1 = (u+v+w)n é obtida, em duas variáveis, a base de Bernstein de grau n definida para 0 ≤ i, j,kn com i+ j+k = n, por1212 D. Marsh. “Applied geometry for computer graphic and CAD”. Springer (2005).

B i j k n u , v , w = n ! i ! j ! k ! u i v j w k . (2.2)

Existem ½(n+1) (n+2) funções base linearmente independentes. Desta forma é obtido um mapeamento do domínio paramétrico T para ℝ3 por meio do elemento triangular de Bézier-Bernstein definido por22 P.E. Bézier. “Fundamental developments of computer-aided geometric modeling”. Academic Press (1993), chapter the first of CAD/CAM and the UNISURF CAD system, pp. 13-26.

S u , v , w = i p i , j , k B i j k n u , v , w 0 i , j , k n , (2.3)

em que pi, j,k são pontos de controle e |i| = i+ j+k = n.

2.2 Continuidade geométrica

A condição de continuidade de função (assim como a de coplanaridade para o caso de superfícies) não implica em continuidade dos planos tangentes nas interseções destas funções. Desta forma, a garantia da existência de suavidade na interseção entre elementos (funções) está associada a continuidade geométrica, a qual está intrinsecamente relacionada ao conceito de parametrização equivalente.

Seja C(u), com u ∈ [a;b], e C~u~ com u~ a~, b~ duas parametrizaões regulares C (uma parametrização é regular se sua primeira derivada existe). Essas parametrizações são ditas equivalentes, isto é, descrevem a mesma curva orientada, se existe uma função Cf : a~, b~ a, b tal que1212 D. Marsh. “Applied geometry for computer graphic and CAD”. Springer (2005).

1 . C ~ u ~ = C f u ~ ; 2 . f a ~ = a ; 3 . f b = b ; 4 . d f u ~ d u ~ > 0

A definição de parametrização equivalente para superfícies pode ser obtida de forma semelhante à definição para curvas, apenas acrescentando um novo parâmetro v~ e considerando a função de mudança, f , com dois parâmetros em seu domínio.

A partir do conceito de parametrização equivalente, define-se a continuidade geométrica: duas superfícies regulares S 1 (s, t) e S2 (u,v) se interceptam com continuidade G k no ponto P = S1 (s 0; t 0) = S2 (u 0;v 0) sempre que existir um mapeamento invertével (chamado de reparametrização) f : u~, v~ uu~, v~, vu~, v~que proporcioneS1s, t e S2uu~, v~, vu~, v~se interceptarem com continuidade C k neste ponto. Assim, duas superfícies são consideradas de continuidade G k se a interseção entre as superfícies tem continuidade G k em cada ponto da curva comum às superfícies.

Portanto, quando duas superfícies se interceptam com continuidade G 1 em todo ponto P, as superfícies apresentam normais proporcionais e, como consequência, o mesmo plano tangente na região de interseção das superfícies. O inverso também é verdadeiro, se duas superfícies se interceptam no ponto P e tem normais às superfícies proporcionais neste ponto, então as superfícies se interceptam com continuidade G 1(1111 C. Loop. A G1 triangular surface of arbitrary topological type. Computer Aided Geometric Design, 11 (1994), 303-330..

2.3 Técnica para construção de elementos G1

A ideia chave do presente algoritmo é transformar malhas inicialmente constituída por triângulos planos em malhas formadas por triângulos curvos, ou seja, o vetor posição (ou coordenada geométrica) Qi (Qi = pi ) e o vetor normal Ni nos vértices dos triângulos planos são interpolados pela superfície paramétrica triangular de Bézier dada pela equação (2.3).

A partir da teoria de curvas (ver77 G. Farin. “Surfaces in Computer Aided Geometric Design”. North-Holand (1983), chapter Smooth interpolation to scattered 3D data, pp. 43-63.) é possível escrever tanto a curva de Bézier de ordem 3 quanto o seu vetor tangente pelas seguintes equações, respectivamente:

C k t = i = 0 3 V k , i B i , 3 t , 0 t 1 , k = 0 , 1 , 2 , (2.4)

d d t C k t = 3 i = 0 2 W k , i B i , 2 t , 0 t 1 , k = 0 , 1 , 2 , (2.5)

com Vk,0 = Qk , Vk,3 = Qk+1 (por definição, Q3: = Q0) e os demais vértices de controle Vk,i (i = 1; 2) determinados mais adiante pelo teorema 1. Quanto ao termo Wk,i da equação (2.5) é dado por Wk,i = Vk,i = Vk,i+1 - Vk,i i = 0; 1 e 2. Tanto os vértices de controle Vk,i quanto os vetores Wk,i são ilustrados na figura 1.

Figura 1
Curvas de contorno de ordem 3.

A utilização de curvas de ordem 3 é motivada pelo fato de que esta ordem é a menor a ser considerada para a construção de curvas polinomiais não coplanares2121 D.J. Walton & D.S. Meek. A triangular G1 patch from boundary curves. Computer-Aided Design, 28(2) (1996), 113-123.. O recurso das superfícies quárticas, a partir das curvas de contorno cúbica, é justificado pelo fato desta ordem ser a menor para a construção de superfícies triangulares de Bézier (ou de Gregory) com continuidade G 1(1717 B. Piper. Visually smooth interpolation with triangular Bézier patches. In G. Farin (editor), “Geometric Modelling: Algorithms and News Trends”. SIAM (1987), pp. 221-233.. Assim, de acordo com a equação (2.3), pode ser escrita a superfícies de interesse, em coordenadas baricêntricas, da seguinte forma:

S u , v , w = i + j + k = 4 p i , j , k 4 ! i ! j ! k ! u i v j w k , u , v , w 0 ; u + v + w = 1 i , j , k 0 (2.6)

com

P 0 , 0 , 4 = Q 0 , P 0 , 4 , 0 = Q 1 , P 4 , 0 , 0 = Q 2 .

Ao contrário das curvas de66 C. Deboor, Holling & M. Sabin. High accuracy geometric Hermit interpolation. Computer-Aided Design, 4(4) (1987), 269-278. ou das curvas de quarta ordem proposta por1010 D. Hansford, R.E. Barnhill & G. Farin. Curves with quadric boundary precision. Computer-aided Design, 11 (1994), 519-531., as curvas utilizadas neste trabalho, assim como as desenvolvidas em2121 D.J. Walton & D.S. Meek. A triangular G1 patch from boundary curves. Computer-Aided Design, 28(2) (1996), 113-123., não são restritas às planares. A estratégia, utilizada neste trabalho para a construção dos elementos triangulares G 1, é dependente do ajuste das curvas cúbicas de Bézier entre os pares de pontos amostrados (Q0 - Q1, Q1 - Q2, Q2 - Q0) sendo que, em seguida o grau dessas curvas é elevado para ordem quatro, de modo que seja usada para desenvolver a superfície composta por elementos de quarta ordem de Gregory. As relações entre os vértices de controle de Bézier com os pontos normais interpolantes são dadas pelo teorema que segue. Este teorema foi provado em2222 D.J. Walton & M. Yeung. Geometry modelling from CT scan for stereolithography apparatus. In Z. Tang (editor), “New advances in CAD & Computer Graphics”. International Academic Publishers (1993), pp. 417-422. e é utilizado para determinar os termos V k;i , i = 1 e 2, presentes na equação (2.4).

Teorema 2.1.Seja a curva de contorno cúbica dada por Ck (t). Considere, ainda, por definição os seguintes parâmetros dk =||Vk,3 - Vk,0|| , Γk =||Vk,3 - Vk,0||/di, ak =Nk· Nk+1, ak;0= Nk· Γk e a k,1 = N k+1 · Γk . Assume que se a k,0 = 0 e a k,1 ≠ 0 (ou se a k,0 ≠ 0 e a k,1 = 0) então a k > 0.

Desta forma, a curva cúbica de Bézier (equação 2.4) fica descrita por

V k , 0 = Q k , V k , 3 = Q k + 1 , V k , 1 = V k , 0 + d k 6 Γ k - 2 ς k N k + υ k N k + 1 / 18 , V k , 2 = V k , 3 - d k 6 Γ k - ς k N k + 2 υ k N k + 1 / 18 ,

com

ς k = 6 2 a k , 0 + a k a k , 1 / 4 - a k 2 , υ k = 6 2 a k , 1 + a k a k , 0 / 4 - a k 2 .

Os termos Vk, i (i = 0; ...;3) estão entre Qk e Qk+1 (ver figura 1) e as direções de suas normais principais são paralelas a Nk em t = 0 e paralela a Nk+1 em t = 1.

Como mencionado anteriormente, quaisquer dois ou mais elementos adjacentes são unidos com continuidade G1 se tiverem tanto um plano tangente quanto uma curva de contorno em comum.

Uma abordagem utilizada por diversos autores77 G. Farin. “Surfaces in Computer Aided Geometric Design”. North-Holand (1983), chapter Smooth interpolation to scattered 3D data, pp. 43-63.), (1717 B. Piper. Visually smooth interpolation with triangular Bézier patches. In G. Farin (editor), “Geometric Modelling: Algorithms and News Trends”. SIAM (1987), pp. 221-233.), (1818 L.A. Shirman & C.H. Séquin. Local surface interpolation with Bézier patches. Computer Aided Geometric Design, 4(4) (1987), 279-295.), (55 H. Chiyokura. “Advanced Computer Graphics”. Springer-Verlag (1986), chapter Localized surface interpolation method for irregular meshes, pp. 3-19.), (1111 C. Loop. A G1 triangular surface of arbitrary topological type. Computer Aided Geometric Design, 11 (1994), 303-330. para a composição de elementos de superfícies G1 é idealizar faixas tangentes ao longo de cada curva de contorno e então construir o elemento de superfície de tal forma que as derivadas que cruzam as curvas de contorno estejam nas direções (1, - 1/2, - 1/2), (-1/2, - 1/2, 1) e (-1/2, 1, - 1/2). Em coordenadas baricêntricas, esta faixa tangente é formada pela derivada direcional fornecida pelo vetor

F k t = i = 0 3 D k , i B i , 3 t k = 0 , 1 , 2 , 0 t 1 , (2.7)

com

D 0 , i = P 1 , i , 3 - i - 1 2 P 0 , i + 1 , 3 - i - P 0 , i , 4 - i , (2.8)

D 1 , i = P i , 3 - i , 1 - 1 2 P i + 1 , 3 - i , 0 - P i , 4 - i , 0 , (2.9)

D 2 , i = P 3 - i , 1 , i - 1 2 P 3 - i , 0 , i + 1 - P 4 - i , 0 , i . (2.10)

Assim como utilizado por2121 D.J. Walton & D.S. Meek. A triangular G1 patch from boundary curves. Computer-Aided Design, 28(2) (1996), 113-123., o presente trabalho também utiliza a ideia de faixas tangentes, entretanto, ao invés de utilizar os vetores tangente e binormal da estrutura de Frenet para gerar tais faixas, foram usados o vetor tangente (ver equação 2.5) e o vetor

H k t = k = 0 2 A k , j B j , 2 t , 0 t 1 , k = 0 , 1 , 2 (2.11)

em que

A k , 0 = N k × W k , 0 W k , 0 , A k , 2 = N k + 1 × W k , 2 W k , 2 , A k , 1 = A k , 0 + A k , 2 A k , 0 + A k , 2 . (2.12)

Na figura 2 é mostrada a construção das faixas tangentes a partir dos vetores tangente, dC(t)=dt, e do vetor Hk definido na equação (2.11).

Figura 2
Faixa gerada pelo vetor tangente dC(t)=dt e o pelo vetor Hk.

A partir da derivada direcional, acima descrita, é possível construir elementos triangulares com o uso das superfícies de Gregory55 H. Chiyokura. “Advanced Computer Graphics”. Springer-Verlag (1986), chapter Localized surface interpolation method for irregular meshes, pp. 3-19.. Os pontos de controle das curvas de contorno quártica C(t) (grau elevado a partir da cúbica), que são construídos a partir dos novos vértices de controle Lk, j e obtidos pela expressão Lk,j=14[jVk,j1+(4j)Vk,j], são usados como pontos das bordas do elemento triangular. Para o elemento de Bézier, os pontos de controle internos adjacentes à borda, por exemplo P1,1,2 e P1,2,1 com respeito ao contorno entre Q0 e Q1, podem ser obtidos a partir da imposição da restrição de continuidade tangente através de suas bordas. Isto implica que cada ponto de controle interno é determinado duas vezes, geralmente com posições distintas, uma vez para cada contorno com o qual está associado (ver figura 3). Chiyokura55 H. Chiyokura. “Advanced Computer Graphics”. Springer-Verlag (1986), chapter Localized surface interpolation method for irregular meshes, pp. 3-19. resolve esta situação, conforme Gregory88 J.A. Gregory. “Computer Aided Geometric Design”. Academic Press (1974), chapter Smooth interpolation without twist constraints, pp. 71-87., com o uso de uma combinação entre as duas posições de tal forma que assegure continuidade do plano tangente na interface entre os elementos triangulares de Bézier. Com o uso dos pontos de controle de Gregory, é possível escrever os pontos internos de forma única e que satisfaçam a continuidade desejada por meio das relações

P 1 , 1 , 2 = 1 u + v - u G 2 , 2 + v G 0 , 1 , (2.13)

P 1 , 2 , 1 = 1 w + u - w G 0 , 2 + u G 1 , 1 , (2.14)

P 2 , 1 , 1 = 1 v + w - v G 1 , 2 + w G 2 , 1 , (2.15)

Figura 3
Pontos de controle de Gregory.

Os pontos Gk, 1 e Gk, 2 , com k = 0; 1; 2, mostrados na figura 3, são determinados a partir da restrição de que as derivadas direcionais, que cruzam cada contorno, pertençam à faixa tangente (ver figura 2) construída para cada contorno correspondente, isto é,

F k t = 1 3 α k t d d t C t + β k t H k t , k = 0 , 1 , 2 (2.16)

na qual αk (t) e β k (t) são polinômios em t, Fk (t) é definido pela equação (2.7) com os valores dos Pi, j, k das equações (2.8-2.10) substituídos pelos valores apropriados das equações (2.13-2.15) e os vetores ddtCt e Hk são dados pelas equações (2.5) e (2.11), respectivamente.

Uma vez que Fk (t) é cúbica (ver equação 2.7) e tanto ddtCkt quanto H k (t) são quadráticas (ver equações 2.5 e 2.11, respectivamente), é necessário compatibilizar a ordem das funções escritas na equação (2.16) adotando ordem um (linear) para αk (t) e β k (t) da seguinte forma

α k t = λ k , 0 B 0 , 1 t + λ k , 1 B 1 , 1 t , β k t = μ k , 0 B 0 , 1 t + μ k , 1 B 1 , 1 t , (2.17)

com 0 ≤ t ≤ 1, i = 0,1, 2.

Decorre das equações (2.5, 2.7, 2.11 e 2.17) que a equação (2.16) pode ser escrita como

j = 0 3 D k , j B j , 3 t = j = 0 3 λ 1 , j B j , 3 t j = 0 3 W k , j B j , 2 t + j = 0 1 μ k , j B j , 1 t j = 0 2 A k , j B j , 2 t (2.18)

ou, com o uso da relação1212 D. Marsh. “Applied geometry for computer graphic and CAD”. Springer (2005).

B i , m t B j , n t = m , i n , j m + n , i + j B i + j , m + n t (2.19)

a equação (2.18) pode ser reescrita

j = 0 3 D k , j B j , 3 t = j = 0 1 i = 0 2 1 , j 2 , i 3 , j + i λ k , j W k , i + μ k , j A k , i B j + i , 3 t (2.20)

com a notação u, v : = u!v!u - v!.

Comparando os coeficientes de B j,3 (t), j = 0, ..., 3, na Eq.(2.20), tem-se

D k , 0 = λ k , 0 W k , 0 + μ k , 0 A k , 0 , D k , 1 = 2 3 λ k , 0 W k , 1 + 1 3 λ k , 1 W k , 0 + 2 3 μ k , 0 A k , 1 + 1 3 μ k , 1 A k , 0 , D k , 2 = 1 3 λ k , 0 W k , 2 + 2 3 λ k , 1 W k , 1 + 1 3 μ k , 0 A k , 2 + 2 3 μ k , 1 A k , 1 , D k , 3 = λ k , 1 W k , 2 + μ k , 2 W k , 2 . (2.21)

Os vetores Dk,0 e Dk,3 , k = 0,1,2 são conhecidos e pertencem aos planos normais a Nk e Nk+1 , respectivamente. A determinação de λk,0 , µ k,0 , lk;1 e λk,1 é feita de forma imediata a partir da primeira e última expressão da equação (2.21). Já os vetores Gk,1 e Gk,2 , i=0, 1, 2, são obtidos a partir da segunda e terceira expressão da equação (2.21), além da derivadas nas direções cruzadas entre as bordas dos elementos triangulares presentes nas equações (2.8-2.10).

3 PROCEDIMENTO PARA CONSTRUÇÃO DE ELEMENTOS TRIANGULARES G1

Após a apresentação teórica para construção de superfícies suaves G 1, nesta seção é detalhado o procedimento prático da construção dos elementos triangulares de grau quatro com continuidade geométrica. De forma resumida, é apresentado na figura 4 o fluxograma geral para construção dos elementos triangulares. Nos itens abaixo é detalhada cada etapa.

Figura 4
Fluxograma para a criação de elementos triangulares G1.

  • Etapa 1: Dados de entrada; Nesta etapa são fornecidas as coordenadas geométricas (Q0, Q0, Q2) e as normais (N0, N1, N2) nos vértices do triângulo como mostrado na figura 1;

  • Etapa 2: Calcular os vetores Vk, je as curvas Ck (t); Nesta etapa é utilizado o teorema 2.1 para ajustar as curvas de Bézier aos pares de pontos (Q0,Q1), (Q1,Q2) e (Q2,Q0), além de determinar os vetores Vk ,j e Ck (t), com k, j = 0, 1, 2 conforme o algoritmo apresentado na figura 5.

  • Etapa 3: Determinar as curvas

    ddtCt
    e H(t); A partir da equação (2.5) é calculado
    ddtCt
    e das equações (2.11) e (2.12) é determinada a curva H(t). O algoritmo para o cálculo desta etapa é apresentado na figura 6.

  • Etapa 4: Elevar a ordem da curva Ck (t); O procedimento para elevar a ordem de 3 para 4 o grau da curva de contorno é mostrado na figura 7.

  • Etapa 5: Determinar os parâmetros λk, j e µ k, j , com k = 0, 1, 2, j = 0, 1; O procedimento para o cálculo dos parâmetros λk, j e µ k, j a partir da equação (2.21) é explicitamente apresentado na figura 8.

  • Etapa 6: Determinar os pontos de Gregory Gk, j, de controle interno e superfície de Bézier; O procedimento, apresentado na figura 9, determina os pontos de Gregory (ver equações 2.8 - 2.10 e 2.21), de controle interno P112, P121, P211 (ver equações 2.13 - 2.15), e por fim, é feita a construção do elemento triangular de continuidade G 1 (ver equação 2.6).

Figura 5
Algoritmo de cálculo dos vetores Vk; j e das curvas Ck (t).

Figura 6
Algoritmo para determinar as curvas ddtCt e H(t).

Figura 7
Algoritmo para elevação da ordem da curva Ck(t).

Figura 8
Algoritmo para cálculo dos parâmetros λk; j e µk; j.

Figura 9
Algoritmo para determinar os pontos de Gregory, os pontos de controle interno e a superfície de Bézier.

4 AUXÍLIO DO SOFTWARE BLENDERTM NA CONSTRUÇÃO DE ELEMENTOS G1

Nas figuras 4 - 9 foram apresentados os procedimentos para a criação de superfícies suaves propostos neste trabalho. Dentre as diversas etapas, há uma de primordial importância para a construção eficiente das geometrias com continuidade do plano tangente, que é a etapa 1: entrada de dados. Nesta etapa são exigidas as coordenadas geométricas e os vetores normais nos vértices da malha triangular plana (figura 1), que podem ser de difícil obtenção para geometrias complexas. Para contornar esta dificuldade, o presente trabalho acoplou o software de computação gráfica denominado Blender Tm ao programa, desenvolvido na linguagem Fortran, para construção das superfícies G 1.

O Blender Tm é um software gráfico de código aberto, escrito nas linguagens C, C++ e Python, desenvolvido para animação e criação de filmes, além de desenhos animados, sem nenhum objetivo, a princípio, para a análise numérica. A partir da criação de geometrias das mais variadas complexidades no Blender Tm , é possível extrair deste software as informações de entrada e então seguir todas as etapas descritas nas figuras 4 - 9. Cabe salientar, que as coordenadas e os vetores normais são obtidos do programa Blender Tm a partir de malhas triangulares de três nós, o que torna a sua aplicação direta para análise numérica limitada às aproximações de grau 1 e sem garantia de continuidade do plano tangente na zona de interface entre os elementos da malha.

Salientando ainda que, mesmo utilizando malha triangular de três nós, a normal obtida é única, uma vez que esta é calculada a partir do processo de parametrização local (em cada trecho de superfícies - patch) utilizando superfície NURBS (Non Uniform Rational Basis Spline) interna do software.

Diante das limitações proporcionadas pelo Blender TM para a análise numérica, a presente formulação de construção de elementos G 1 torna ideal ao acoplamento com tal software. A figura 10 apresenta o código desenvolvido em Python para extrair as informações necessárias para a etapa 1 da presente formulação de construção dos elementos G 1.

Figura 10
Código fonte, em Python, para a extração das coordenadas geométricas e dos vetores normais no BlenderTm.

5 EXEMPLOS DE APLICAÇÃO

Para a verificação do procedimento de criação das superfícies, descrito acima, foram adotados os critérios de continuidade do plano tangente e da representatividade geométrica.

5.1 Descrição geométrica

A seguir são apresentadas as geometrias globalmente paramétricas e não-paramétricas (ou localmente paramétrica) analisadas. As características geométricas para as superfícies paramétricas toroidal e esférica discretizadas, respectivamente, com 200 e 320 elementos triangulares são apresentadas na figura 11.

Figura 11
Características geométrica e tipo de aproximação para a construção de geometrias paramétricas auxiliada pelo BlenderTM.

Quando se deseja representar formas presentes na natureza, as geometrias paramétricas tornam-se bastante limitadas e são necessárias a utilização de geometrias globalmente não-paramétricas complexas. Como aplicação de geometria globalmente não-paramétrica, este trabalho analisou a continuidade do plano tangente para a geometria de uma cabeça humana (ver figura 12), a qual foi discretizada com 8704 elementos triangulares. Esta geometria possui alta complexidade, principalmente, por ter curvas acentuadas e suaves, o que a torna um grande desafio na integração CAD (Computer-Aided Designer) e CAE (Computer-Aided Engineering), principalmente pelo Método dos Elementos de Contorno.

Figura 12
Características geométrica, número de elementos e de nós para a geometria complexa globalmente não-paramétrica construída com auxílio do BlenderTM.

5.2 Continuidade do plano tangente

Nesta seção é analisada a capacidade que as funções aproximadoras (Bézier G 1, Phong, Nagata, NLSA e PN) possuem em representar continuidade dos planos tangentes nas interfaces dos elementos triangulares, ou seja, a capacidade que cada função aproximadora possui em gerar normal única na interface entre os elementos. Para realizar esta análise, é calculado o vetor normal pela equação

N s , t = S s s , t × S t s , t S s s , t × S t s , t (5.1)

em que SS (s, t) e St (s, t) são, respectivamente, vetores tangentes nas direções das curvas s- e t-paramétricas, aplicados nos pontos localizados na fronteira entre os elementos.

Dado um ponto na interface entre dois elementos triangulares genéricos (S1 e S2), os vetores normais a estes elementos, representado, respectivamente, por N1 e N2 pertencem a um mesmo ponto na interface destas duas superfícies. Uma vez determinados os vetores normais, via Blender TM é calculado o cosseno do ângulo formado pelos vetores N1 e N2 por meio da equação (5.2). Este procedimento é realizado para diversos pontos nas interfaces dos elementos pertencentes à malha, o que proporciona, assim, diversos valores para o cosseno do ângulo formado pelas normais das superfícies adjacentes.

Desta forma, torna-se necessário o uso de parâmetros estatísticos, tais como, o valor médio (equação 5.3) e o desvio padrão (equação 5.4) para analisar o desempenho das funções aproximadoras em representar superfícies suaves.

cos θ = N 1 · N 2 , (5.2)

m é d i a = i = 1 n cos θ i n , (5.3)

D P = i = 1 n cos θ i - m é d i a 2 n - 1 (5.4)

Para ilustrar a precisão da função de Bézier G 1 em representar geometrias suaves, na figura 13 é apresentado o comportamento das componentes do vetor normal (n x ,n y e n z ) para as superfícies paramétricas, tais como, esfera, figura 13 (a-c), e toroide, figura 13 (d-f).

Figura 13
Componentes nx, ny e nz obtidas pela aproximação de Bézier G1 para geometria esférica (a-c) e toroidal (d-f).

A partir da figura 13, e em detalhes na figura 14, pode ser observado que as imagens apresentam uma única tonalidade de cor em ambos os lados das linhas de interface dos elementos triangulares, ou seja, é mostrado, qualitativamente, a unicidade do vetor normal na borda do elemento.

Figura 14
Detalhe das componentes do vetor normal para a esfera (a-c) e toroide (d-f).Componente nx, (a) e (d), componente ny, (b) e (e) e componente nz, (c) e (f).

Outras funções aproximadoras tais como, Nagata1313 T. Nagata. Simple local interpolation of surfaces using normal vector. Computer Aided Geometric Design, 22(4) (2005), 327-347., NLSA11 T. Barrera, A. Hast & E. Benftsson. Surface construction near least square acceleration based on vertex normal on triangular meshes. In “SIGRAD 2002” (2002), pp. 17-22., PN1919 A. Vlachos, J. Peters, C. Boyd & J.L. Mitchell. Curved PN triangles. In “Symposium on interactive 3D graphics” (2001), pp. 159-166. e Phong tesselation44 T. Boubekeur & M. Alexa. Phong tessellation. In “SIGGRAPH conference and exhibition on computer graphics and interactive techniques in Asia” (2008), pp. 1-5. são bastante difundidas na literatura33 M. Boshiroli, C. Fünfzig, L. Romani & G. Albrecht. A comparison of local parametric C0 Bézier interpolants for triangular meshes. Computers & Graphics, 35 (2011), 20-34. e possuem capacidade semelhantes às apresentadas na presente formulação quanto à construção de geometrias. No entanto, a capacidade de construção de superfícies suaves é analisada e comparada com a formulação presente (Bézier G 1).

As discretizações e os parâmetros estatísticos para as aproximações presentes na literatura33 M. Boshiroli, C. Fünfzig, L. Romani & G. Albrecht. A comparison of local parametric C0 Bézier interpolants for triangular meshes. Computers & Graphics, 35 (2011), 20-34. e no presente trabalho (chamadas de Bézier G 1) são apresentadas na tabela 1. Diante das informações presentes na tabela 1, pode-se observar a superioridade, significativa, da função Bézier G 1 frente às demais outras funções aproximadoras. Dentre estas funções, verifica-se que os triângulos de Nagata e PN possuem representatividade da continuidade do plano tangente superior aos triângulos Phong e NLSA. Devido à aplicação crescente dos triângulos de Nagata para a análise numérica1616 D.M. Neto, M.C. Oliveira, L.F. Menezes & J.L. Alves. Improving Nagata patch interpolation applied for tool surface description in sheet metal forming simulation. Computer-Aided design, 45 (2013), 639-656.), (1515 D.M. Neto, M.C. Oliveira & L.F. Menezes. “Nagata patch interpolation algorithms: strategies towards sheet metal forming tool description in CAE”. VDM Verlag (2010).), (99 T. Hama, T. Nagata, C. Teodosiu, A. Makinouchi & H. Takuda. Finite-element simulation of springback in sheet metal forming using local interpolation for tool surfaces. International Journal of Mechanical Sciences, 50 (2008), 175-192., é chamada a atenção para a superioridade da presente proposta (Bézier G 1) frente a esta aproximação1313 T. Nagata. Simple local interpolation of surfaces using normal vector. Computer Aided Geometric Design, 22(4) (2005), 327-347. quando se refere à eficiência na construção de superfícies suaves rígidas, sem consideração da deformação geométrica.

Tabela 1:
Parâmetros estatísticos para as aproximações Phong, Nagata, NLSA, PN e Bézier G1 (presente trabalho).

Nas figuras 15 e 16 são apresentadas, em vista frontal e lateral, respectivamente, as variações das componentes normais (n x ,n y ,n z ) para a geometria de uma cabeça obtida pela aproximação Bézier G 1, com os dados de entrada (coordenadas e normais nodais) obtido pelo acoplamento da formulação com o Blender Tm . A partir do detalhe ampliado (nariz) presente na figura 16, pode ser observado uma única tonalidade de cor na região (linha) de interseção entre elementos da malha, ou seja, obtêm-se uma única normal tanto calculado pelo elemento da esquerda quanto pelo o da direita.

Figura 15
Geometria cabeça (vista frontal). As imagens a-c mostram, respectivamente, as componentes nx,ny e nz obtidas pela aproximação de Bézier G1.

Figura 16
Geometria cabeça via aproximação Bézier G1 (presente formulação). Componentes nx,ny e nz, imagens a-c. Detalhes ampliados das componentes do vetor normal, imagens d-f.

A análise quantitativa foi realizada para uma discretização com 8704 elementos triangulares de Bézier G 1. Nesta análise foram calculados os seguintes parâmetros estatísticos, referente ao cosseno do ângulo formado pelas normais na interface dos elementos: valor mínimo = 0,999982713, valor máximo = 1,000000000, valor médio = 0,999999999 e desvio padrão = 6,25165(10-9). A partir destes valores é observada a excelente representatividade da continuidade do plano tangente pela aproximação Bézier G 1 que apresenta valor mínimo, médio e desvio padrão com ordem de grandeza do erro, em relação ao valor unitário, de 10-6, 10-10 e 10-9, respectivamente.

5.3 Representação geométrica

Após realizada a análise da continuidade do plano tangente na interface entre os elementos triangulares, nesta seção é verificada a capacidade em representar geometrias pela formulação, denominada, Bézier G 1. Nesta verificação, é realizado um estudo comparativo das aproximações Phong, Nagata, NLSA e PN com a função Bézier G 1.

Nas figuras 17 e 18 é mostrado o comportamento do parâmetro estatístico valor médio da distância entre a geometria construída pelas funções aproximadoras e a geometria analítica, à medida que é variada a quantidade de elementos. Devido a este referencial analítico, o presente trabalho realizou estudo para diversas geometrias paramétricas, entretanto, devido à sua semelhança de resultados, são apresentadas apenas as comparações com as geometrias esférica e toroidal (figura 11).

Figura 17
Valor médio da distância entre a superfície esférica analítica e a gerada pelas funções aproximadoras.

Figura 18
Valor médio da distância entre a superfície toroidal analítica e a gerada pelas funções aproximadoras.

Para a geometria esférica, figura 17 e em maior detalhe na figura 17-b, observa-se que para uma quantidade de 32 a 1300 elementos, os triângulos de Nagata e os da presente formulação (Bézier G 1) demostram melhores resultados, enquanto a aproximação Phong apresenta o pior desempenho, com relação à distância média, quando comparado às demais aproximações na representatividade da geometria.

Na figura 18-b é apresentado, em detalhe, para uma quantidade de 50 a 720 elementos triangulares, o melhor desempenho das aproximações Bézier G 1 e de Nagata, enquanto que a função Phong, novamente, apresenta pior desempenho para o valor da distância média.

Diante dos exemplos analisados, tem-se que a função aproximadora mostrada neste trabalho (denominada de Bezier G 1), cuja principal finalidade é construir superfícies suaves, e a aproximação de Nagata apresentaram capacidade semelhante em representar geometrias.

6 CONCLUSÃO

Com o objetivo de modelar computacionalmente geometrias suaves, este trabalho apresentou uma técnica de construção de elementos triangulares com continuidade geométrica G 1, ou seja, construção de elementos que possuem normal única nos pontos de interseção entre os elementos da malha. Esta característica única da normal é de grande importância na modelagem numérica, principalmente no uso do Método dos Elementos de Contorno, pois evita a necessidade de colocação de nós duplos para representar suavidades, o que proporciona uma maior facilidade tanto no pré quanto no pós processamento de estruturas com geométricas complexas.

Para o sucesso da técnica apresentada (Bézier G 1), são necessárias, como dado de entrada, as coordenadas geométricas e as normais dos nós, nos vértices da malha triangular. A vantagem na utilização do elemento Bézier G 1 é devido a necessidade, apenas, de criar malha formada por elementos planos, pois a função aproximadora transforma estes elementos triangulares planos em curvos. Por outro lado, é desafiador a obtenção do vetor normal para geometrias complexas.

Assim, para auxiliar a obtenção desta informação foi utilizado o software de computação gráfica Blender TM .

O presente trabalho acoplou, com sucesso, o software gráfico ao programa desenvolvido, em FORTRAN, para a criação de superfícies suaves G 1, a partir do procedimento descrito acima. Como exemplo, foram apresentados resultados tanto para geometrias paramétricas (esfera e toroide) quanto para geometria globalmente não-paramétrica (cabeça). A partir da análise da continuidade do plano tangente na interface entre os elementos e da capacidade de representar formas geométricas, pôde ser observado excelente eficiência da função Bézier G 1 em representar geometrias suaves independente de sua complexidade e sem perder a eficiência na representatividade da geometria.

AGRADECIMENTOS

Agradecimentos ao CNPq (Conselho Nacional de Desenvolvimento Científico e Tecnológico) e à FAPESP (Fundação de Amparo à Pesquisa do Estado de São Paulo) pelo auxílio financeiro.

REFERÊNCIAS

  • 1
    T. Barrera, A. Hast & E. Benftsson. Surface construction near least square acceleration based on vertex normal on triangular meshes. In “SIGRAD 2002” (2002), pp. 17-22.
  • 2
    P.E. Bézier. “Fundamental developments of computer-aided geometric modeling”. Academic Press (1993), chapter the first of CAD/CAM and the UNISURF CAD system, pp. 13-26.
  • 3
    M. Boshiroli, C. Fünfzig, L. Romani & G. Albrecht. A comparison of local parametric C0 Bézier interpolants for triangular meshes. Computers & Graphics, 35 (2011), 20-34.
  • 4
    T. Boubekeur & M. Alexa. Phong tessellation. In “SIGGRAPH conference and exhibition on computer graphics and interactive techniques in Asia” (2008), pp. 1-5.
  • 5
    H. Chiyokura. “Advanced Computer Graphics”. Springer-Verlag (1986), chapter Localized surface interpolation method for irregular meshes, pp. 3-19.
  • 6
    C. Deboor, Holling & M. Sabin. High accuracy geometric Hermit interpolation. Computer-Aided Design, 4(4) (1987), 269-278.
  • 7
    G. Farin. “Surfaces in Computer Aided Geometric Design”. North-Holand (1983), chapter Smooth interpolation to scattered 3D data, pp. 43-63.
  • 8
    J.A. Gregory. “Computer Aided Geometric Design”. Academic Press (1974), chapter Smooth interpolation without twist constraints, pp. 71-87.
  • 9
    T. Hama, T. Nagata, C. Teodosiu, A. Makinouchi & H. Takuda. Finite-element simulation of springback in sheet metal forming using local interpolation for tool surfaces. International Journal of Mechanical Sciences, 50 (2008), 175-192.
  • 10
    D. Hansford, R.E. Barnhill & G. Farin. Curves with quadric boundary precision. Computer-aided Design, 11 (1994), 519-531.
  • 11
    C. Loop. A G1 triangular surface of arbitrary topological type. Computer Aided Geometric Design, 11 (1994), 303-330.
  • 12
    D. Marsh. “Applied geometry for computer graphic and CAD”. Springer (2005).
  • 13
    T. Nagata. Simple local interpolation of surfaces using normal vector. Computer Aided Geometric Design, 22(4) (2005), 327-347.
  • 14
    T. Nagata. Smooth local interpolation of surfaces using normal vectors. Journal of Applied Mathematics, (2010).
  • 15
    D.M. Neto, M.C. Oliveira & L.F. Menezes. “Nagata patch interpolation algorithms: strategies towards sheet metal forming tool description in CAE”. VDM Verlag (2010).
  • 16
    D.M. Neto, M.C. Oliveira, L.F. Menezes & J.L. Alves. Improving Nagata patch interpolation applied for tool surface description in sheet metal forming simulation. Computer-Aided design, 45 (2013), 639-656.
  • 17
    B. Piper. Visually smooth interpolation with triangular Bézier patches. In G. Farin (editor), “Geometric Modelling: Algorithms and News Trends”. SIAM (1987), pp. 221-233.
  • 18
    L.A. Shirman & C.H. Séquin. Local surface interpolation with Bézier patches. Computer Aided Geometric Design, 4(4) (1987), 279-295.
  • 19
    A. Vlachos, J. Peters, C. Boyd & J.L. Mitchell. Curved PN triangles. In “Symposium on interactive 3D graphics” (2001), pp. 159-166.
  • 20
    D.J. Walton & D.S. Meek. Point normal interpolation for stereolithography modelling. Computer & Graphics, 19(3) (1995), 345-353.
  • 21
    D.J. Walton & D.S. Meek. A triangular G1 patch from boundary curves. Computer-Aided Design, 28(2) (1996), 113-123.
  • 22
    D.J. Walton & M. Yeung. Geometry modelling from CT scan for stereolithography apparatus. In Z. Tang (editor), “New advances in CAD & Computer Graphics”. International Academic Publishers (1993), pp. 417-422.

Datas de Publicação

  • Publicação nesta coleção
    May-Aug 2018

Histórico

  • Recebido
    07 Jul 2017
  • Aceito
    10 Mar 2018
Sociedade Brasileira de Matemática Aplicada e Computacional Rua Maestro João Seppe, nº. 900, 16º. andar - Sala 163 , 13561-120 São Carlos - SP, Tel. / Fax: (55 16) 3412-9752 - São Carlos - SP - Brazil
E-mail: sbmac@sbmac.org.br