Geometria 3D
![]() |
---|
Geometria de um rosto |
Tipos de Geometrias
A geometria de um objeto 3D pode ser aproximada por várias técnicas.
Formas Básicas
Cubos, esferas, pirâmides, cones, etc.
As formas básicas são proporcionadas «diretamente» pelo sistema gráfico.
Geometrias Parametrizadas
Um cilindro é o rasto que uma circunferência deixa quando se desloca ao longo de um segmento de reta perpendicular ao plano da circunferência.
Certas formas podem ser definidas por um pequeno conjunto de parâmetros e objetos auxiliares e são proporcionadas por «funções» do sistema gráfico.
Conjuntos de Faces
Um rosto, o relevo de um terreno.
Formas mais irregulares têm de ser construídas definido individualmente as coordenadas dos vértices de uma rede de polígonos.
Além destas formas de construção de geometrias «estáticas» também são usadas técnicas que deformam a geometria inicial e que envolvem «esqueletos» e/ou «morphing». Estes técnicas não constam do programa deste curso.
Geometria construída
A geometria de um barco, construida a partir de proa, uma quilha e uma popa.
A popa e a proa são transformadas para se ajustarem à quilha. A quilha é uma extrusão, a proa é um conjunto de faces e a proa é uma transformação da popa.
Além das formas básicas, em geral estão disponíveis outras métodos para definir a geometria dos objetos gráficos.
Os métodos principais para construir geometrias são:
- As geometrias parametrizadas; em particular, extrusões.
- Os conjuntos de faces.
Exemplo/Aplicação da construção de geometrias.
Vamos ilustrar estes dois métodos construindo um objeto que usa ambos. O casco de um barco tem três partes:
- A proa (bow), usando um conjunto de faces.
- A quilha (keel), com uma extrusão.
- A popa (stern), transformando a proa.
Extrusões
Peças de alumínio feitas por extrusão (fonte: Wikipedia) |
---|
![]() |
A secção transportada ao longo da espinha gera uma geometria 3D :
Exemplos de extrusões
- [2D] Um segmento é o rasto dum ponto quando se movimenta «a direito».
- [2D] Um quadrado é o rasto dum segmento quando se movimenta «a direito»
- [2D] Um círculo é o rasto dum segmento quando roda em torno dum ponto.
- [3D] Um cubo é o rasto dum quadrado ao longo dum segmento.
- [3D] Um cilindro é o rasto duma circunferência ao longo dum segmento.
Parâmetros das extrusões
Uma extrusão é definida por:
- A
secção
- Uma superfície 2D assente no plano
Y=0
. - Por exemplo, uma circunferência, um disco, um «L».
- Uma superfície 2D assente no plano
- A
espinha
- Uma sequência de pontos no espaço 3D.
- Parâmetros adicionais
- Parâmetros específicos de cada sistema gráfico, que controlam pormenores do rendering desta geometria.
- Por exemplo, no sistema
X3D
as extrusões podem terrotações
eescalas
definidas ao longo daespinha
.
Estes parâmetros definem uma geometria de acordo com o seguinte processo:
- A
secção
, que é definida no planoY=0
é «transportada» para o primeiro ponto daespinha
e orientada para o ponto seguinte. - Da mesma forma, a
secção
é colocada no segundo ponto daespinha
. - Os vértices correspondentes da primeira e da segunda
secções
são ligados, formando um quadrilátero entre cada par de vértices. - Este processo é depois repetido para o resto dos pontos da
espinha
, resultando numa superfície de extrusão («arrasto») ao longo daespinha
.
Conjuntos de Faces
Aproximações de uma geometria por conjuntos de faces |
---|
![]() |
fonte: Artigo «Computer Graphics (computer science)» na Wikipédia |
Formas pouco regulares (por exemplo, um rosto ou um terreno) têm de ser construídas definido individualmente as coordenadas dos vértices e ligando esses vértices para formar faces (triângulos ou quadriláteros).
Parâmetros dos conjuntos de faces
Um conjunto de faces é definido por:
- Os
vértices
- Um ponto no espaço 3D, dado pelas suas coordenadas
x, y, z
. - Em geral os vértices são «arrumados» numa lista e referenciados pelo seu índice nessa lista.
- Um ponto no espaço 3D, dado pelas suas coordenadas
- As
faces
- Uma lista de três (ou, no caso do
X3D
, mais) vértices. - Normalmente é usado o índice na lista dos
vértices
, em vez das coordenadas.
- Uma lista de três (ou, no caso do
Regra da mão direita
Um aspeto importante na definição de uma face é a ordem em que os (índices dos) vértices são dados.
Dados três pontos no espaço 3D,
A, B, C
, a face «para cima» é definida pela regra da mão direita. Se os pontos forem dados pela ordemA, C, B
então a face «para cima» é oposta.
Quando esta regra é esquecida o resultado típico são «faces invisíveis».