Modificando os tamanhos


Autor/fonte: Márcio Serrolli Pinho e Cláudio Kirner



Digg del.icio.us

As primitivas gráficas apresentadas acima têm uma enorme flexibilidade (caso contrário estaríamos lidando com uma linguagem muito pouco expressiva). Para utilizar essa flexibilidade, é necessário introduzir modificadores à declaração dos objetos.

Cada objeto possui seus próprios modificadores, em função da sua geometria particular. As caixas têm largura, profundidade e altura, os cones têm raio da base e altura, e assim por diante. Na próxima tabela as principais propriedades de cada uma das primitivas geométricas são discriminadas e, a seguir, ilustradas.

Modificadores das primitivas geométricas (o primeiro número é quanto ao R, o segundo número é quanto ao G e o terceiro número é quanto ao B):

. Box - Modificador: size (tipo: real);
. Cone - Modificador: bottomRadius (tipo: real); height (tipo: real); side (tipo: lógico); bottom (tipo: lógico);
. Cylinder - Modificador: radius (tipo: real); height (tipo: real); top (tipo: lógico); bottom (tipo: lógico); side (tipo: lógico);
. Sphere - Modificador: radius (tipo: real).

Os modificadores de tipo real admitem valores positivos, enquanto os de tipo lógico recebem ou o valor TRUE ou o valor FALSE.

A fim de construir exemplos ilustrativos com os conhecimentos aprendidos, é conveniente dizer neste ponto que mais de uma primitiva geométrica (com as suas características e peculiaridades) pode ser declarada no mesmo arquivo. Os seguintes exemplos ilustram os modificadores utilizando esta possibilidade de definir múltiplas primitivas, e o conhecimento já aprendido de definição de cores.

sphere3.wrl:

#VRML V2.0 utf8
Shape {geometry Sphere{}}
Shape{
appearance Appearance {
material Material {
diffuseColor 1 1 0
transparency 0.4
}
}
geometry Sphere{ radius 2 }
}

No exemplo acima duas esferas foram construídas e sobrepostas. A primeira é a esfera default, sem modificação nenhuma, enquanto a segunda tem raio de duas unidades ("metros" daqui em diante), cor amarela e 40% de transparência. Observando o resultado, qual é o raio (aproximado) da esfera default? Por que foi empregada a propriedade de transparência para a segunda esfera e não para a primeira?

O seguinte exemplo ilustra o uso das variáveis lógicas, neste caso quando aplicadas à modificação geométrica de um cilindro. A esfera que o acompanha serve para responder à pergunta qual o tamanho padrão dos cilindros?

cylinder3.wrl:

#VRML V2.0 utf8
Shape {
appearance Appearance {
material Material {
diffuseColor .6 .6 .6
}
}
geometry Sphere{}
}
Shape {
appearance Appearance {
material Material {
diffuseColor 1 0 1
}
}
geometry Cylinder{side FALSE}
}

Por último, será ilustrada a expressividade das caixas em VRML em relação à possibilidade de modificar os tamanhos.

box2.wrl:

#VRML V2.0 utf8
Shape {
appearance Appearance {
material Material {diffuseColor 1 0 0 }}
geometry Box {size 10 1 1}
}
Shape {
appearance Appearance {
material Material {diffuseColor 0 1 0}}
geometry Box {size 1 10 1}
}
Shape {
appearance Appearance {
material Material {diffuseColor 0 0 1 }}
geometry Box {size 1 1 10}
}

Deste último exemplo o caro leitor ou leitora deverá ser capaz de concluir qual é a disposição padrão dos eixos nos mundos VRML. Para tanto, verifique que a caixa vermelha tem a sua primeira coordenada (x) maior do que as outras duas, que a verde possui a segunda coordenada (y) dez vezes maior do que as outras duas, e que a caixa azul é a que tem a terceira coordenada (z) hipertrofiada. Desenhe um mapa mental, que será de extrema utilidade para a compreensão das transformações geométricas de objetos.

A seguir é proposto um exercício para treinar o uso simultâneo dos conceitos de cores e de tamanhos aprendidos até este ponto... mas é melhor colocar óculos escuros antes de carregá-lo!




Enviado por xKuRt em 26/09/2006 às 14:00


Avaliação

Esta publicação ainda não foi avaliada!


Avaliar:


A avaliação de publicações é restrita a membros cadastrados e logados no nosso site.



Comentários

Este artigo ainda não foi comentado ou o(s) comentário(s) que foi(ram) enviado(s) a ele ainda não foi(ram) publicado(s).


Envio de comentário:




  

Sexta, 18 de Abril de 2014




Top 5 membros

Últimos membros online

Últimos membros cadastrados



Capa do livro
Android Para Desenvolvedores


Capa do livro
Excel para Profissionais de Finanças


Capa do livro
Google Sketchup Pro Aplicado ao Projeto Arquitetônico - Concepção, Modelagem Tridimensional e Apresentação de Projetos





Hostnet

IMD