MODELAGEM DE SÓLIDOS

É importante separar este assunto em dois tópicos distintos:


FORMAS DE ARMAZENAMENTO

Representação Aramada ou por "wire frame"

Nesta representação os objetos são descritos por um conjunto de arestas que definem as bordas do objeto. O método nada mais é do que uma extensão 3D do método de representação de objetos 2D por arestas.

A principal vantagem desta técnica é a sua velocidade na exibição dos modelos pois é necessário apenas exibir um conjunto de linhas.

Porém, há sérios inconvenientes no uso da representação aramada:

  

Figura 1 - Ambigüidades da representação aramada


Representação por faces(ou superfícies limitantes)

Esta técnica consiste em definir um modelo através de um conjunto de polígonos que delimitam uma região fechada do espaço. Esta região define o interior do modelo. Aos polígonos que limitam a região dá-se o nome de FACES. O objeto formado por esta técnica é normalmente chamado de POLIEDRO, ou seja, composto de muitos DIEDROS (diedro = semi-espaço).

Esta técnica também pode ser considerada uma extensão(mais inteligente) da modelagem 2D por arestas. Como naquele caso, onde há, pelo menos, duas formas de armazenamento das arestas, neste, é possível fazer uma analogia com as faces, que podem ser representadas de duas formas básicas:


Representação por Enumeração de Ocupação Espacial

Também conhecidos como Modelos de Subdivisão(ou Decomposição) do Espaço esta classe de formas de armazenagem decompõem o sólido em "pedaços".  

Decomposição em células ou partes

Enumeração Exaustiva/Enumeração de Ocupação Espacial

A idéia é dividir o espaço em regiões e definir o objeto através das regiões que ele ocupa neste espaço. Esta técnica é bastante útil quando e deseja calcular propriedades de massa, pois basta saber, por exemplo o volume de uma das partes em que o espaço foi dividido e multiplicar este valor pelo número de divisões ocupadas pelo objeto.

  

figura(Foley,549)

Figura 2 - Exemplo de objeto descrito por Voxels

Vantagens

 Desvantagem

Representação por Octrees

Considerada um caso particular da Enumeração de Ocupação Espacial, a técnica "representação por OCTREE" (ou árvore com 8 filhos) envolve o objeto, que em seguida é dividido em 8 cubos menores de igual tamanho(OCTANTES). Cada um destes é então classificado em:

Quando um octante for classificado em "Cheio-Vazio" ele é novamente dividido em 8 partes iguais e o processo de classificação é refeito para as novas partes. Este algoritmo repete-se até que só hajam cubos com as duas primeiras classes.

 Esta forma de armazenamento é um caso especial de Enumeração Espacial. Neste caso, os voxels passam a ser cubos de dimensões variáveis.

Em geral armazena-se a estrutura em forma de árvore

  

figura(Foley,554) 

 Figura 3 - Exemplo de objeto descrito por Octree

Vantagens

Desvantagem

Algoritmo de Construção de uma OCTREE

typedef struct octree
{

}OCTREE;

/* PRETO : nodo TODO ocupado pelo objeto */

/* BRANCO : nodo NÃO ocupado pelo objeto */

/* CINZA : nodo PARCIALMENTE ocupado pelo objeto */

CriaArvore(Sólido, OCTREE *raiz, nível)

{

subdivide(raiz); /* gera os oito filhos */

for(i=0;i<8;i++)

{ /* chama a função de criação */

    CriaArvore(Sólido, raiz->oct[i], nível-1);

}

}

}


TÉCNICAS DE MODELAGEM

Instanciamento de Primitivas(justaposição de sólidos primitivos)

Esta técnica de modelagem cria novos objetos através do posicionamento de objetos por transformações geométricas

Outra forma de crria objetos com esta técnica é o uso de Primitivas Parametrizáveis Com isto pode-se criar, por exemplo, um conjunto de Peças mecânicas ou Roupas, com apenas alguns comandos. 


Geometria Sólida Constritiva (CSG-Contrutive Solid Geometry)

 Método de CSG consiste em construir um objeto a partir da combinação operatória (união, intersecção e diferença) de dois ou mais sólidos. A figura 4exemplifica o uso desta técnica. No exemplo pode-se observar a realiza.cão de um diferença entre um retângulo e uma elipse.

 

Figura 4- Uso da técnica de CSG


Modelagem por Varredura(sweep)

A representação por varredura cria objetos baseada na noção de que uma curva C1 quando deslocada no espaço ao longo de uma trajetória dada por uma outra curva C2 descreve uma superfície que pode ser usada para definir um sólido. À curva C1 dá-se o nome de CONTORNO ou GERATRIZ e à C2, o nome de CAMINHO OU DIRETRIZ.

Varredura Translacional(Extrusão)

Um objeto "O" definido por varredura translacional é obtido pela translação de uma curva C ao longo de um vetor V, por um distância D. A figura 5 exemplifica a criação de dois objetos por esta técnica. A varredura translacional de um retângulo gera um paralelepípedo, de uma circunferência gera um cilindro.

  

Figura 5 - Criação de objetos por varredura translacional

Varredura Rotacional

Neste tipo de modelagem por varredura a superfície do objeto é descrita por uma curva que gira em torno de um eixo. Na figura 6 temos, à esquerda, uma curva e à direita o objeto gerado pela rotação de C em torno do eixo Y.

 

Figura 4 - Criação de objeto por varredura rotacional

 


 Modelagem por Seções Transversais

 Esta técnica permite gerar sólidos através de cortes.

 Toma-se um eixo (segmento de reta)

 

Figura 5 - Criação de objeto por seções planas


Modelagem por Superfícies

Superfícies Bezier

figura(Foley,521)

  

 

 Superfícies B-Splines

 

figura(Barsky 53 ou Roggers, 452)

 

Patches de COONS

Interpola 4 curvas paramétricas 

figura(Roggers, 424 ou Plastock

 

onde,