home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Freelog 11
/
Freelog011.iso
/
SeriePOV
/
Igloo_Ex5.pov
< prev
Wrap
Text File
|
2000-05-23
|
7KB
|
203 lines
// Persistence of Vision Ray Tracer Scene Description File
// File: .pov
// Vers: 3.1
// Desc: Tutoriel sur l'Igloo Exercice 5
// Date: 20/05/00
// Auth: Alonso Eusebio Pablo pour Freelog #10 DPpresse
//-----------------------------------------DECLARATIONS--------------------------------------------
#version 3.1 // Permet d'utiliser les instructions propre α Pov v 3.1
global_settings { assumed_gamma 1.0 } // definition du Gamma
//-------------------------------Inclusions Standard de POV-Ray------------------------------------
#include "colors.inc" // Declaration des couleurs standard
#include "textures.inc" // Declaration des textures standard
//---------------------------------DEFINITION DE LA CAMERA-----------------------------------------
camera
{ // debut de la camera
location <2.5, 1.0, -2.0> // position de la camera <X Y Z>
look_at <0.0, 0.0, 0.0> // point de mire <X Y Z>
} // fin de la camera
//----------------------------------FOND DE CIEL---------------------------------------------------
sky_sphere // sphere infinie
{ // debut du ciel
pigment // pigment de la sphere
{
gradient y // dΘgradΘ vertical
color_map { [0.0 color rgb <0.,0.,1.0>] [.1 color blue 0.2] } // couleurs: deux couleurs marines
}
} // fin du ciel
//------------------------------BRUME--------------------------------------------------------------
fog{ // brouillard
color Gray70 // de couleur grise
fog_type 2 // brume au sol parametrable en hauteur
fog_alt 0.30 // hauteur α partir de laquelle la brume s'evapore progressivement
fog_offset 0 // hauteur a partir de laquelle la brume a une densite constante
distance 1.5 // distance au point 1.5 l'opacite est de 36% et augmente progressivement
turbulence <.15, .15, .15> // vecteur de perturbation
omega 0.35 // taux d'omega pour la turbulence
lambda 1.25 // taux de lambda pour la turbulence
octaves 4 // pointeur pour la turbulence
}
//------------------------------LUMIERE INTERIEURE-------------------------------------------------
light_source
{
0*x // position initiale de la lumiΦre
color red 1.0 green .0 blue .0 // lumiΦre Rouge
translate <0, .40, 0> // translation du point lumineux en hauteur dans l'intΘrieur de l'Igloo
}
//------------------------------ZONE LUMINEUSE STANDARD--------------------------------------------
light_source
{ // debut de la source lumineuse
0*x // position initiale de la lumiΦre
color <.1, .1, .6> // couleur de la lumiΦre bleu roi
area_light
<8, 0, 0> <0, 0, 8> // zone couverte par la lumiere (x * z)
4, 4 // nombre total de lumiers dans la zone (4x*4z = 16)
adaptive 0 // 0,1,2,3...
jitter // ajoute un effet tamise aleatoire
translate <40, 50, 40> // <x y z> translation de la zone de lumiΦre depuis son point d'origine
} // fin de la source lumineuse
//--------------------------------------BANQUISE---------------------------------------------------
plane // Definition d'un plan infini
{
y, // <X Y Z> normale de la surface,ici le vecteur Y
0.0 // distance entre l'origine et la surface normale
hollow on // autorise un pigment
pigment // texture simulant la neige boueuse
{
agate // motif de type agate
agate_turb 0.3 // turbulence [1.0]
}
}
//----------------------------L'OBJET "IGLOO"------------------------------------------------------
//------- Objet BolΘen "Brut" qui sera usinΘ
#declare Brut = union { // OpΘration AND
sphere // insertion d'une sphere
{
<0, 0, 0> // centre <X Y Z>
1.1 // rayon
}
cylinder // insertion d'un cylindre
{
0*x, 1.0*x, 0.8 // depart, arrivee, rayon
}
cylinder // insertion d'un deuxieme cylindre
{
1.0*x, 1.3*x, 0.9 // depart, arrivee, rayon
}
} // fin de l'object Brut
//------- Objet BolΘen "Outil" qui servira d'outil
#declare Outil = union {
box // Insertion d'un parallΘlΘpipΦde
{
<-1.4, -1.4, -1.4> // premier sommet <X1 Y1 Z1>
< 1.4, 0, 1.4> // sommet opposΘ <X2 Y2 Z2>
}
sphere // insertion d'une sphΦre
{
<0, 0, 0> // centre <X Y Z>
1 // rayon
}
cylinder // insertion d'un cylindre
{
0*x, 1.4*x, 0.7 // dΘpart, arrivΘe, rayon
}
} // Fin de l'objet "Outil"
//------- OpΘration "Brut" NOT "Outil" = "Igloo"
#declare Igloo = difference
{
object { Brut}
object { Outil}
}
//--------------------INSERTION DE L'OBJET "IGLOO" DANS LA SCENE---------------------------------
object { Igloo //insertion de l'objet portant le label:"Igloo"
pigment // texture de l'Igloo
{
brick color Gray, color White // briques blanches avec joints gris
brick_size <0.3,0.3,0.3> // taille des blocs
mortar 0.03 // epaisseur des joints
}
} // fin de l'insertion de l'Igloo
//------------------CREATION DU SAPIN--------------------------------------------------------------
//
#declare sapin = union { //dΘclartion d'une opΘration "AND" dont le rΘsultat se nome "sapin"
cylinder // tronc
{
0*y, 0.5*y, .05
pigment {
color Maroon //couleur marron
}
}
cone // c⌠ne de base
{
0.7*y, 0.0, // Disque au sommet et rayon
0.5*y, .25 // Disque a la base et rayon
pigment {
color Green // couleur verte
}
}
cone // c⌠ne du milieu
{
.95*y, 0.0,
0.65*y, .20
pigment {
color Green
}
}
cone // c⌠ne du sommet
{
1.1*y, 0.0,
0.9*y, .08
pigment {
color Green
}
}
} // Fin de la definition du sapin
//--------------------------INSERTION DU SAPIN DANS LA SCENE---------------------------------------
object { sapin
translate <1., .0, -1.6> // <dX dY dZ> translation du sapin
} // fin de l'insertion du sapin
//---------------------------Ouf! c'est tout pour ce mois-ci---------------------------------------