Este trabalho apresenta uma técnica para deformação interativa de objetos 3D não estruturados que combina o uso de sketches em 2D e manipulação interativa de curvas. Através de sketches no plano de imagem, o usuário cria curvas paramétricas a serem usadas como manipulares para modificar a malha do objeto. Um conjunto de linhas desenhadas sobre a projeção do modelo pode ser combinado para criar um esqueleto composto de curvas paramétricas, as quais podem ser interativamente manipuladas, deformando assim a superfície associada a elas. Deformações livres são feitas movendo-se interativamente os pontos de controle das curvas. Alguns outros efeitos interessantes, como torção e escalamento, são obtidos operando-se diretamente sobre o campo de sistemas de coordenadas criado ao longo da curva. Um algoritmo para evitar inter-penetrações na malha durante uma sessão de modelagem com a técnica proposta também é apresentado. Esse algoritmo é executado a taxas interativas assim como toda a técnica apresentada neste trabalho. A técnica proposta lida naturalmente com translações e grandes rotações, assim como superfícies não orientáveis, não variedades e malhas compostas de múltiplos componentes. Em todos os casos, a deformação preserva os detalhes locais consistentemente. O uso de curvas esqueleto permite implementar a técnica utilizando uma interface bem intuitiva, e provê ao usuário um controle preciso sobre a deformação. Restrições sobre o esqueleto e deformações sem inter-penetrações são facilmente conseguidos. É demonstrada grande qualidade em torções e dobras nas malhas e os resultados mostram que a técnica apresentada é consideravelmente mais rápida que as abordagens anteriores, obtendo resultados similares. Dado seu relativo baixo custo computacional, esta abordagem pode lidar com malhas compostas por centenas de milhares de vértices a taxas interativas. / This work presents a technique for interactive shape deformation of unstructured 3D models, based on 2D sketches and interactive curve manipulation in 3D. A set of lines sketched on the image plane over the projection of the model can be combined to create a skeleton composed by parametric curves, which can be interactively manipulated, thus deforming the associated surfaces. Free-form deformations are performed by interactively moving around the curves’ control points. Some other interesting effects, such as twisting and scaling, are obtained by operating directly over a frame field defined on the curve. An algorithm for mesh local self-intersection avoidance during model deformation is also presented. This algorithm is executed at interactive rates as is the whole technique presented in this work. The presented technique naturally handles both translations and large rotations, as well as non-orientable and non-manifold surfaces, and meshes comprised of multiple components. In all cases, the deformation preserves local features. The use of skeleton curves allows the technique to be implemented using a very intuitive interface, and giving the user fine control over the deformation. Skeleton constraints and local self-intersection avoidance are easily achieved. High-quality results on twisting and bending meshes are also demonstrated, and the results show that the presented technique is considerably faster than previous approaches for achieving similar results. Given its relatively low computational cost, this approach can handle meshes composed by hundreds of thousand vertices at interactive rates.
Identifer | oai:union.ndltd.org:IBICT/oai:lume.ufrgs.br:10183/11176 |
Date | January 2007 |
Creators | Blanco, Fausto Richetti |
Contributors | Oliveira Neto, Manuel Menezes de |
Source Sets | IBICT Brazilian ETDs |
Language | English |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Biblioteca Digital de Teses e Dissertações da UFRGS, instname:Universidade Federal do Rio Grande do Sul, instacron:UFRGS |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0112 seconds