SlideShare uma empresa Scribd logo
1 de 127
Baixar para ler offline
Modelagem
Frederico Damasceno Bortoloti
Adaptado de:
Donghoon YangDonghoon Yang
Anselmo Montenegro
Claudio Esperança
Paulo Roma Cavalcanti
Computação Gráfica e Áreas
Correlatas
processamento de imagens
Imagem digital
computaçãocomputação
gráfica
(síntese de
imagens)
visão
computacional
Modelos
imagens)
modelagem geométrica
Estrutura de aplicação gráfica
interativa tradicional
Modelagem vs VisualizaçãoModelagem vs. Visualização
• Modelagem:
• Interessada na descrição de uma cena
• Externamente: representação na forma de arquivo contendo
as informações geométricas (e outras)
• Internamente (na execução do programa): representação emInternamente (na execução do programa): representação em
estrutura de dados residente em memória
• Visualização:ç
• Interessada na visualização (display) da cena a partir
de uma dada câmera (posição do observador)(p ç )
• A princípio, são conceitos independentes.
Espaços de CoordenadasEspaços de Coordenadas
• Plano ou R² (2D)
Espaços de CoordenadasEspaços de Coordenadas
• Espaço ou R³ (3D)
Paradigmas de AbstraçãoParadigmas de Abstração
• A necessidade de paradigmas (Ari Requicha).
• Paradigma dos universos• Paradigma dos universos.
• Físico F.
• Matemático M• Matemático M.
• Representação R.
• Implementação I• Implementação I.
Problemas da ÁreaProblemas da Área
• Estudar fenômenos em F.
• Definir os modelos.Definir os modelos.
• Estudar as relações entre R e M.
• Definir representações de modelos em M.
• Estudar conversões entre representaçõesEstudar conversões entre representações.
• Definir métodos de implementação.
• Comparar estratégias em I.
Esquemas de RepresentaçãoEsquemas de Representação
• Objetos do universo físico: “sólidos”
• O que é um sólido?
• Objetos do universo matemático vêm da:
• Geometria diferencial
• Topologia diferencial
Geometria pode Ser ComplicadaGeometria pode Ser Complicada
Garrafa de Klein
(não orientável)Nó
Toro x Garrafa de KleinToro x Garrafa de Klein
Superfícies Não OrientáveisSuperfícies Não Orientáveis
• F i d Möbi ó t l d b d• Faixa de Möbius só tem um lado e uma borda.
• Superfície Romana é obtida costurando-se uma faixa de
Möbius à borda de um disco (representação de RP2 no R3).( p ç )
Faixa de MöbiusSuperfície Romana
HistóricoHistórico
• Modelagem por arames (wireframes).
• Representa os objetos por arestas e pontosp j p p
sobre a sua superfície.
• Gera modelos ambíguosGera modelos ambíguos.
• Modelagem por superfícies (década de 60).
• Fornece a descrição matemática das superfícies
que delimitam o objeto.
• Poucos testes de integridade do modelo.
HistóricoHistórico
• Modelagem de Sólidos (década de 70).
• Implícita ou explicitamente contémp p
informações do fechamento e conectividade
dos objetos.j
• Garante a realização física.
• Sistemas CAD CAM utilizados pela indústria• Sistemas CAD-CAM utilizados pela indústria.
Estado da ArteEstado da Arte
• Modelagem de dimensão mista ou non-
manifold (década de 80).( )
• Permite representar objetos com estruturas
internas ou com elementos pendentes deinternas ou com elementos pendentes de
dimensão inferior.
• Sólido delimitado por superfícies não• Sólido delimitado por superfícies não
necessariamente planas localmente.
E ACIS (S ti l T h l ) A t C d• Ex.: ACIS (Spatial Technology) – AutoCad.
HistóricoHistórico
• Início dos anos 70• Início dos anos 70
• Ian Braid : Ph.D. thesis at the University of Cambridge in England
introduced the BUILD system
• ROMULUS Parasolid ACIS• ROMULUS, Parasolid, ACIS
• the Compac system : U of Berlin, Germany
• Proren : U of Ruhr, Germany
B ’ E lid F• Brun’s Euclid system : France
• Engeli’s Euklid system : Switzerland
• TIPS-1 : Hokkaido University, Japan
• GeoMap : University of Tokyo, Japan
• Shapes : Draper Labs, US
• Synthavision system : USy y
• GLIDE : Chuck Eastman, Carnegie-Mellon, Architectural
application and database
• PADL : University of Rochestery
Aristides A. G. Requicha, GEOMETRIC MODELING: A First Course
SólidoSólido
d• Adjetivo
• Não macio
• Não oco• Não oco
• Não adulterado ou não misturado
• De construção forte e seguraç g
• …
• Substantivo
• Algo sólido
• Uma figura geométrica tridimensional de um objeto
U b â i i d d d f• Uma substância que resiste a stress moderado e deformação,
diferente de um líquido ou gás…
Encarta Dictionary
Descrição de SólidosDescrição de Sólidos
• Assuma-se que um sólido é um conjunto
tridimensional de pontos.p
• Conjuntos de pontos podem ser descritos
P f t i• Por suas fronteiras
• Por campos escalares
•Definidos por equações
•Amostrados
Objetivos da Modelagem de
Sólidos
bl d d l f f l d b• Problemas de modelos gráficos: falta de robustez,
imcompletude, aplicabilidade limitada.
C l t t ã d bj t ólid ã• Completa representação de objetos sólidos que são
adequados para responder a quaisquer questões
geométricas (de robôs) sem ajuda do usuário humanogeométricas (de robôs) sem ajuda do usuário humano.
• Duas maiores questões; integridade e complexidade
Soonh ng Han KaistSoonhung Han, Kaist
Propriedades da modelagem de
sólidos
P d i• Poder expressivo;
• Validade: manufacturabilidade;
• Desambigüidade e unicidade;
• Languagens de Descrição: operações para• Languagens de Descrição: operações para
construção
C i i d• Concisão: requerimento de
armazenamento
• Facilidade computacional e aplicabilidade:
requerimentos de poder computacionalq p p
Soonhung Han, Kaist
Modelo sólidoModelo sólido
• Criação apenas de representações completas de
objetos sólidos
• Representações desambígüas para sólidos
• Requerimentos para propriedades matemáticaseque e tos pa a p op edades ate át cas
para um modelo sólido
• RigidezRigidez
• Finitude
• SolidezSolidez
• Fechamento sob operação Booleana
• Descrição finitaDescrição finita
• Determinismo de Fronteira
Propriedades matemáticas
requeridas
d• Rigidez
• Distância e ângulo fixos no espaço Euclidiano
• Preservação de distâncias e ângulos• Preservação de distâncias e ângulos
• Finitude
• Extensões finitas de objetos físicosExtensões finitas de objetos físicos
• Solidez
• Sem faces ou arestas penduradasSe aces ou a estas pe du adas
• Fechamento sob operação Booleana
• Operações Booleanas aplicadas a sólidos devem produzir outrop p p
sólido
• Resultado de operação Booleana pode ser usado como entrada
para outras operações Booleanaspara outras operações Booleanas
• Subtração e adição de sólido são garantem a produção de sólidos
Propriedades matemáticas
requeridas
• Descrição finita
• Quantidade finita de dados deve ser apta aQ p
descrever conjuntos de pontos usados em
modelos sólidos
• Determinismo de fronteira
F t i d ólid d d fi i ólid• Fronteira de um sólido deve definir o sólido
desambigüamente
Tipos de modelos sólidosTipos de modelos sólidos
M d l d D i ã (BSP t O t t )• Modelos de Decomposição (BSP-trees, Octrees, etc.)
• Modelos de Arame (Wireframe)
• Modelos de Superfície (Surface Modeling)• Modelos de Superfície (Surface Modeling)
• Modelos de Sólido (Solid Modeling)
• Modelos Construtivos (CSG – Constructive Solid Geometry)Modelos Construtivos (CSG Constructive Solid Geometry)
• Modelos de Fronteira (B-rep – Boundary Representation)
• Modelos Híbridos (CSG e B-rep)
M d l B d F (F B d M d li )• Modelos Baseados em Features (Feature-Based Modeling)
• Modelos de Dimensão Mista (Non manifold)
Representação de SólidosRepresentação de Sólidos
• As duas formas, de descrever conjuntos de
pontos, dão origem a três tipos dep g p
representação:
• Por bordo (B-rep – Boundary Representation)• Por bordo (B-rep – Boundary Representation)
• Implícita (CSG – Constructive Solid
G t )Geometry)
• Por enumeração do espaço em células (BSP-
)trees, Octrees, etc.)
Modelo de DecomposiçãoModelo de Decomposição
• Representa um conjunto de pontos como
uma coleção de objetos simples a partir deç j p p
uma coleção fixa de tipos de objetos
primitivos combinada com uma únicaprimitivos, combinada com uma única
operação de “colagem”
Tipos de modelos de
decomposição
• Enumeração exaustiva
• Todo espaço é igualmente dividido em blocos e uma
matriz 3D armazena informações sobre o material (ou
a falta dele) em cada bloco
V l• Voxel
• Decomposição celular
• Células irregulares dividem o objeto em blocos
• FEM (Finite Element Meshes) para FEA (Finite Element
Analysis) – análise estrutural por elementos finitos
• Subdivisão de espaçop
• Divide o espaço em blocos recursivamente
• Representação em Quadtree, Octree
Enumeração ExaustivaEnumeração Exaustiva
• Caso especial de decomposição onde primitivas
são cúbicas em suas formas
• Elementos de volume de tamanho uniforme
chamados voxels
• Usado extensivamente em computação gráfica e
na CG para medicinap
• Eficiente mas requer armazenamento
significativosignificativo
• Acurácia limitada a menos que os voxels sejam
extremamente pequenosextremamente pequenos
VoxelVoxel
VoxelVoxel
Estruturas da cabeça e do cérebro
( ) í 1 0 f(ocultas) extraídas de 150 fatias
Decomposição CelularDecomposição Celular
• Variedade de tipos de células básicas e um
único operador de combinação “colar”p ç
• Células individuais são geralmente
criadas como instâncias parametrizadascriadas como instâncias parametrizadas
de tipos de células
• Células podem ser qualquer objeto que
seja topologicamente equivalente a umaseja topologicamente equivalente a uma
esfera (sem buracos)
FEMFEM
Subdivisão de EspaçoSubdivisão de Espaço
•Inventado para superar o grande
consumo de memória da enumeraçãoconsumo de memória da enumeração
exaustiva
•Esquema de subdivisão adaptativa
baseado na grade tridimensional debaseado na grade tridimensional de
uma enumeração exaustiva
Subdivisão de Espaço
Representações por Células
Di id b iõ• Dividem o espaço em sub-regiões convexas.
• Exaustiva (Voxels): Cubos de tamanho igual
O t C b j l d ã tê i d 2• Octrees: Cubos cujos lados são potências de 2
• BSP-trees: Poliedros convexos
• À él l ã t ib íd l d• Às células são atribuídas valores de um campo
escalar F(x, y, z).
• Campo é assumido constante dentro de cada célula• Campo é assumido constante dentro de cada célula.
• Sólido é definido como o conjunto de pontos tais
que A < F(x y z) < B para valores A e Bque A < F(x, y, z) < B para valores A e B
estipulados.
Quadtrees (2D) / Octrees (3D)Quadtrees (2D) / Octrees (3D)
• Estruturas de dados (árvores) para
decomposição hierárquica do planop ç q p
(quadtrees) / espaço (octrees)
• Podem ser usadas para guardar diferentes• Podem ser usadas para guardar diferentes
tipos de dados, por ex.
• Conjunto de pontos
• Malhas poligonaisp g
QuadtreeQuadtree
QuadtreesQuadtrees
d d d l• Todo nó representa um quadrado no plano.
• Todo nó interno possui exatamente quatro filhos, os
i t t d t d ó iquais representam os quatro quadrantes do nó pai:
noroeste, nordeste, sudoeste e sudeste.
• A subdivisão continua conforme algum critério de• A subdivisão continua conforme algum critério de
parada.
http://www.tecgraf.puc‐rio.br/~hermann/gc/
Quadtree Critério de ParadaQuadtree – Critério de Parada
E l• Exemplo:
1. Começa com quadrado envolvendo todo o objeto, que em seguida é
dividido em 4 quadrados menores.
2. Cada um é classificado em
• Cheio: o quadrado está totalmente dentro do objeto
• Vazio: o quadrado está totalmente fora do objetoq 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• O procedimento encerra quando só existirem quadrados cheios e
vazios
Pinho, PUCRS
Quadtree ExemploQuadtree - Exemplo
http://lcp lcad icmc usp br/~nonato/ED/Quadtree/quadtree htmhttp://lcp.lcad.icmc.usp.br/ nonato/ED/Quadtree/quadtree.htm
Quadtree Programa ExemploQuadtree – Programa Exemplo
Autores: Patrícia Zottis e Rodrigo Fehse
Alterações: Leonardo Langie ‐ PUCRS
OctreeOctree
• Idêntica à Quadtree, mas considerando o
espaço 3Dp ç
• Cubo é dividido em 8 sub-cubos
OctreeOctree
OctreesOctrees
OctreesOctrees
FlipCode.com
OctreesOctrees
Uso de Octrees e QuadtreesUso de Octrees e Quadtrees
• Exemplos:
• Frustum culling, detecção deg, ç
colisão, operações de união
e interseçãoç
•Se pai (não) é importante,
todos os filhos também (não)( )
são
• Desvantagem: FlipCode.com
Desvantagem:
• Trabalhosas para
manipularmanipular
BSP TreesBSP-Trees
Malhas de PolígonosMalhas de Polígonos
d d l d d l• Construção de modelos 3D usando grupos de polígonos.
• Como cada polígono é planar, necessita-se grande quantidade
de polígonos para dar a impressão de superfícies curvasde polígonos para dar a impressão de superfícies curvas
1K polígonos10K polígonos
www.gamesfaction.com
Mesh TesselationMesh Tesselation
• Construção de malhas poligonais
• A partir de representações 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 triângulosMalhas de triângulos
l l d lh• Costuma-se usar triângulos como o polígono das malhas
• O polígono é gerado com exatamente 3 vértices por face
• Um vértice pode pertencer a qualquer número de faces• Um vértice pode pertencer a qualquer número de faces
• Adjacência calculada em tempo constante
• Triângulos são sempre planaresg p p
Giambruno, 2003,
Alguns tipos de malhas de triângulosAlguns tipos de malhas de triângulos
• O primeiro triangulo é desenhado com três vértices e os demais com• O primeiro triangulo é desenhado com três vértices, e os demais com
apenas um.
Strip
• Muitos dos vértices são comuns a vários polígonos que o constituem.
A i i ã d lí i t tilh t d
Fan
Assim, a organização dos polígonos com vista o compartilhamento dos
vértices comuns traduz-se num envio e processamento únicos destes
vértices [Möller 2003].
Problema GeralProblema Geral
l f d f f• Quantos mais polígonos, menos facetada fica a superfície
curva
• Mais polígonos significa mais tempo de processamento!!!• Mais polígonos, significa mais tempo de processamento!!!
LOD Level of DetailLOD – Level of Detail
À did à di â i d â d l• À medida que à distância da câmera a um modelo aumenta, o espaço por
este ocupado na janela diminui e, conseqüentemente, o detalhe com que é
visualizado também diminui.
d f l b f• O LOD permite definir representações alternativas para um objeto gráfico,
cada uma sendo ativada de acordo com a distância ao observador.
LODLOD
• T d á i• Torna-se desnecessário e
ineficiente definir o objeto
com todo detalhe. O
bj ti i i l é dobjetivo principal é o de
utilizar diferentes
representações de um
d l l dmodelo, normalmente de
resoluções distintas, que
serão selecionadas de
d dacordo com um critério de
decisão pré-determinado.
Um dos critérios de decisão
mais utilizado é à distância
do modelo à câmera.
Tipos de LODTipos de LOD
• Discreto
• A construção das diferentes representações doç p ç
modelo é realizada numa fase de pré-
processamento, sendo associada a cada umap ,
delas um intervalo de distâncias à câmera
dentro do qual o nível de detalhe deve serq
utilizado.
• Durante a execução o algoritmo calcula aDurante a execução, o algoritmo calcula a
distância da câmera ao objeto e avalia qual
dos diferentes níveis de detalhe deve serdos diferentes níveis de detalhe deve ser
utilizado.
Tipos de LODTipos de LOD
• Contínuo
• Os níveis de detalhe são gerados em tempo deg p
execução.
• View dependent LODView dependent LOD
•Extensão de LOD contínuo usando posição do
observador para definir o nível de detalhe.observador para definir o nível de detalhe.
Exemplo de LOD DiscretoExemplo de LOD Discreto
• VRML: nó LOD
LODLOD
• Exemplo de LOD
• X3D
LOD ContínuoLOD Contínuo
Vi d d t LODView dependent LOD
LOD ContínuoLOD Contínuo
observador
View dependent LOD
LOD Contínuo
Visualização de Terrenos
h // ll l /i / dd/i /i h l• http://www.llnl.gov/icc/sdd/img/images.shtml
Modelo de Arame (Wireframe)Modelo de Arame (Wireframe)
• Representação de arestas (pontos +
conexões entre pontos)p )
Modelo de Arame (Wireframe)Modelo de Arame (Wireframe)
Modelo de Arame (Wireframe)Modelo de Arame (Wireframe)
• Vantagens
• Simplicidade e velocidade na visualização dos modelos (geram-
se apenas linhas)se apenas linhas)
• Problemas
• Dificuldade de realizar operações com sólidos (cálculo de massa,p ç ( ,
volume, determinação de inclusão, sem geração de caminho
para ferramentas para NC...)
• Representação ambígüa (sujeita a interpretações diferentes)• Representação ambígüa (sujeita a interpretações diferentes)
As duas representações abaixo são válidas para 
o modelo em wireframe abaixo
Márcio Pinho, PUCRS
Modelo de Arame (Wireframe)
Ambigüidade e Unicidade
• Uma representação é única
quando o modelo associado
possui uma únicapossui uma única
representação.
• Uma representação é ambíguaUma representação é ambígua
quando pode representar mais
de um modelo.
• Representação ambígua é
catastrófica (wireframe).
• Inviabiliza máquinas de controle
numérico.
Modelos de SuperfícieModelos de Superfície
d l d l d b d• Mais poderosos que simples modeladores baseados em
wireframe por prover descrições matemáticas da forma
das superfícies dos objetosdas superfícies dos objetos
• Pode representar uma superfície fechada (volume) ou
abertaaberta
Modelos de SuperfícieModelos de Superfície
d• Armazena equações de
superfícies
M i i d t 3D• Maioria dos pacotes 3D
usam modelagem de
superfíciesuperfície
• Boa para visualização de
complexas superfícies ep p
geração de caminho para
NC de superfícies
complexas
• Informações sobre o
l ã bi üvolume são ambigüas e
difíceis de calcular
Modelos de SuperfícieModelos de Superfície
f• Superfícies não estão
adequadamente
conectadasconectadas
• Nenhuma informação de
conectividade éconectividade é
armazenada.
• Propriedades de massap
não fazem sentido
Modelos de SólidoModelos de Sólido
• Sistemas que são capazes de realizar a
modelagem sólida são muito maisg
poderosos que simples modeladores
baseados em wireframebaseados em wireframe.
• Esses programas são usados para
i bjconstruir componentes que são objetos
sólidos, e não simplesmente uma malhap
de linhas trançadas.
Modelo ConstrutivoModelo Construtivo
R t j t d t bi ã d• Representa um conjunto de pontos como combinação de
um conjunto de pontos de primitivas.
• Cada uma das primitivas é representada como umaCada uma das primitivas é representada como uma
instância de um tipo de sólido primitivo
• Operações para combinar primitivasp p p
• União
• Interseção
• Diferença• Diferença
• Muito eficiente em termos de armazenamento
• Visualização requer que curvas e superfícies individuaisVisualização requer que curvas e superfícies individuais
sejam combinadas e avaliadas
• Muito caro computacionalmente
Tipos de modelos construtivosTipos de modelos construtivos
• Modelo Half-space
Funções f(x,y,z) dividem o espaço em 2 metades (f<0 ou
f>0 @( ))f>0 @(x,y,z))
Metades podem ser delimitadas (esfera) ou não
delimitadas (cilindro infinito)delimitadas (cilindro infinito)
• Modelo CSG(Constructive Solid Geometry)
Usuário apenas interage com objetos sólidosUsuário apenas interage com objetos sólidos
delimitados
Computador modela sólidos delimitados como umap
combinação de meios espaços (half-space)
Quase todas modelagens construtivas usam CSG pois é
i fá il á imais fácil para o usuário.
Modelo Half spaceModelo Half-space
Cilindro Infinito Planos Cilindro FinitoCilindro Infinito Planos Cilindro Finito
z < b
x + y < r2 2 2
z > az > a
Department of Mechanical Engineering, The Ohio State University
Modelo CSGModelo CSG
• Operações CSG definem objetos através de
operações regularizadas de conjuntos dep ç g j
pontos.
• União Interseção e Diferença• União, Interseção e Diferença.
• Um objeto é regular se o fechamento do
interior do seu conjunto de pontos é igual
ao próprio conjunto de pontos.p p j p
Modelo CSGModelo CSG
• Primitivas
Operações BooleanasOperações Booleanas
União Interseção Diferença
Árvore CSGÁrvore CSG
• Um modelo CSG é
codificado por uma
árvore.
• Os nós internos contêm
doperações de conjunto
ou transformações
lineares afimlineares afim.
• Folhas contêm objetos
primitivos (tipicamente,primitivos (tipicamente,
quádricas).
Modelo CSGModelo CSG
Á• Árvore CSG
Modelo CSGModelo CSG
Á• Árvore CSG
Modelo CSGModelo CSG
Á• Árvore CSG
Modelo CSGModelo CSG
Modelo CSGModelo CSG
Modelo CSGModelo CSG
Modelo CSGModelo CSG
Modelo de FronteiraModelo de Fronteira
R t j t d t t d f t i• Representa um conjunto de pontos em termos de sua fronteira.
• Fronteira de sólido : surperfícies
• Fronteira de superfície : facesp
• Fronteira de face : curva (ou aresta)
• A maioria dos pacotes de modelagem de sólido usam a
representação de fronteira (B-rep) para armazenar modelosrepresentação de fronteira (B rep) para armazenar modelos
• Sólido é considerado como delimitado por um conjunto de faces
• Faces tem uma representação matemática compacta
l• Plano
• Toróide
• Cilíndro
• Superfície paramétrica como uma superfície de Bezier
Modelo de FronteiraModelo de Fronteira
aresta
face
vértice
Boundary Representation (B-
Rep)
• Define-se o modelo 3D a partir de conjunto de
polígonos que delimitam uma região fechada no
espaço
• Esses polígonos são as faces do objeto 3D (poliedro)
Boundary Representation (B-
Rep)
R• Representações
• 1 lista de vértices explícita:
• 2 listas: lista de vértices e lista das topologias
FACE: (x1, y1, z1)-(x2, y2, z2)- .... - (xn, yn, zn);
p g
das faces
VÉRTICES:
1 (x1 y1 z1)
FACES:
1 v1 v2 v3 vn1 - (x1, y1, z1)
2 - (x2, y2, z2)
.... .... ....
n - (xn yn zn)
1 - v1, v2, v3, ...., vn
2 - v3, v5, ..., vn
.... .... ....
n – vn v4 v1
• 3 listas: vértices, arestas e faces
n - (xn, yn, zn) n vn, v4, ..., v1
Exemplo de 3 listasExemplo de 3 listas
http://gbdi.icmc.usp.br/documentacao/
apostilas/cg/downloads/modpoliedrais pdfapostilas/cg/downloads/modpoliedrais.pdf
Grafo B RepGrafo B-Rep
Topology
Geometry
Modelos Híbridos de SólidoModelos Híbridos de Sólido
O ét d d d l ólid CSG B• Os métodos de modelagem sólida CSG e B-rep
são freqüentemente combinados para gerar
modelos de componentesmodelos de componentes.
• Cada um desses métodos possui suas limitações,
e componentes de difícil criação fazendo uso dee componentes de difícil criação fazendo uso de
um ou outro, podem ser gerados mais
facilmente usando uma combinação de ambos osfacilmente usando uma combinação de ambos os
métodos.
• A maioria dos sistemas modeladores sólidoA maioria dos sistemas modeladores sólido
comerciais são híbridos utilizando tanto o
método CSG quanto o B-rep.q p
Modelos Híbridos de SólidoModelos Híbridos de Sólido
Sólido
B-Rep CSG
Boundary Constructivey
Representation:
•Extrusão
•Revolução
Solid Geometry:
•Usa primitivas sólidas
(cilindro, cone, etc.)
•Varredura
•Mesclagem
de perfis 2-D
como building blocks
•Construção de sólido
combinando primitivas
usando operadores
Booleanos de união,
interseção e diferença
Modelos Híbridos de SólidoModelos Híbridos de Sólido
• M d l ólid ã h id• Modelos sólidos são conhecidos por serem
representações completas, válidas, e não ambíguas de
objetos.
• Um sólido completo é aquele que permite um ponto no
espaço ser classificado relativo ao objeto, se está dentro
ou fora ou sobre o objeto.j
• Essa classificação é chamada de endereçabilidade
espacial ou classificação de pertinência a conjunto.
• Um sólido válido não deve ter arestas ou faces• Um sólido válido não deve ter arestas ou faces
penduradas, só assim permitirá análise de interferência,
cálculos das propriedades de massa, modelagem e
áli t t l d l t fi it CAPP hianálise estrutural de elementos finitos, CAPP, machine
vision, e programação de NC.
Modelos Híbridos de Sólido
Funções de Modelagem Sólida
Dif i á i d• Diferentes maneiras que um usuário pode
criar formas sólidas:
• Criação de primitivas
• Operações Booleanasp ç
• Operações de revolução
• Operações de superfícieOperações de superfície
• Modelagem baseada em Features de
EngenhariaEngenharia
• Modelagem paramétrica
Criação de PrimitivasCriação de Primitivas
P i iti ã f• Primitivas são formas
sólidas simples com
superfíciessuperfícies
matemáticas simples
• Pode ser controlada• Pode ser controlada
por um número
pequeno depequeno de
parâmetros e
posicionada usandop
uma matriz de
transformação
Operações BooleanasOperações Booleanas
O õ B l• Operações Booleanas
são usadas para fazer
formas maisformas mais
complicadas
combinando formascombinando formas
mais simples
• 3 tipos de operações3 tipos de operações
são possíveis:
• União
• Interseção
• Diferença
Operações de RevoluçãoOperações de Revolução
• Usa seções em
wireframe 2D para
l dgera sólido 3D
• Inclui operaçõesp
como:
• Extrusão
• Revolução
• Varredura
• Formar por Seções
Operações de SuperfícieOperações de Superfície
O di t t• Opera diretamente
nas superfícies,
arestas e vértices doarestas e vértices do
modelo sólido, para
criar umacriar uma
modificação desejada
• Exemplos:Exemplos:
• Chanfro
• Arredondamentoedo da e to
• Rascunho
• Casca
Constructive Solid Geometry
(CSG)
• Objetos são construídos a partir das
Primitivas Sólidas
• Junção ou União
• Corte ou Diferença
• Interseção ou Material Comum
Constructive Solid Geometry
(CSG)
Modelos Baseados em FeaturesModelos Baseados em Features
U f d d fi id• Um feature pode se definido como um
elemento físico de uma peça que tem
l i ifi d h i lalgum significado para a engenharia. Ele
deve satisfazer as seguintes condições:
• ser um constituinte físico de uma peça;
• ser mapeável para uma forma geométricap p g
genérica;
• ser tecnicamente significante, sob o ponto deg , p
vista da engenharia; e
• ter propriedades que podem ser previstas.p p q p p
Modelos Baseados em FeaturesModelos Baseados em Features
• O significado técnico de feature pode
envolver a função à qual um feature serve,ç q f
como ele pode ser produzido, que ações a
sua presença deve iniciar etcsua presença deve iniciar, etc.
• Features podem ser pensados como
' i i i d h i ' l'primitivas de engenharia' relevantes a
alguma tarefa de engenharia.g g
Modelos Baseados em FeaturesModelos Baseados em Features
O ét d it i f h f• O método permite criar furos, chanfros, rasgos,
etc, para serem associados com outras entidades
ou faces.ou faces.
• A modelagem por features é baseada na idéia de
se desenhar utilizando building blocks - blocos deg
construção.
• Ao invés de se usar formas analíticas como
l l í d ili d fparalelepípedos, cilindros, esferas e cones como
primitivos, o usuário cria modelo do produto
usando primitivos de maior nível que são maisusando primitivos de maior nível que são mais
relevantes para sua aplicação específica.
Modelos Baseados em FeaturesModelos Baseados em Features
O j t fi d f t f id l t i• O conjunto fixo de features oferecido pelos atuais
modeladores ainda é muito limitada para uso
industrial, o que limita as possibilidades doindustrial, o que limita as possibilidades do
projetista.
• Os features devem ser adaptáveis aos usuários ef p
que a biblioteca de features deve ser extensível.
Modelos Baseados em FeaturesModelos Baseados em Features
• Exemplos
• Furo
• Slot
• Cubo• Cubo
• Chanfro
• Rasgo
Modelos ParamétricosModelos Paramétricos
• A modelagem sólida paramétrica permite
que se crie modelos de produtos comq p
dimensões variacionais.
• Ligações bidirecionais entre o modelo e o• Ligações bidirecionais entre o modelo e o
esquema de dimensionamento permite a
i d d lregeneração automática de modelos
depois de mudanças nas dimensões ep
atualização automática das dimensões
relacionadas.relacionadas.
Modelos ParamétricosModelos Paramétricos
• Parâmetros vêm de:
• dimensões em esboços 2Dç
• dimensões em geometria 3D (sistemas
avançados)avançados)
• parâmetros de operação de modelagem
iá i õ d á i• variáveis em equações do usuário
• A geometria inteira da parte pode serg p p
controlada por um pequeno número de
parâmetros chave!parâmetros chave!
Modelos ParamétricosModelos Paramétricos
Modelagem Paramétrica
Modelagem Dirigida à Dimensão Modelagem Baseada em Restrições
Usa parâmetros
para especificar
Usa restrições
geométricas tais
dimensões de
entidades
como
paralelismo,
concentricidade,
tetc.
Modelos Non manifoldModelos Non-manifold
• Transferência de calor de uma parte tocando
outra: faces tocantes
• Propagação de rachadura: elementos 1D e 2D
dentro de uma parte sólidap
• Material híbrido: painel sanduíche
• 2 tipos de modeladores non-manifold;• 2 tipos de modeladores non-manifold;
• Inclui entidades de dimensões mais baixas em uma
estrutura de dados de modelo sólidoestrutura de dados de modelo sólido
• Concentra em modelos compostos => modelo celular
Soonh ng Han KaistSoonhung Han, Kaist
Estrutura de dados Non manifoldEstrutura de dados Non-manifold
Modelo Non manifoldModelo Non-manifold
A B
CodificaçãoCodificação
• Explícita.
• Ponteiros para lista de vértices.Ponteiros para lista de vértices.
• Ponteiros para lista de arestas.
• Winged-Edge (Half-Edge, Face-Edge).
• Quad-Edge (Guibas-Stolfi)Quad Edge (Guibas Stolfi).
• Radial-Edge.
Codificação ExplícitaCodificação Explícita
• A mais simples.
• Cada face armazena explicitamente a listap
ordenada das coordenadas dos seus vértices:
{ })()()(
• Muita redundância de informação
{ }),,(),...,,,(),,,( 222111 nnn zyxzyxzyxP =
• Muita redundância de informação.
• Consultas são complicadas.
• Obriga a execução de algoritmos geométricos para
determinar adjacências.
Desenho da MalhaDesenho da Malha
C d t é• Cada aresta é
desenhada duas
vezes pelos duasvezes, pelos duas
faces que a
compartilhamcompartilham.
• Não é bom para
plotadoras ou filmesplotadoras ou filmes.
Ponteiros para Lista de VérticesPonteiros para Lista de Vértices
• Vértices são armazenados separadamente.
• Há uma lista de vértices.Há uma lista de vértices.
• Faces referenciam seus vértices através de
iponteiros.
• Proporciona maior economia de memória.p
• Achar adjacências ainda é complicado.
d d h d d• Arestas ainda são desenhadas duas vezes.
ExemploExemplo
Ponteiros para Lista de ArestasPonteiros para Lista de Arestas
Há bé li d• Há também uma lista de arestas.
• Faces referenciam as suas arestas através
de ponteiros.
• Arestas são desenhadas percorrendo-se aArestas são desenhadas percorrendo se a
lista de arestas.
• Introduzem se referências para as duas• Introduzem-se referências para as duas
faces que compartilham uma aresta.
F ili d i d d f• Facilita a determinação das duas faces
incidentes na aresta.
ExemploExemplo
Winged EdgeWinged-Edge
Winged EdgeWinged-Edge
• Criada em 1974 por Baumgart.
• Foi um marco na representação por fronteira.p p
• Armazena informação na estrutura associada às
arestas (número de campos é fixo).a estas ( ú e o de ca pos é xo).
• Todos os 9 tipos de adjacência entre vértices,
arestas e faces são determinados em tempoarestas e faces são determinados em tempo
constante.
• Atualizada com o uso de operadores de Euler• Atualizada com o uso de operadores de Euler,
que garantem: V – A + F = 2.
9 tipos de Relacionamentos de
Adjacência
Face EdgeFace-Edge
Radial EdgeRadial-Edge
• Criada em 1986 por Weiler.
• Representa objetos non-manifold.p j f
• Armazena a lista ordenada de faces incidentes em
uma aresta.u a a esta.
• Muito mais complicada que a Winged-Edge.
Radial EdgeRadial-Edge
Prós e Contras de RepresentaçõesPrós e Contras de Representações
• N CSG d f il t bj t ã• Na CSG pode-se facilmente assegurar que objetos são
“sólidos” se todas as formas primitivas forem sólidas. Isso
pode ser importante para algumas aplicações de engenharia
f tou manufatura.
• Por comparação, ao criar representações baseadas em B-rep,
dados topológicos adicionais são necessários, ou checagensp g , g
de consistência devem ser realizadas para assegurar que a
dada descrição de fronteira especifica um objeto sólido
válido.
• Porém é fácil determinar, dado um ponto, se ele está no
interior, fronteira ou exterior do objeto.
O õ b l ã b d CSG• Operações booleanas são a base do CSG.
• Boa para detecção de colisão (collision detection)
Prós e Contras de RepresentaçõesPrós e Contras de Representações
N B i t õ tã t d• Numa B-rep as interseções estão representadas
explicitamente e é mais fácil exibir um ponto sobre
a superfície do objeto.a superfície do objeto.
• Porém é difícil determinar, dado um ponto, se ele
está no interior, fronteira ou exterior do objeto.j
• Operações booleanas são complicadas.
• Mais flexível e tem um conjunto mais rico dej
operações.
• Escolha mais apropriada para sistemas CAD – CSG
f i d i i i l t it i tfoi usado inicialmente por muitos sistemas
comerciais pois é mais fácil de se implementar.
Prós e Contras de RepresentaçõesPrós e Contras de Representações
E d i /• Em representações por decomposição /
células a classificação de um ponto é
d b d l l d limediata, bastando avaliar o sinal do valor
do campo no ponto.
• Exibir um ponto sobre a superfície do
objeto requer a solução de uma equação,j q ç q ç ,
que pode ser complicada.
• Operações booleanas são avaliadas• Operações booleanas são avaliadas
facilmente.
Conversão entre RepresentaçõesConversão entre Representações
C CSG B é d i d• Conversão CSG → B-rep é denominada
avaliação do fronteira.
• Conversão B-rep → CSG é muito mais
complicada.p
• Conversão B-rep → Células é simples.
• Conversão Células → B rep é• Conversão Células → B-rep é
relativamente simples (marching cubes).
• Conversão CSG → Células é simples.
• Conversão Células → CSG é complicado.p

Mais conteúdo relacionado

Mais procurados

Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...
Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...
Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...ACTEBA
 
Orientação de preenchimento da nf e - versão 2.02
Orientação de preenchimento da nf e - versão 2.02Orientação de preenchimento da nf e - versão 2.02
Orientação de preenchimento da nf e - versão 2.02vantagemzero
 
SIGARP WEB
SIGARP WEBSIGARP WEB
SIGARP WEBLuciana
 
Ata do 1° período 1 b
Ata do 1° período 1 bAta do 1° período 1 b
Ata do 1° período 1 bMaiara Gomes
 
Abaixo Assinado para Indivíduos
Abaixo Assinado para IndivíduosAbaixo Assinado para Indivíduos
Abaixo Assinado para IndivíduosFlorespi
 
Proposta de orçamento para rede_gazeta
Proposta de orçamento para rede_gazetaProposta de orçamento para rede_gazeta
Proposta de orçamento para rede_gazetaAlessandro Marlos
 
Recursos humanos procedimentos basicos para o servidor
Recursos humanos procedimentos basicos para o servidorRecursos humanos procedimentos basicos para o servidor
Recursos humanos procedimentos basicos para o servidorArmando Rivarola
 
HES I - Actividades 4
HES I - Actividades 4HES I - Actividades 4
HES I - Actividades 4micaze1976
 
Pcctae tabela-salarial
Pcctae tabela-salarialPcctae tabela-salarial
Pcctae tabela-salarialJosué Machado
 
Oficio CRAS dinomar miranda
Oficio CRAS dinomar mirandaOficio CRAS dinomar miranda
Oficio CRAS dinomar mirandaDinomar Miranda
 
Regulamento e ficha de inscrição soberanas
Regulamento e ficha de inscrição soberanasRegulamento e ficha de inscrição soberanas
Regulamento e ficha de inscrição soberanasMunicípio Hartz
 

Mais procurados (20)

Raciocínio lógico
Raciocínio lógicoRaciocínio lógico
Raciocínio lógico
 
Modelo de procuração
Modelo de procuraçãoModelo de procuração
Modelo de procuração
 
Ata De Constituicao
Ata De ConstituicaoAta De Constituicao
Ata De Constituicao
 
Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...
Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...
Oficio n° 018/2016 - Convite aos Conselheiros Tutelares para o 8° Seminário E...
 
Abaixo assinado
Abaixo assinadoAbaixo assinado
Abaixo assinado
 
Orientação de preenchimento da nf e - versão 2.02
Orientação de preenchimento da nf e - versão 2.02Orientação de preenchimento da nf e - versão 2.02
Orientação de preenchimento da nf e - versão 2.02
 
SIGARP WEB
SIGARP WEBSIGARP WEB
SIGARP WEB
 
Ata de Reunião - Minutes of Meeting v2
Ata de Reunião - Minutes of Meeting v2Ata de Reunião - Minutes of Meeting v2
Ata de Reunião - Minutes of Meeting v2
 
Modelo Ficha Ocorrencia Cadastral
Modelo Ficha Ocorrencia CadastralModelo Ficha Ocorrencia Cadastral
Modelo Ficha Ocorrencia Cadastral
 
Ata do 1° período 1 b
Ata do 1° período 1 bAta do 1° período 1 b
Ata do 1° período 1 b
 
Extravio de alvara
Extravio de alvara Extravio de alvara
Extravio de alvara
 
Abaixo Assinado para Indivíduos
Abaixo Assinado para IndivíduosAbaixo Assinado para Indivíduos
Abaixo Assinado para Indivíduos
 
Proposta de orçamento para rede_gazeta
Proposta de orçamento para rede_gazetaProposta de orçamento para rede_gazeta
Proposta de orçamento para rede_gazeta
 
Recursos humanos procedimentos basicos para o servidor
Recursos humanos procedimentos basicos para o servidorRecursos humanos procedimentos basicos para o servidor
Recursos humanos procedimentos basicos para o servidor
 
HES I - Actividades 4
HES I - Actividades 4HES I - Actividades 4
HES I - Actividades 4
 
Circular
CircularCircular
Circular
 
Pcctae tabela-salarial
Pcctae tabela-salarialPcctae tabela-salarial
Pcctae tabela-salarial
 
Oficio CRAS dinomar miranda
Oficio CRAS dinomar mirandaOficio CRAS dinomar miranda
Oficio CRAS dinomar miranda
 
Modelo oficio
Modelo oficioModelo oficio
Modelo oficio
 
Regulamento e ficha de inscrição soberanas
Regulamento e ficha de inscrição soberanasRegulamento e ficha de inscrição soberanas
Regulamento e ficha de inscrição soberanas
 

Semelhante a 06 modelagem

Ementa curso básico de autocad 2 d
Ementa curso básico de autocad 2 dEmenta curso básico de autocad 2 d
Ementa curso básico de autocad 2 dVismael Santos
 
Aula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensaoAula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensaoFábio Costa
 
Aula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensaoAula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensaoFábio Costa
 
Vigas curvas horizontais
Vigas curvas horizontaisVigas curvas horizontais
Vigas curvas horizontaisTimóteo Rocha
 
Procedural Solar System Generation in Real -Time
Procedural Solar System Generation in Real -TimeProcedural Solar System Generation in Real -Time
Procedural Solar System Generation in Real -TimeCassiano Honorio da Silva
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnicoKelly Maia
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnicoDhonne's Schumack
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnicobluesky659
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnicobluesky659
 
Desenho técnico tecnoblogue 2010/2011
Desenho técnico tecnoblogue 2010/2011Desenho técnico tecnoblogue 2010/2011
Desenho técnico tecnoblogue 2010/2011Marco Correia
 
Desenho Técnico Teórico
Desenho Técnico TeóricoDesenho Técnico Teórico
Desenho Técnico TeóricoSamuel Costa
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnicoDiego Miranda
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnicogilbertocbmdf
 
noções de desenho técnico
noções de desenho técniconoções de desenho técnico
noções de desenho técnicoRicfborges
 

Semelhante a 06 modelagem (20)

Ementa curso básico de autocad 2 d
Ementa curso básico de autocad 2 dEmenta curso básico de autocad 2 d
Ementa curso básico de autocad 2 d
 
Aula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensaoAula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensao
 
Aula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensaoAula 10 11 - terceira dimensao
Aula 10 11 - terceira dimensao
 
Vigas curvas horizontais
Vigas curvas horizontaisVigas curvas horizontais
Vigas curvas horizontais
 
H.264 / MPEG-4 AVC
H.264 / MPEG-4 AVCH.264 / MPEG-4 AVC
H.264 / MPEG-4 AVC
 
Aula 06
Aula 06Aula 06
Aula 06
 
Teatro ana
Teatro anaTeatro ana
Teatro ana
 
Procedural Solar System Generation in Real -Time
Procedural Solar System Generation in Real -TimeProcedural Solar System Generation in Real -Time
Procedural Solar System Generation in Real -Time
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
Desenho técnico tecnoblogue 2010/2011
Desenho técnico tecnoblogue 2010/2011Desenho técnico tecnoblogue 2010/2011
Desenho técnico tecnoblogue 2010/2011
 
Desenho Técnico Teórico
Desenho Técnico TeóricoDesenho Técnico Teórico
Desenho Técnico Teórico
 
Modelagem de dados geográficos
Modelagem de dados geográficosModelagem de dados geográficos
Modelagem de dados geográficos
 
9936078.ppt
9936078.ppt9936078.ppt
9936078.ppt
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
05 noções de desenho técnico
05   noções de desenho técnico05   noções de desenho técnico
05 noções de desenho técnico
 
noções de desenho técnico
noções de desenho técniconoções de desenho técnico
noções de desenho técnico
 

Mais de Carlos Eduardo Silva

Mais de Carlos Eduardo Silva (6)

Sumner
SumnerSumner
Sumner
 
Troca de óleo delivery
Troca de óleo deliveryTroca de óleo delivery
Troca de óleo delivery
 
Lubri auto
Lubri autoLubri auto
Lubri auto
 
Torques y controles serie 10 mwm
Torques y controles serie 10   mwmTorques y controles serie 10   mwm
Torques y controles serie 10 mwm
 
Análise swot da indústria da moda
Análise swot da indústria da modaAnálise swot da indústria da moda
Análise swot da indústria da moda
 
Análise swot da indústria da moda
Análise swot da indústria da modaAnálise swot da indústria da moda
Análise swot da indústria da moda
 

06 modelagem

  • 1. Modelagem Frederico Damasceno Bortoloti Adaptado de: Donghoon YangDonghoon Yang Anselmo Montenegro Claudio Esperança Paulo Roma Cavalcanti
  • 2. Computação Gráfica e Áreas Correlatas processamento de imagens Imagem digital computaçãocomputação gráfica (síntese de imagens) visão computacional Modelos imagens) modelagem geométrica
  • 3. Estrutura de aplicação gráfica interativa tradicional
  • 4. Modelagem vs VisualizaçãoModelagem vs. Visualização • Modelagem: • Interessada na descrição de uma cena • Externamente: representação na forma de arquivo contendo as informações geométricas (e outras) • Internamente (na execução do programa): representação emInternamente (na execução do programa): representação em estrutura de dados residente em memória • Visualização:ç • Interessada na visualização (display) da cena a partir de uma dada câmera (posição do observador)(p ç ) • A princípio, são conceitos independentes.
  • 5. Espaços de CoordenadasEspaços de Coordenadas • Plano ou R² (2D)
  • 6. Espaços de CoordenadasEspaços de Coordenadas • Espaço ou R³ (3D)
  • 7. Paradigmas de AbstraçãoParadigmas de Abstração • A necessidade de paradigmas (Ari Requicha). • Paradigma dos universos• Paradigma dos universos. • Físico F. • Matemático M• Matemático M. • Representação R. • Implementação I• Implementação I.
  • 8. Problemas da ÁreaProblemas da Área • Estudar fenômenos em F. • Definir os modelos.Definir os modelos. • Estudar as relações entre R e M. • Definir representações de modelos em M. • Estudar conversões entre representaçõesEstudar conversões entre representações. • Definir métodos de implementação. • Comparar estratégias em I.
  • 9. Esquemas de RepresentaçãoEsquemas de Representação • Objetos do universo físico: “sólidos” • O que é um sólido? • Objetos do universo matemático vêm da: • Geometria diferencial • Topologia diferencial
  • 10. Geometria pode Ser ComplicadaGeometria pode Ser Complicada Garrafa de Klein (não orientável)Nó
  • 11. Toro x Garrafa de KleinToro x Garrafa de Klein
  • 12. Superfícies Não OrientáveisSuperfícies Não Orientáveis • F i d Möbi ó t l d b d• Faixa de Möbius só tem um lado e uma borda. • Superfície Romana é obtida costurando-se uma faixa de Möbius à borda de um disco (representação de RP2 no R3).( p ç ) Faixa de MöbiusSuperfície Romana
  • 13. HistóricoHistórico • Modelagem por arames (wireframes). • Representa os objetos por arestas e pontosp j p p sobre a sua superfície. • Gera modelos ambíguosGera modelos ambíguos. • Modelagem por superfícies (década de 60). • Fornece a descrição matemática das superfícies que delimitam o objeto. • Poucos testes de integridade do modelo.
  • 14. HistóricoHistórico • Modelagem de Sólidos (década de 70). • Implícita ou explicitamente contémp p informações do fechamento e conectividade dos objetos.j • Garante a realização física. • Sistemas CAD CAM utilizados pela indústria• Sistemas CAD-CAM utilizados pela indústria.
  • 15. Estado da ArteEstado da Arte • Modelagem de dimensão mista ou non- manifold (década de 80).( ) • Permite representar objetos com estruturas internas ou com elementos pendentes deinternas ou com elementos pendentes de dimensão inferior. • Sólido delimitado por superfícies não• Sólido delimitado por superfícies não necessariamente planas localmente. E ACIS (S ti l T h l ) A t C d• Ex.: ACIS (Spatial Technology) – AutoCad.
  • 16. HistóricoHistórico • Início dos anos 70• Início dos anos 70 • Ian Braid : Ph.D. thesis at the University of Cambridge in England introduced the BUILD system • ROMULUS Parasolid ACIS• ROMULUS, Parasolid, ACIS • the Compac system : U of Berlin, Germany • Proren : U of Ruhr, Germany B ’ E lid F• Brun’s Euclid system : France • Engeli’s Euklid system : Switzerland • TIPS-1 : Hokkaido University, Japan • GeoMap : University of Tokyo, Japan • Shapes : Draper Labs, US • Synthavision system : USy y • GLIDE : Chuck Eastman, Carnegie-Mellon, Architectural application and database • PADL : University of Rochestery Aristides A. G. Requicha, GEOMETRIC MODELING: A First Course
  • 17. SólidoSólido d• Adjetivo • Não macio • Não oco• Não oco • Não adulterado ou não misturado • De construção forte e seguraç g • … • Substantivo • Algo sólido • Uma figura geométrica tridimensional de um objeto U b â i i d d d f• Uma substância que resiste a stress moderado e deformação, diferente de um líquido ou gás… Encarta Dictionary
  • 18. Descrição de SólidosDescrição de Sólidos • Assuma-se que um sólido é um conjunto tridimensional de pontos.p • Conjuntos de pontos podem ser descritos P f t i• Por suas fronteiras • Por campos escalares •Definidos por equações •Amostrados
  • 19. Objetivos da Modelagem de Sólidos bl d d l f f l d b• Problemas de modelos gráficos: falta de robustez, imcompletude, aplicabilidade limitada. C l t t ã d bj t ólid ã• Completa representação de objetos sólidos que são adequados para responder a quaisquer questões geométricas (de robôs) sem ajuda do usuário humanogeométricas (de robôs) sem ajuda do usuário humano. • Duas maiores questões; integridade e complexidade Soonh ng Han KaistSoonhung Han, Kaist
  • 20. Propriedades da modelagem de sólidos P d i• Poder expressivo; • Validade: manufacturabilidade; • Desambigüidade e unicidade; • Languagens de Descrição: operações para• Languagens de Descrição: operações para construção C i i d• Concisão: requerimento de armazenamento • Facilidade computacional e aplicabilidade: requerimentos de poder computacionalq p p Soonhung Han, Kaist
  • 21. Modelo sólidoModelo sólido • Criação apenas de representações completas de objetos sólidos • Representações desambígüas para sólidos • Requerimentos para propriedades matemáticaseque e tos pa a p op edades ate át cas para um modelo sólido • RigidezRigidez • Finitude • SolidezSolidez • Fechamento sob operação Booleana • Descrição finitaDescrição finita • Determinismo de Fronteira
  • 22. Propriedades matemáticas requeridas d• Rigidez • Distância e ângulo fixos no espaço Euclidiano • Preservação de distâncias e ângulos• Preservação de distâncias e ângulos • Finitude • Extensões finitas de objetos físicosExtensões finitas de objetos físicos • Solidez • Sem faces ou arestas penduradasSe aces ou a estas pe du adas • Fechamento sob operação Booleana • Operações Booleanas aplicadas a sólidos devem produzir outrop p p sólido • Resultado de operação Booleana pode ser usado como entrada para outras operações Booleanaspara outras operações Booleanas • Subtração e adição de sólido são garantem a produção de sólidos
  • 23. Propriedades matemáticas requeridas • Descrição finita • Quantidade finita de dados deve ser apta aQ p descrever conjuntos de pontos usados em modelos sólidos • Determinismo de fronteira F t i d ólid d d fi i ólid• Fronteira de um sólido deve definir o sólido desambigüamente
  • 24. Tipos de modelos sólidosTipos de modelos sólidos M d l d D i ã (BSP t O t t )• Modelos de Decomposição (BSP-trees, Octrees, etc.) • Modelos de Arame (Wireframe) • Modelos de Superfície (Surface Modeling)• Modelos de Superfície (Surface Modeling) • Modelos de Sólido (Solid Modeling) • Modelos Construtivos (CSG – Constructive Solid Geometry)Modelos Construtivos (CSG Constructive Solid Geometry) • Modelos de Fronteira (B-rep – Boundary Representation) • Modelos Híbridos (CSG e B-rep) M d l B d F (F B d M d li )• Modelos Baseados em Features (Feature-Based Modeling) • Modelos de Dimensão Mista (Non manifold)
  • 25. Representação de SólidosRepresentação de Sólidos • As duas formas, de descrever conjuntos de pontos, dão origem a três tipos dep g p representação: • Por bordo (B-rep – Boundary Representation)• Por bordo (B-rep – Boundary Representation) • Implícita (CSG – Constructive Solid G t )Geometry) • Por enumeração do espaço em células (BSP- )trees, Octrees, etc.)
  • 26. Modelo de DecomposiçãoModelo de Decomposição • Representa um conjunto de pontos como uma coleção de objetos simples a partir deç j p p uma coleção fixa de tipos de objetos primitivos combinada com uma únicaprimitivos, combinada com uma única operação de “colagem”
  • 27. Tipos de modelos de decomposição • Enumeração exaustiva • Todo espaço é igualmente dividido em blocos e uma matriz 3D armazena informações sobre o material (ou a falta dele) em cada bloco V l• Voxel • Decomposição celular • Células irregulares dividem o objeto em blocos • FEM (Finite Element Meshes) para FEA (Finite Element Analysis) – análise estrutural por elementos finitos • Subdivisão de espaçop • Divide o espaço em blocos recursivamente • Representação em Quadtree, Octree
  • 28. Enumeração ExaustivaEnumeração Exaustiva • Caso especial de decomposição onde primitivas são cúbicas em suas formas • Elementos de volume de tamanho uniforme chamados voxels • Usado extensivamente em computação gráfica e na CG para medicinap • Eficiente mas requer armazenamento significativosignificativo • Acurácia limitada a menos que os voxels sejam extremamente pequenosextremamente pequenos
  • 30. VoxelVoxel Estruturas da cabeça e do cérebro ( ) í 1 0 f(ocultas) extraídas de 150 fatias
  • 31. Decomposição CelularDecomposição Celular • Variedade de tipos de células básicas e um único operador de combinação “colar”p ç • Células individuais são geralmente criadas como instâncias parametrizadascriadas como instâncias parametrizadas de tipos de células • Células podem ser qualquer objeto que seja topologicamente equivalente a umaseja topologicamente equivalente a uma esfera (sem buracos)
  • 33. Subdivisão de EspaçoSubdivisão de Espaço •Inventado para superar o grande consumo de memória da enumeraçãoconsumo de memória da enumeração exaustiva •Esquema de subdivisão adaptativa baseado na grade tridimensional debaseado na grade tridimensional de uma enumeração exaustiva
  • 34. Subdivisão de Espaço Representações por Células Di id b iõ• Dividem o espaço em sub-regiões convexas. • Exaustiva (Voxels): Cubos de tamanho igual O t C b j l d ã tê i d 2• Octrees: Cubos cujos lados são potências de 2 • BSP-trees: Poliedros convexos • À él l ã t ib íd l d• Às células são atribuídas valores de um campo escalar F(x, y, z). • Campo é assumido constante dentro de cada célula• Campo é assumido constante dentro de cada célula. • Sólido é definido como o conjunto de pontos tais que A < F(x y z) < B para valores A e Bque A < F(x, y, z) < B para valores A e B estipulados.
  • 35. Quadtrees (2D) / Octrees (3D)Quadtrees (2D) / Octrees (3D) • Estruturas de dados (árvores) para decomposição hierárquica do planop ç q p (quadtrees) / espaço (octrees) • Podem ser usadas para guardar diferentes• Podem ser usadas para guardar diferentes tipos de dados, por ex. • Conjunto de pontos • Malhas poligonaisp g
  • 37. QuadtreesQuadtrees d d d l• Todo nó representa um quadrado no plano. • Todo nó interno possui exatamente quatro filhos, os i t t d t d ó iquais representam os quatro quadrantes do nó pai: noroeste, nordeste, sudoeste e sudeste. • A subdivisão continua conforme algum critério de• A subdivisão continua conforme algum critério de parada. http://www.tecgraf.puc‐rio.br/~hermann/gc/
  • 38. Quadtree Critério de ParadaQuadtree – Critério de Parada E l• Exemplo: 1. Começa com quadrado envolvendo todo o objeto, que em seguida é dividido em 4 quadrados menores. 2. Cada um é classificado em • Cheio: o quadrado está totalmente dentro do objeto • Vazio: o quadrado está totalmente fora do objetoq 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• O procedimento encerra quando só existirem quadrados cheios e vazios Pinho, PUCRS
  • 39. Quadtree ExemploQuadtree - Exemplo http://lcp lcad icmc usp br/~nonato/ED/Quadtree/quadtree htmhttp://lcp.lcad.icmc.usp.br/ nonato/ED/Quadtree/quadtree.htm
  • 40. Quadtree Programa ExemploQuadtree – Programa Exemplo Autores: Patrícia Zottis e Rodrigo Fehse Alterações: Leonardo Langie ‐ PUCRS
  • 41. OctreeOctree • Idêntica à Quadtree, mas considerando o espaço 3Dp ç • Cubo é dividido em 8 sub-cubos
  • 46. Uso de Octrees e QuadtreesUso de Octrees e Quadtrees • Exemplos: • Frustum culling, detecção deg, ç colisão, operações de união e interseçãoç •Se pai (não) é importante, todos os filhos também (não)( ) são • Desvantagem: FlipCode.com Desvantagem: • Trabalhosas para manipularmanipular
  • 48. Malhas de PolígonosMalhas de Polígonos d d l d d l• Construção de modelos 3D usando grupos de polígonos. • Como cada polígono é planar, necessita-se grande quantidade de polígonos para dar a impressão de superfícies curvasde polígonos para dar a impressão de superfícies curvas 1K polígonos10K polígonos www.gamesfaction.com
  • 49. Mesh TesselationMesh Tesselation • Construção de malhas poligonais • A partir de representações 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
  • 50. Malhas de triângulosMalhas de triângulos l l d lh• Costuma-se usar triângulos como o polígono das malhas • O polígono é gerado com exatamente 3 vértices por face • Um vértice pode pertencer a qualquer número de faces• Um vértice pode pertencer a qualquer número de faces • Adjacência calculada em tempo constante • Triângulos são sempre planaresg p p Giambruno, 2003,
  • 51. Alguns tipos de malhas de triângulosAlguns tipos de malhas de triângulos • O primeiro triangulo é desenhado com três vértices e os demais com• O primeiro triangulo é desenhado com três vértices, e os demais com apenas um. Strip • Muitos dos vértices são comuns a vários polígonos que o constituem. A i i ã d lí i t tilh t d Fan Assim, a organização dos polígonos com vista o compartilhamento dos vértices comuns traduz-se num envio e processamento únicos destes vértices [Möller 2003].
  • 52. Problema GeralProblema Geral l f d f f• Quantos mais polígonos, menos facetada fica a superfície curva • Mais polígonos significa mais tempo de processamento!!!• Mais polígonos, significa mais tempo de processamento!!!
  • 53. LOD Level of DetailLOD – Level of Detail À did à di â i d â d l• À medida que à distância da câmera a um modelo aumenta, o espaço por este ocupado na janela diminui e, conseqüentemente, o detalhe com que é visualizado também diminui. d f l b f• O LOD permite definir representações alternativas para um objeto gráfico, cada uma sendo ativada de acordo com a distância ao observador.
  • 54. LODLOD • T d á i• Torna-se desnecessário e ineficiente definir o objeto com todo detalhe. O bj ti i i l é dobjetivo principal é o de utilizar diferentes representações de um d l l dmodelo, normalmente de resoluções distintas, que serão selecionadas de d dacordo com um critério de decisão pré-determinado. Um dos critérios de decisão mais utilizado é à distância do modelo à câmera.
  • 55. Tipos de LODTipos de LOD • Discreto • A construção das diferentes representações doç p ç modelo é realizada numa fase de pré- processamento, sendo associada a cada umap , delas um intervalo de distâncias à câmera dentro do qual o nível de detalhe deve serq utilizado. • Durante a execução o algoritmo calcula aDurante a execução, o algoritmo calcula a distância da câmera ao objeto e avalia qual dos diferentes níveis de detalhe deve serdos diferentes níveis de detalhe deve ser utilizado.
  • 56. Tipos de LODTipos de LOD • Contínuo • Os níveis de detalhe são gerados em tempo deg p execução. • View dependent LODView dependent LOD •Extensão de LOD contínuo usando posição do observador para definir o nível de detalhe.observador para definir o nível de detalhe.
  • 57. Exemplo de LOD DiscretoExemplo de LOD Discreto • VRML: nó LOD
  • 58. LODLOD • Exemplo de LOD • X3D
  • 59. LOD ContínuoLOD Contínuo Vi d d t LODView dependent LOD
  • 61. LOD Contínuo Visualização de Terrenos h // ll l /i / dd/i /i h l• http://www.llnl.gov/icc/sdd/img/images.shtml
  • 62. Modelo de Arame (Wireframe)Modelo de Arame (Wireframe) • Representação de arestas (pontos + conexões entre pontos)p )
  • 63. Modelo de Arame (Wireframe)Modelo de Arame (Wireframe)
  • 64. Modelo de Arame (Wireframe)Modelo de Arame (Wireframe) • Vantagens • Simplicidade e velocidade na visualização dos modelos (geram- se apenas linhas)se apenas linhas) • Problemas • Dificuldade de realizar operações com sólidos (cálculo de massa,p ç ( , volume, determinação de inclusão, sem geração de caminho para ferramentas para NC...) • Representação ambígüa (sujeita a interpretações diferentes)• Representação ambígüa (sujeita a interpretações diferentes) As duas representações abaixo são válidas para  o modelo em wireframe abaixo Márcio Pinho, PUCRS
  • 65. Modelo de Arame (Wireframe) Ambigüidade e Unicidade • Uma representação é única quando o modelo associado possui uma únicapossui uma única representação. • Uma representação é ambíguaUma representação é ambígua quando pode representar mais de um modelo. • Representação ambígua é catastrófica (wireframe). • Inviabiliza máquinas de controle numérico.
  • 66. Modelos de SuperfícieModelos de Superfície d l d l d b d• Mais poderosos que simples modeladores baseados em wireframe por prover descrições matemáticas da forma das superfícies dos objetosdas superfícies dos objetos • Pode representar uma superfície fechada (volume) ou abertaaberta
  • 67. Modelos de SuperfícieModelos de Superfície d• Armazena equações de superfícies M i i d t 3D• Maioria dos pacotes 3D usam modelagem de superfíciesuperfície • Boa para visualização de complexas superfícies ep p geração de caminho para NC de superfícies complexas • Informações sobre o l ã bi üvolume são ambigüas e difíceis de calcular
  • 68. Modelos de SuperfícieModelos de Superfície f• Superfícies não estão adequadamente conectadasconectadas • Nenhuma informação de conectividade éconectividade é armazenada. • Propriedades de massap não fazem sentido
  • 69. Modelos de SólidoModelos de Sólido • Sistemas que são capazes de realizar a modelagem sólida são muito maisg poderosos que simples modeladores baseados em wireframebaseados em wireframe. • Esses programas são usados para i bjconstruir componentes que são objetos sólidos, e não simplesmente uma malhap de linhas trançadas.
  • 70. Modelo ConstrutivoModelo Construtivo R t j t d t bi ã d• Representa um conjunto de pontos como combinação de um conjunto de pontos de primitivas. • Cada uma das primitivas é representada como umaCada uma das primitivas é representada como uma instância de um tipo de sólido primitivo • Operações para combinar primitivasp p p • União • Interseção • Diferença• Diferença • Muito eficiente em termos de armazenamento • Visualização requer que curvas e superfícies individuaisVisualização requer que curvas e superfícies individuais sejam combinadas e avaliadas • Muito caro computacionalmente
  • 71. Tipos de modelos construtivosTipos de modelos construtivos • Modelo Half-space Funções f(x,y,z) dividem o espaço em 2 metades (f<0 ou f>0 @( ))f>0 @(x,y,z)) Metades podem ser delimitadas (esfera) ou não delimitadas (cilindro infinito)delimitadas (cilindro infinito) • Modelo CSG(Constructive Solid Geometry) Usuário apenas interage com objetos sólidosUsuário apenas interage com objetos sólidos delimitados Computador modela sólidos delimitados como umap combinação de meios espaços (half-space) Quase todas modelagens construtivas usam CSG pois é i fá il á imais fácil para o usuário.
  • 72. Modelo Half spaceModelo Half-space Cilindro Infinito Planos Cilindro FinitoCilindro Infinito Planos Cilindro Finito z < b x + y < r2 2 2 z > az > a Department of Mechanical Engineering, The Ohio State University
  • 73. Modelo CSGModelo CSG • Operações CSG definem objetos através de operações regularizadas de conjuntos dep ç g j pontos. • União Interseção e Diferença• União, Interseção e Diferença. • Um objeto é regular se o fechamento do interior do seu conjunto de pontos é igual ao próprio conjunto de pontos.p p j p
  • 76. Árvore CSGÁrvore CSG • Um modelo CSG é codificado por uma árvore. • Os nós internos contêm doperações de conjunto ou transformações lineares afimlineares afim. • Folhas contêm objetos primitivos (tipicamente,primitivos (tipicamente, quádricas).
  • 84. Modelo de FronteiraModelo de Fronteira R t j t d t t d f t i• Representa um conjunto de pontos em termos de sua fronteira. • Fronteira de sólido : surperfícies • Fronteira de superfície : facesp • Fronteira de face : curva (ou aresta) • A maioria dos pacotes de modelagem de sólido usam a representação de fronteira (B-rep) para armazenar modelosrepresentação de fronteira (B rep) para armazenar modelos • Sólido é considerado como delimitado por um conjunto de faces • Faces tem uma representação matemática compacta l• Plano • Toróide • Cilíndro • Superfície paramétrica como uma superfície de Bezier
  • 85. Modelo de FronteiraModelo de Fronteira aresta face vértice
  • 86. Boundary Representation (B- Rep) • Define-se o modelo 3D a partir de conjunto de polígonos que delimitam uma região fechada no espaço • Esses polígonos são as faces do objeto 3D (poliedro)
  • 87. Boundary Representation (B- Rep) R• Representações • 1 lista de vértices explícita: • 2 listas: lista de vértices e lista das topologias FACE: (x1, y1, z1)-(x2, y2, z2)- .... - (xn, yn, zn); p g das faces VÉRTICES: 1 (x1 y1 z1) FACES: 1 v1 v2 v3 vn1 - (x1, y1, z1) 2 - (x2, y2, z2) .... .... .... n - (xn yn zn) 1 - v1, v2, v3, ...., vn 2 - v3, v5, ..., vn .... .... .... n – vn v4 v1 • 3 listas: vértices, arestas e faces n - (xn, yn, zn) n vn, v4, ..., v1
  • 88. Exemplo de 3 listasExemplo de 3 listas http://gbdi.icmc.usp.br/documentacao/ apostilas/cg/downloads/modpoliedrais pdfapostilas/cg/downloads/modpoliedrais.pdf
  • 89. Grafo B RepGrafo B-Rep Topology Geometry
  • 90. Modelos Híbridos de SólidoModelos Híbridos de Sólido O ét d d d l ólid CSG B• Os métodos de modelagem sólida CSG e B-rep são freqüentemente combinados para gerar modelos de componentesmodelos de componentes. • Cada um desses métodos possui suas limitações, e componentes de difícil criação fazendo uso dee componentes de difícil criação fazendo uso de um ou outro, podem ser gerados mais facilmente usando uma combinação de ambos osfacilmente usando uma combinação de ambos os métodos. • A maioria dos sistemas modeladores sólidoA maioria dos sistemas modeladores sólido comerciais são híbridos utilizando tanto o método CSG quanto o B-rep.q p
  • 91. Modelos Híbridos de SólidoModelos Híbridos de Sólido Sólido B-Rep CSG Boundary Constructivey Representation: •Extrusão •Revolução Solid Geometry: •Usa primitivas sólidas (cilindro, cone, etc.) •Varredura •Mesclagem de perfis 2-D como building blocks •Construção de sólido combinando primitivas usando operadores Booleanos de união, interseção e diferença
  • 92. Modelos Híbridos de SólidoModelos Híbridos de Sólido • M d l ólid ã h id• Modelos sólidos são conhecidos por serem representações completas, válidas, e não ambíguas de objetos. • Um sólido completo é aquele que permite um ponto no espaço ser classificado relativo ao objeto, se está dentro ou fora ou sobre o objeto.j • Essa classificação é chamada de endereçabilidade espacial ou classificação de pertinência a conjunto. • Um sólido válido não deve ter arestas ou faces• Um sólido válido não deve ter arestas ou faces penduradas, só assim permitirá análise de interferência, cálculos das propriedades de massa, modelagem e áli t t l d l t fi it CAPP hianálise estrutural de elementos finitos, CAPP, machine vision, e programação de NC.
  • 93. Modelos Híbridos de Sólido Funções de Modelagem Sólida Dif i á i d• Diferentes maneiras que um usuário pode criar formas sólidas: • Criação de primitivas • Operações Booleanasp ç • Operações de revolução • Operações de superfícieOperações de superfície • Modelagem baseada em Features de EngenhariaEngenharia • Modelagem paramétrica
  • 94. Criação de PrimitivasCriação de Primitivas P i iti ã f• Primitivas são formas sólidas simples com superfíciessuperfícies matemáticas simples • Pode ser controlada• Pode ser controlada por um número pequeno depequeno de parâmetros e posicionada usandop uma matriz de transformação
  • 95. Operações BooleanasOperações Booleanas O õ B l• Operações Booleanas são usadas para fazer formas maisformas mais complicadas combinando formascombinando formas mais simples • 3 tipos de operações3 tipos de operações são possíveis: • União • Interseção • Diferença
  • 96. Operações de RevoluçãoOperações de Revolução • Usa seções em wireframe 2D para l dgera sólido 3D • Inclui operaçõesp como: • Extrusão • Revolução • Varredura • Formar por Seções
  • 97. Operações de SuperfícieOperações de Superfície O di t t• Opera diretamente nas superfícies, arestas e vértices doarestas e vértices do modelo sólido, para criar umacriar uma modificação desejada • Exemplos:Exemplos: • Chanfro • Arredondamentoedo da e to • Rascunho • Casca
  • 98. Constructive Solid Geometry (CSG) • Objetos são construídos a partir das Primitivas Sólidas • Junção ou União • Corte ou Diferença • Interseção ou Material Comum
  • 100. Modelos Baseados em FeaturesModelos Baseados em Features U f d d fi id• Um feature pode se definido como um elemento físico de uma peça que tem l i ifi d h i lalgum significado para a engenharia. Ele deve satisfazer as seguintes condições: • ser um constituinte físico de uma peça; • ser mapeável para uma forma geométricap p g genérica; • ser tecnicamente significante, sob o ponto deg , p vista da engenharia; e • ter propriedades que podem ser previstas.p p q p p
  • 101. Modelos Baseados em FeaturesModelos Baseados em Features • O significado técnico de feature pode envolver a função à qual um feature serve,ç q f como ele pode ser produzido, que ações a sua presença deve iniciar etcsua presença deve iniciar, etc. • Features podem ser pensados como ' i i i d h i ' l'primitivas de engenharia' relevantes a alguma tarefa de engenharia.g g
  • 102. Modelos Baseados em FeaturesModelos Baseados em Features O ét d it i f h f• O método permite criar furos, chanfros, rasgos, etc, para serem associados com outras entidades ou faces.ou faces. • A modelagem por features é baseada na idéia de se desenhar utilizando building blocks - blocos deg construção. • Ao invés de se usar formas analíticas como l l í d ili d fparalelepípedos, cilindros, esferas e cones como primitivos, o usuário cria modelo do produto usando primitivos de maior nível que são maisusando primitivos de maior nível que são mais relevantes para sua aplicação específica.
  • 103. Modelos Baseados em FeaturesModelos Baseados em Features O j t fi d f t f id l t i• O conjunto fixo de features oferecido pelos atuais modeladores ainda é muito limitada para uso industrial, o que limita as possibilidades doindustrial, o que limita as possibilidades do projetista. • Os features devem ser adaptáveis aos usuários ef p que a biblioteca de features deve ser extensível.
  • 104. Modelos Baseados em FeaturesModelos Baseados em Features • Exemplos • Furo • Slot • Cubo• Cubo • Chanfro • Rasgo
  • 105. Modelos ParamétricosModelos Paramétricos • A modelagem sólida paramétrica permite que se crie modelos de produtos comq p dimensões variacionais. • Ligações bidirecionais entre o modelo e o• Ligações bidirecionais entre o modelo e o esquema de dimensionamento permite a i d d lregeneração automática de modelos depois de mudanças nas dimensões ep atualização automática das dimensões relacionadas.relacionadas.
  • 106. Modelos ParamétricosModelos Paramétricos • Parâmetros vêm de: • dimensões em esboços 2Dç • dimensões em geometria 3D (sistemas avançados)avançados) • parâmetros de operação de modelagem iá i õ d á i• variáveis em equações do usuário • A geometria inteira da parte pode serg p p controlada por um pequeno número de parâmetros chave!parâmetros chave!
  • 107. Modelos ParamétricosModelos Paramétricos Modelagem Paramétrica Modelagem Dirigida à Dimensão Modelagem Baseada em Restrições Usa parâmetros para especificar Usa restrições geométricas tais dimensões de entidades como paralelismo, concentricidade, tetc.
  • 108. Modelos Non manifoldModelos Non-manifold • Transferência de calor de uma parte tocando outra: faces tocantes • Propagação de rachadura: elementos 1D e 2D dentro de uma parte sólidap • Material híbrido: painel sanduíche • 2 tipos de modeladores non-manifold;• 2 tipos de modeladores non-manifold; • Inclui entidades de dimensões mais baixas em uma estrutura de dados de modelo sólidoestrutura de dados de modelo sólido • Concentra em modelos compostos => modelo celular Soonh ng Han KaistSoonhung Han, Kaist
  • 109. Estrutura de dados Non manifoldEstrutura de dados Non-manifold
  • 110. Modelo Non manifoldModelo Non-manifold A B
  • 111. CodificaçãoCodificação • Explícita. • Ponteiros para lista de vértices.Ponteiros para lista de vértices. • Ponteiros para lista de arestas. • Winged-Edge (Half-Edge, Face-Edge). • Quad-Edge (Guibas-Stolfi)Quad Edge (Guibas Stolfi). • Radial-Edge.
  • 112. Codificação ExplícitaCodificação Explícita • A mais simples. • Cada face armazena explicitamente a listap ordenada das coordenadas dos seus vértices: { })()()( • Muita redundância de informação { }),,(),...,,,(),,,( 222111 nnn zyxzyxzyxP = • Muita redundância de informação. • Consultas são complicadas. • Obriga a execução de algoritmos geométricos para determinar adjacências.
  • 113. Desenho da MalhaDesenho da Malha C d t é• Cada aresta é desenhada duas vezes pelos duasvezes, pelos duas faces que a compartilhamcompartilham. • Não é bom para plotadoras ou filmesplotadoras ou filmes.
  • 114. Ponteiros para Lista de VérticesPonteiros para Lista de Vértices • Vértices são armazenados separadamente. • Há uma lista de vértices.Há uma lista de vértices. • Faces referenciam seus vértices através de iponteiros. • Proporciona maior economia de memória.p • Achar adjacências ainda é complicado. d d h d d• Arestas ainda são desenhadas duas vezes.
  • 116. Ponteiros para Lista de ArestasPonteiros para Lista de Arestas Há bé li d• Há também uma lista de arestas. • Faces referenciam as suas arestas através de ponteiros. • Arestas são desenhadas percorrendo-se aArestas são desenhadas percorrendo se a lista de arestas. • Introduzem se referências para as duas• Introduzem-se referências para as duas faces que compartilham uma aresta. F ili d i d d f• Facilita a determinação das duas faces incidentes na aresta.
  • 119. Winged EdgeWinged-Edge • Criada em 1974 por Baumgart. • Foi um marco na representação por fronteira.p p • Armazena informação na estrutura associada às arestas (número de campos é fixo).a estas ( ú e o de ca pos é xo). • Todos os 9 tipos de adjacência entre vértices, arestas e faces são determinados em tempoarestas e faces são determinados em tempo constante. • Atualizada com o uso de operadores de Euler• Atualizada com o uso de operadores de Euler, que garantem: V – A + F = 2.
  • 120. 9 tipos de Relacionamentos de Adjacência
  • 122. Radial EdgeRadial-Edge • Criada em 1986 por Weiler. • Representa objetos non-manifold.p j f • Armazena a lista ordenada de faces incidentes em uma aresta.u a a esta. • Muito mais complicada que a Winged-Edge.
  • 124. Prós e Contras de RepresentaçõesPrós e Contras de Representações • N CSG d f il t bj t ã• Na CSG pode-se facilmente assegurar que objetos são “sólidos” se todas as formas primitivas forem sólidas. Isso pode ser importante para algumas aplicações de engenharia f tou manufatura. • Por comparação, ao criar representações baseadas em B-rep, dados topológicos adicionais são necessários, ou checagensp g , g de consistência devem ser realizadas para assegurar que a dada descrição de fronteira especifica um objeto sólido válido. • Porém é fácil determinar, dado um ponto, se ele está no interior, fronteira ou exterior do objeto. O õ b l ã b d CSG• Operações booleanas são a base do CSG. • Boa para detecção de colisão (collision detection)
  • 125. Prós e Contras de RepresentaçõesPrós e Contras de Representações N B i t õ tã t d• Numa B-rep as interseções estão representadas explicitamente e é mais fácil exibir um ponto sobre a superfície do objeto.a superfície do objeto. • Porém é difícil determinar, dado um ponto, se ele está no interior, fronteira ou exterior do objeto.j • Operações booleanas são complicadas. • Mais flexível e tem um conjunto mais rico dej operações. • Escolha mais apropriada para sistemas CAD – CSG f i d i i i l t it i tfoi usado inicialmente por muitos sistemas comerciais pois é mais fácil de se implementar.
  • 126. Prós e Contras de RepresentaçõesPrós e Contras de Representações E d i /• Em representações por decomposição / células a classificação de um ponto é d b d l l d limediata, bastando avaliar o sinal do valor do campo no ponto. • Exibir um ponto sobre a superfície do objeto requer a solução de uma equação,j q ç q ç , que pode ser complicada. • Operações booleanas são avaliadas• Operações booleanas são avaliadas facilmente.
  • 127. Conversão entre RepresentaçõesConversão entre Representações C CSG B é d i d• Conversão CSG → B-rep é denominada avaliação do fronteira. • Conversão B-rep → CSG é muito mais complicada.p • Conversão B-rep → Células é simples. • Conversão Células → B rep é• Conversão Células → B-rep é relativamente simples (marching cubes). • Conversão CSG → Células é simples. • Conversão Células → CSG é complicado.p