Você está na página 1de 127

Modelagem

Frederico Damasceno Bortoloti


Adaptado de: Donghoon Yang Anselmo Montenegro Claudio Esperana Paulo Roma Cavalcanti

Computao Grfica e reas Correlatas


processamentodeimagens

Imagem digital computao grfica (sntesede imagens) Modelos

viso computacional

modelagemgeomtrica

Estrutura de aplicao grfica interativa tradicional

Modelagem vs vs. Visualizao


Modelagem:
Interessada na descrio de uma cena
Externamente: representao na forma de arquivo contendo as informaes geomtricas (e outras) Internamente (na execuo do programa): representao em estrutura de dados residente em memria

Visualizao:
Interessada na visualizao (display) da cena a partir (posio do observador) ) de uma dada cmera (p

A princpio, so conceitos independentes.

Espaos de Coordenadas
Plano ou R (2D)

Espaos de Coordenadas
Espao ou R (3D)

Paradigmas de Abstrao
A necessidade de paradigmas (Ari Requicha).

Paradigma dos universos. universos


Fsico F. Matemtico M. M Representao R. Implementao I.

Problemas da rea
Estudar fenmenos em F. Definir os modelos. Estudar as relaes entre R e M. Definir representaes de modelos em M. Estudar converses entre representaes. representaes Definir mtodos de implementao. Comparar estratgias em I.

Esquemas de Representao
Objetos do universo fsico: slidos
O que um slido?

Objetos do universo matemtico vm da:


Geometria diferencial Topologia diferencial

Geometria pode Ser Complicada

Garrafa de Klein (no orientvel)

Toro x Garrafa de Klein

Superfcies No Orientveis
F Faixa i d de Mbius Mbi s tem t um lado l d e uma borda. b d Superfcie Romana obtida costurando-se uma faixa de Mbius borda de um disco ( (representao p de RP2 no R3) ).

Superfcie Romana

Faixa de Mbius

Histrico
Modelagem por arames (wireframes).
Representa p os objetos j por p arestas e p pontos sobre a sua superfcie. ambguos Gera modelos ambguos.

Modelagem por superfcies (dcada de 60).


Fornece a descrio matemtica das superfcies que delimitam o objeto. Poucos testes de integridade do modelo.

Histrico
Modelagem de Slidos (dcada de 70).
Implcita p ou explicitamente p contm informaes do fechamento e conectividade dos objetos. j Garante a realizao fsica. Sistemas CAD-CAM CAD CAM utilizados pela indstria. indstria

Estado da Arte
Modelagem de dimenso mista ou non(dcada de 80). ) manifold (
Permite representar objetos com estruturas internas ou com elementos pendentes de dimenso inferior. Slido delimitado por superfcies no necessariamente planas localmente. Ex.: E ACIS (Spatial (S ti l T Technology) h l ) AutoCad. A t C d

Histrico
Incio dos anos 70 Ian Braid : Ph.D. thesis at the University of Cambridge in England introduced the BUILD system ROMULUS, ROMULUS Parasolid, Parasolid ACIS the Compac system : U of Berlin, Germany Proren : U of Ruhr, Germany Brun B s Euclid E lid system : France F Engelis Euklid system : Switzerland TIPS-1 : Hokkaido University, Japan GeoMap : University of Tokyo, Japan Shapes : Draper Labs, US Synthavision y system y : US GLIDE : Chuck Eastman, Carnegie-Mellon, Architectural application and database y of Rochester PADL : University
Aristides A. G. Requicha, GEOMETRIC MODELING: A First Course

Slido
Adjetivo d
No macio No oco No adulterado ou no misturado g De construo forte e segura

Substantivo
Algo slido Uma figura geomtrica tridimensional de um objeto Uma U substncia b i que resiste i a stress moderado d d e deformao, d f diferente de um lquido ou gs Encarta Dictionary

Descrio de Slidos
Assuma-se que um slido um conjunto p tridimensional de pontos. Conjuntos de pontos podem ser descritos
P Por suas fronteiras f t i Por campos escalares
Definidos por equaes Amostrados

Objetivos da Modelagem de Slidos


Problemas bl d de modelos d l grficos: f f l de falta d robustez, b imcompletude, aplicabilidade limitada. Completa C l t representao t d de objetos bj t slidos lid que so adequados para responder a quaisquer questes geomtricas (de robs) sem ajuda do usurio humano. humano Duas maiores questes; integridade e complexidade

Soonh ng Han Soonhung Han, Kaist

Propriedades da modelagem de slidos


Poder P d expressivo; i Validade: manufacturabilidade; Desambigidade e unicidade; Languagens de Descrio: operaes para construo Conciso: C i requerimento i d de armazenamento Facilidade computacional e aplicabilidade: q de p poder computacional p requerimentos
Soonhung Han, Kaist

Modelo slido
Criao apenas de representaes completas de objetos slidos Representaes desambgas para slidos eque e tos para pa a p propriedades op edades matemticas ate t cas Requerimentos para um modelo slido
Rigidez Finitude Solidez Fechamento sob operao Booleana Descrio finita Determinismo de Fronteira

Propriedades matemticas requeridas


Rigidez d
Distncia e ngulo fixos no espao Euclidiano Preservao de distncias e ngulos

Finitude
Extenses finitas de objetos fsicos

Solidez
Se Sem faces aces ou a arestas estas pe penduradas du adas

Fechamento sob operao Booleana


Operaes p Booleanas aplicadas p a slidos devem p produzir outro slido Resultado de operao Booleana pode ser usado como entrada para outras operaes Booleanas Subtrao e adio de slido so garantem a produo de slidos

Propriedades matemticas requeridas


Descrio finita
Quantidade Q finita de dados deve ser apta p a descrever conjuntos de pontos usados em modelos slidos

Determinismo de fronteira
F Fronteira t i d de um slido lid deve d definir d fi i o slido lid desambigamente

Tipos de modelos slidos


Modelos M d l d de Decomposio D i (BSP-trees, BSP t O t Octrees, etc t .) ) Modelos de Arame (Wireframe) Modelos de Superfcie (Surface Modeling) Modelos de Slido (Solid Modeling)
Modelos Construtivos (CSG Constructive Solid Geometry) Modelos de Fronteira (B-rep Boundary Representation) Modelos Hbridos (CSG e B-rep) M d l Baseados Modelos B d em Features F (Feature-Based F B d Modeling) M d li ) Modelos de Dimenso Mista (Non manifold)

Representao de Slidos
As duas formas, de descrever conjuntos de pontos, do origem p g a trs tipos p de representao:
Por bordo (B-rep Boundary Representation) Implcita (CSG Constructive Solid G Geometry) t ) Por enumerao do espao em clulas (BSPtrees, Octrees, etc.) )

Modelo de Decomposio
Representa um conjunto de pontos como de objetos j simples p a partir p de uma coleo uma coleo fixa de tipos de objetos primitivos combinada com uma nica primitivos, operao de colagem

Tipos de modelos de decomposio


Enumerao exaustiva
Todo espao igualmente dividido em blocos e uma matriz 3D armazena informaes sobre o material (ou a falta dele) em cada bloco Voxel V l

Decomposio celular
Clulas irregulares dividem o objeto em blocos FEM (Finite Element Meshes) para FEA (Finite Element Analysis) anlise estrutural por elementos finitos

Subdiviso de espao p
Divide o espao em blocos recursivamente Representao em Quadtree, Octree

Enumerao Exaustiva
Caso especial de decomposio onde primitivas so cbicas em suas formas Elementos de volume de tamanho uniforme chamados voxels Usado extensivamente em computao grfica e na CG p para medicina Eficiente mas requer armazenamento significativo Acurcia limitada a menos que os voxels sejam extremamente pequenos

Voxel

Voxel

Estruturas da cabea e do crebro ( (ocultas) ) extradas de 150 1 0f fatias

Decomposio Celular
Variedade de tipos de clulas bsicas e um p de combinao colar nico operador Clulas individuais so geralmente criadas como instncias parametrizadas de tipos de clulas Clulas podem ser qualquer objeto que seja topologicamente equivalente a uma esfera (sem buracos)

FEM

Subdiviso de Espao
Inventado para superar o grande consumo de memria da enumerao exaustiva Esquema de subdiviso adaptativa baseado na grade tridimensional de uma enumerao exaustiva

Subdiviso de Espao Representaes por Clulas


Dividem Di id o espao em sub-regies b i convexas.
Exaustiva (Voxels): Cubos de tamanho igual Octrees O t : Cubos C b cujos j lados l d so potncias t i de d 2 BSP-trees: Poliedros convexos

s clulas l l so atribudas t ib d valores l d de um campo escalar F(x, y, z).


Campo assumido constante dentro de cada clula. clula

Slido definido como o conjunto de pontos tais que A < F(x, x y y, z) < B para valores A e B estipulados.

Quadtrees (2D) / Octrees (3D)


Estruturas de dados (rvores) para p hierrquica q do plano p decomposio (quadtrees) / espao (octrees) Podem ser usadas para guardar diferentes tipos de dados, por ex.
Conjunto de pontos p g Malhas poligonais

Quadtree

Quadtrees
Todo d n representa um quadrado d d no plano. l Todo n interno possui exatamente quatro filhos, os quais i representam t os quatro t quadrantes d t d do n pai: i noroeste, nordeste, sudoeste e sudeste. A subdiviso continua conforme algum critrio de parada.

http://www.tecgraf.pucrio.br/~hermann/gc/

Quadtree Critrio de Parada


Exemplo: E l
1. 2. Comea com quadrado envolvendo todo o objeto, que em seguida dividido em 4 quadrados menores. Cada um classificado em
Cheio: o quadrado est totalmente dentro do objeto Vazio: o q quadrado est totalmente fora do objeto j Cheio-Vazio: apenas parte do quadrado ocupada pelo objeto

3.

Para cada quadrado cheio-vazio, repetir os procedimentos 1 e 2. O procedimento encerra quando s existirem quadrados cheios e vazios

Pinho,PUCRS

Quadtree - Exemplo

http://lcp lcad icmc usp br/~nonato/ED/Quadtree/quadtree http://lcp.lcad.icmc.usp.br/ nonato/ED/Quadtree/quadtree.htm htm

Quadtree Programa Exemplo

Autores:PatrciaZottiseRodrigoFehse Alteraes:LeonardoLangie PUCRS

Octree
Idntica Quadtree, mas considerando o p 3D espao
Cubo dividido em 8 sub-cubos

Octree

Octrees

Octrees

FlipCode.com

Octrees

Uso de Octrees e Quadtrees


Exemplos:
Frustum culling g, deteco de coliso, operaes de unio e interseo
Se pai (no) importante, todos os filhos tambm (no) ( ) so

Desvantagem:
Trabalhosas para manipular

FlipCode.com

BSP Trees BSP-Trees

Malhas de Polgonos
Construo de d modelos d l 3D usando d grupos de d polgonos. l
Como cada polgono planar, necessita-se grande quantidade de polgonos para dar a impresso de superfcies curvas
10Kpolgonos 1Kpolgonos

www.gamesfaction.com

Mesh Tesselation
Construo de malhas poligonais
A partir de representaes abstratas
http://www.cs.lth.se/Education/ Courses/EDA221/

A partir de nuvens de pontos


http://www.ticam.utexas.edu/CCV/ projects/VisualEyes/visualization/ geomod/cloud/cloud.html

Malhas de tringulos
Costuma-se usar tringulos l como o polgono l d malhas das lh
O polgono gerado com exatamente 3 vrtices por face Um vrtice pode pertencer a qualquer nmero de faces Adjacncia calculada em tempo constante Tringulos g so sempre p p planares

Giambruno, ,2003

Alguns tipos de malhas de tringulos


O primeiro triangulo desenhado com trs vrtices vrtices, e os demais com apenas um.

Strip Fan Muitos dos vrtices so comuns a vrios polgonos que o constituem. A i a organizao Assim, i dos d polgonos l com vista i t o compartilhamento tilh t dos d vrtices comuns traduz-se num envio e processamento nicos destes vrtices [Mller 2003].

Problema Geral
Quantos mais polgonos, l menos f facetada d fica f a superfcie f curva
Mais polgonos, polgonos significa mais tempo de processamento!!!

LOD Level of Detail


medida did que distncia di i da d cmera a um modelo d l aumenta, o espao por este ocupado na janela diminui e, conseqentemente, o detalhe com que visualizado tambm diminui. O LOD permite definir d f representaes alternativas l para um objeto b grfico, f cada uma sendo ativada de acordo com a distncia ao observador.

LOD
T Torna-se desnecessrio d i e ineficiente definir o objeto com todo detalhe. O objetivo bj ti principal i i l o de d utilizar diferentes representaes de um modelo, d l normalmente l de d resolues distintas, que sero selecionadas de acordo d com um critrio de d deciso pr-determinado. Um dos critrios de deciso mais utilizado distncia do modelo cmera.

Tipos de LOD
Discreto
A construo das diferentes representaes p do modelo realizada numa fase de prprocessamento, p , sendo associada a cada uma delas um intervalo de distncias cmera dentro do q qual o nvel de detalhe deve ser utilizado. execuo o algoritmo calcula a Durante a execuo, distncia da cmera ao objeto e avalia qual dos diferentes nveis de detalhe deve ser utilizado.

Tipos de LOD
Contnuo
Os nveis de detalhe so g gerados em tempo p de execuo. View dependent LOD
Extenso de LOD contnuo usando posio do observador para definir o nvel de detalhe.

Exemplo de LOD Discreto


VRML: n LOD

LOD
Exemplo de LOD
X3D

LOD Contnuo

Vi d View dependent d tLOD

LOD Contnuo
observador

ViewdependentLOD

LOD Contnuo Visualizao de Terrenos


http://www.llnl.gov/icc/sdd/img/images.shtml h // ll l /i / dd/i /i h l

Modelo de Arame (Wireframe)


Representao de arestas (pontos + p ) conexes entre pontos)

Modelo de Arame (Wireframe)

Modelo de Arame (Wireframe)


Vantagens
Simplicidade e velocidade na visualizao dos modelos (geramse apenas linhas)

Problemas
Dificuldade de realizar operaes p com slidos (clculo ( de massa, , volume, determinao de incluso, sem gerao de caminho para ferramentas para NC...) Representao ambga (sujeita a interpretaes diferentes)
Asduasrepresentaesabaixosovlidaspara omodeloemwireframeabaixo

MrcioPinho,PUCRS

Modelo de Arame (Wireframe) Ambigidade e Unicidade


Uma representao nica quando o modelo associado possui uma nica representao. Uma representao ambgua quando pode representar mais de um modelo. Representao ambgua catastrfica (wireframe).
Inviabiliza mquinas de controle numrico.

Modelos de Superfcie
Mais poderosos d que simples l modeladores d l d baseados b d em wireframe por prover descries matemticas da forma das superfcies dos objetos Pode representar uma superfcie fechada (volume) ou aberta

Modelos de Superfcie
Armazena equaes de d superfcies Maioria M i i dos d pacotes t 3D usam modelagem de superfcie Boa para visualizao de complexas p superfcies p e gerao de caminho para NC de superfcies complexas Informaes sobre o volume l so ambigas bi e difceis de calcular

Modelos de Superfcie
Superfcies f no esto adequadamente conectadas Nenhuma informao de conectividade armazenada. Propriedades p de massa no fazem sentido

Modelos de Slido
Sistemas que so capazes de realizar a g slida so muito mais modelagem poderosos que simples modeladores baseados em wireframe. Esses programas so usados para construir i componentes que so objetos bj slidos, e no simplesmente p uma malha de linhas tranadas.

Modelo Construtivo
R Representa t um conjunto j t d de pontos t como combinao bi d de um conjunto de pontos de primitivas. Cada uma das primitivas representada como uma instncia de um tipo de slido primitivo p p para combinar p primitivas Operaes
Unio Interseo Diferena

Muito eficiente em termos de armazenamento Visualizao requer que curvas e superfcies individuais sejam combinadas e avaliadas Muito caro computacionalmente

Tipos de modelos construtivos


Modelo Half-space
Funes f(x,y,z) dividem o espao em 2 metades (f<0 ou f>0 @( @(x,y,z)) )) Metades podem ser delimitadas (esfera) ou no delimitadas (cilindro infinito)

Modelo CSG(Constructive Solid Geometry)


Usurio apenas interage com objetos slidos delimitados Computador p modela slidos delimitados como uma combinao de meios espaos (half-space) Quase todas modelagens construtivas usam CSG pois mais i fcil il para o usurio. i

Modelo Half-space Half space


Cilindro Infinito Planos Cilindro Finito

z<b

x 2+ y < r

z>a

Department of Mechanical Engineering, The Ohio State University

Modelo CSG
Operaes CSG definem objetos atravs de p regularizadas g de conjuntos j de operaes pontos.
Unio, Unio Interseo e Diferena Diferena.

Um objeto regular se o fechamento do interior do seu conjunto de pontos igual prprio p conjunto j de p pontos. ao p

Modelo CSG
Primitivas

Operaes Booleanas

Unio

Interseo

Diferena

rvore CSG
Um modelo CSG codificado por uma rvore.
Os ns internos contm operaes de d conjunto ou transformaes lineares afim. afim Folhas contm objetos primitivos (tipicamente, qudricas).

Modelo CSG
rvore CSG

Modelo CSG
rvore CSG

Modelo CSG
rvore CSG

Modelo CSG

Modelo CSG

Modelo CSG

Modelo CSG

Modelo de Fronteira
Representa R t um conjunto j t d de pontos t em t termos d de sua f fronteira. t i Fronteira de slido : surperfcies Fronteira de superf p cie : faces Fronteira de face : curva (ou aresta) A maioria dos pacotes de modelagem de slido usam a representao de fronteira (B B-rep rep) para armazenar modelos Slido considerado como delimitado por um conjunto de faces Faces tem uma representao matemtica compacta
Plano l Toride Cilndro Superfcie paramtrica como uma superfcie de Bezier

Modelo de Fronteira
aresta face vrtice

Boundary Representation (BRep)


Define-se o modelo 3D a partir de conjunto de polgonos que delimitam uma regio fechada no espao
Esses polgonos so as faces do objeto 3D (poliedro)

Boundary Representation (BRep)


Representaes R
1 lista de vrtices explcita:
FACE: (x1, y1, z1)-(x2, y2, z2)- .... - (xn, yn, zn);

2 listas: lista de vrtices e lista das topologias p g das faces


VRTICES: 1 - (x1, (x1 y1 y1, z1) 2 - (x2, y2, z2) .... .... .... n - (xn, (xn yn yn, zn) FACES: 1 - v1, v1 v2 v2, v3 v3, ...., vn 2 - v3, v5, ..., vn .... .... .... n vn, vn v4 v4, ..., v1

3 listas: vrtices, arestas e faces

Exemplo de 3 listas

http://gbdi.icmc.usp.br/documentacao/ apostilas/cg/downloads/modpoliedrais pdf apostilas/cg/downloads/modpoliedrais.pdf

Grafo B-Rep B Rep

Topology

Geometry

Modelos Hbridos de Slido


O Os mtodos t d d de modelagem d l slida lid CSG e B-rep B so freqentemente combinados para gerar modelos de componentes. componentes Cada um desses mtodos possui suas limitaes, e componentes de difcil criao fazendo uso de um ou outro, podem ser gerados mais facilmente usando uma combinao de ambos os mtodos. A maioria dos sistemas modeladores slido comerciais so hbridos utilizando tanto o mtodo CSG q quanto o B-rep p.

Modelos Hbridos de Slido


Slido

B-Rep Boundary y Representation: Extruso Revoluo Varredura Mesclagem de perfis 2-D

CSG Constructive Solid Geometry: Usa primitivas slidas (cilindro, cone, etc.) como building blocks Construo de slido combinando primitivas usando operadores Booleanos de unio, interseo e diferena

Modelos Hbridos de Slido


M Modelos d l slidos lid so conhecidos h id por serem representaes completas, vlidas, e no ambguas de objetos. Um slido completo aquele que permite um ponto no espao ser classificado relativo ao objeto, se est dentro ou fora ou sobre o objeto. j Essa classificao chamada de endereabilidade espacial ou classificao de pertinncia a conjunto. Um slido vlido no deve ter arestas ou faces penduradas, s assim permitir anlise de interferncia, clculos das propriedades de massa, modelagem e anlise li estrutural t t l de d elementos l t finitos, fi it CAPP, CAPP machine hi vision, e programao de NC.

Modelos Hbridos de Slido Funes de Modelagem Slida


Diferentes Dif maneiras i que um usurio i pode d criar formas slidas:
Criao de primitivas p Booleanas Operaes Operaes de revoluo Operaes de superfcie Modelagem baseada em Features de Engenharia Modelagem paramtrica

Criao de Primitivas
P Primitivas i iti so f formas slidas simples com superfcies matemticas simples Pode ser controlada por um nmero pequeno de parmetros e posicionada usando p uma matriz de transformao

Operaes Booleanas
O Operaes B Booleanas l so usadas para fazer formas mais complicadas combinando formas mais simples 3 tipos de operaes so possveis:
Unio Interseo Diferena

Operaes de Revoluo
Usa sees em wireframe 2D para gera slido l d 3D p Inclui operaes como:
Extruso Revoluo Varredura Formar por Sees

Operaes de Superfcie
O Opera di diretamente t t nas superfcies, arestas e vrtices do modelo slido, para criar uma modificao desejada Exemplos:
Chanfro Arredondamento edo da e to Rascunho Casca

Constructive Solid Geometry (CSG)


Objetos so construdos a partir das Primitivas Slidas

Juno ou Unio Corte ou Diferena Interseo ou Material Comum

Constructive Solid Geometry (CSG)

Modelos Baseados em Features


Um U feature f pode d se definido d fi id como um elemento fsico de uma pea que tem algum l significado i ifi d para a engenharia h i . Ele l deve satisfazer as seguintes condies:
ser um constituinte fsico de uma pea; p p para uma forma g geomtrica ser mapevel genrica; g , sob o p ponto de ser tecnicamente significante, vista da engenharia; e propriedades p q que p podem ser p previstas. ter p

Modelos Baseados em Features


O significado tcnico de feature pode qual q um f feature serve, envolver a funo como ele pode ser produzido, que aes a sua presena deve iniciar iniciar, etc etc. Features podem ser pensados como ' i ii 'primitivas d de engenharia' h i ' relevantes l a alguma g tarefa de engenharia. g

Modelos Baseados em Features


O mtodo t d permite it criar i f furos, chanfros, h f rasgos, etc, para serem associados com outras entidades ou faces. A modelagem por features baseada na idia de se desenhar utilizando building g blocks - blocos de construo. Ao invs de se usar formas analticas como paraleleppedos, l l d cilindros, ili d esferas f e cones como primitivos, o usurio cria modelo do produto usando primitivos de maior nvel que so mais relevantes para sua aplicao especfica.

Modelos Baseados em Features


O conjunto j t fixo fi d de features f t oferecido f id pelos l atuais t i modeladores ainda muito limitada para uso industrial, o que limita as possibilidades do projetista. Os f features devem ser adaptveis p aos usurios e que a biblioteca de features deve ser extensvel.

Modelos Baseados em Features


Exemplos
Furo Slot Cubo Chanfro Rasgo

Modelos Paramtricos
A modelagem slida paramtrica permite que se crie modelos de p q produtos com dimenses variacionais. Ligaes bidirecionais entre o modelo e o esquema de dimensionamento permite a regenerao automtica i d de modelos d l depois p de mudanas nas dimenses e atualizao automtica das dimenses relacionadas.

Modelos Paramtricos
Parmetros vm de:
dimenses em esboos 2D dimenses em geometria 3D (sistemas avanados) parmetros de operao de modelagem variveis i i em equaes do d usurio i

Ag geometria inteira da p parte p pode ser controlada por um pequeno nmero de parmetros chave!

Modelos Paramtricos
Modelagem Paramtrica

Modelagem Dirigida Dimenso Usa parmetros para especificar dimenses de entidades

Modelagem Baseada em Restries Usa restries geomtricas tais como paralelismo, concentricidade, etc. t

Modelos Non-manifold Non manifold


Transferncia de calor de uma parte tocando outra: faces tocantes Propagao de rachadura: elementos 1D e 2D dentro de uma p parte slida Material hbrido: painel sanduche 2 tipos de modeladores non-manifold;
Inclui entidades de dimenses mais baixas em uma estrutura de dados de modelo slido Concentra em modelos compostos => modelo celular
Soonh ng Han Soonhung Han, Kaist

Estrutura de dados Non-manifold Non manifold

Modelo Non-manifold Non manifold

Codificao
Explcita. Ponteiros para lista de vrtices. Ponteiros para lista de arestas. Winged-Edge (Half-Edge, Face-Edge). Quad Quad-Edge Edge (Guibas (Guibas-Stolfi) Stolfi). Radial-Edge.

Codificao Explcita
A mais simples. p a lista Cada face armazena explicitamente ordenada das coordenadas dos seus vrtices:

P = {( x1 , y1 , z1 ), ) ( x2 , y2 , z 2 ),..., ) ( xn , yn , z n )}
Muita redundncia de informao. informao Consultas so complicadas.
Obriga a execuo de algoritmos geomtricos para determinar adjacncias.

Desenho da Malha
C Cada d aresta t desenhada duas vezes pelos duas vezes, faces que a compartilham. compartilham No bom para plotadoras ou filmes. filmes

Ponteiros para Lista de Vrtices


Vrtices so armazenados separadamente. H uma lista de vrtices. Faces referenciam seus vrtices atravs de ponteiros. i Proporciona p maior economia de memria. Achar adjacncias ainda complicado. Arestas ainda d so desenhadas d h d duas d vezes.

Exemplo

Ponteiros para Lista de Arestas


H tambm b uma li lista d de arestas. Faces referenciam as suas arestas atravs de ponteiros. Arestas so desenhadas percorrendo percorrendo-se se a lista de arestas. Introduzem-se Introduzem se referncias para as duas faces que compartilham uma aresta.
F Facilita ili a d determinao i d das d duas f faces incidentes na aresta.

Exemplo

Winged Edge Winged-Edge

Winged Edge Winged-Edge


Criada em 1974 por Baumgart. p p por fronteira. Foi um marco na representao Armazena informao na estrutura associada s arestas a estas ( (nmero e o de campos ca pos fixo). xo). Todos os 9 tipos de adjacncia entre vrtices, arestas e faces so determinados em tempo constante. Atualizada com o uso de operadores de Euler, Euler que garantem: V A + F = 2.

9 tipos de Relacionamentos de Adjacncia

Face Edge Face-Edge

Radial Edge Radial-Edge


Criada em 1986 por Weiler. Representa p objetos j non-manifold f . Armazena a lista ordenada de faces incidentes em uma u a aresta. a esta. Muito mais complicada que a Winged-Edge.

Radial Edge Radial-Edge

Prs e Contras de Representaes


N Na CSG pode-se d f il facilmente t assegurar que objetos bj t so slidos se todas as formas primitivas forem slidas. Isso pode ser importante para algumas aplicaes de engenharia ou manufatura. f t Por comparao, ao criar representaes baseadas em B-rep, p g adicionais so necessrios, , ou checagens g dados topolgicos de consistncia devem ser realizadas para assegurar que a dada descrio de fronteira especifica um objeto slido vlido. Porm fcil determinar, dado um ponto, se ele est no interior, fronteira ou exterior do objeto. Operaes O booleanas b l so ab base d do CSG. Boa para deteco de coliso (collision detection)

Prs e Contras de Representaes


N Numa B-rep B as intersees i t esto t representadas t d explicitamente e mais fcil exibir um ponto sobre a superfcie do objeto. Porm difcil determinar, dado um ponto, se ele est no interior, fronteira ou exterior do objeto. j Operaes booleanas so complicadas. Mais flexvel e tem um conjunto j mais rico de operaes. Escolha mais apropriada para sistemas CAD CSG f i usado foi d inicialmente i i i l t por muitos it sistemas i t comerciais pois mais fcil de se implementar.

Prs e Contras de Representaes


Em E representaes por decomposio d i / clulas a classificao de um ponto imediata, d bastando b d avaliar l o sinal ld do valor l do campo no ponto. Exibir um ponto sobre a superfcie do j requer q a soluo de uma equao, q , objeto que pode ser complicada. Operaes booleanas so avaliadas facilmente.

Converso entre Representaes


Converso C CSG B-rep B denominada d i d avaliao do fronteira. Converso B-rep CSG muito mais complicada. p Converso B-rep Clulas simples. Converso Clulas B-rep B rep relativamente simples (marching cubes). Converso CSG Clulas simples. Converso Clulas CSG complicado. p

Você também pode gostar