Voir les messages sans réponses | Voir les sujets actifs Nous sommes le 22 Sep 2018, 09:11



Répondre au sujet  [ 4 messages ] 
Besoin d'aide en POV-Ray!!! 
Auteur Message
P'tit timide
P'tit timide

Inscription: 08 Fév 2010, 15:42
Messages: 4
Répondre en citant le message
Message Besoin d'aide en POV-Ray!!!
Bonjour ! :D
Je poste sur ce forum car je suis en train de réaliser un projet en POV-Ray, et j'ai vraiment besoin d'aide !
Je voudrais réaliser des roues dentées avec ce langage. :!:
Je cherche des personnes calées en Pov-RAY qui pourraient m'aider !
Cordialement !


08 Fév 2010, 15:44
Profil
Administrateur
Administrateur
Avatar de l’utilisateur

Inscription: 28 Avr 2004, 08:23
Messages: 2103
Localisation: Toulouse
Répondre en citant le message
Message Re: Besoin d'aide en POV-Ray!!!
je suis désolé mais je n'ai pas touché Pov-ray depuis quelques années.... :-s Par curiosité, ton pb est au niveau de la "modélisation", ou de l'animation? Cela aidera les éventuels candidats à t'apporter un peu d'aide...

Amicalement,
Olivier


08 Fév 2010, 21:37
Profil ICQ YIM Site Internet
P'tit timide
P'tit timide

Inscription: 08 Fév 2010, 15:42
Messages: 4
Répondre en citant le message
Message Re: Besoin d'aide en POV-Ray!!!
Juste de la modélisation, j'essaie de faire des choses assez simples comme des translations, des rotations, mais je n'arrive pas à les maîtriser, j'ai vraiment besoin d'aide ...


12 Fév 2010, 12:07
Profil
Chuchoteur
Chuchoteur

Inscription: 12 Fév 2010, 00:26
Messages: 23
Répondre en citant le message
Message Re: Besoin d'aide en POV-Ray!!!
Salut

J'ai passé au moins 8 heures pour créer ce code :shock:
Il fonctionne mais il y a deux bugs que je n'arrive pas à corriger.
Voici donc le code

Citation:
//-------------------------------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------------------------
// Fichier scène PoVRay 3.7 "engrenage.pov"
//
// auteur: Damien Monteillard, 19-Février-2010
// email: lastrodamo@gmail.com
//
// cd /home/damien/povray/test/engrenage/
// povray engrenage.pov +w1024 +h800 +A +FN +KI0 +KF1 +KFI1 +KFF49 +KC
// Rendu
// povray engrenage.pov +w1280 +h1024
// Convertir en mpg
// ffmpeg -f image2 -i engrenage%02d.png engrenage.mpg
// ffmpeg -f image2 -i engrenage%02d.png -s 800x600 -ar 44100 -aspect 4:3 -b 14000k -r 30 -acodec mp3 -ab 64 engrenage.mpg
// convert -delay 4 *.png engrenage.mpg
//-----------------------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------------------

#include "colors.inc"
#include "textures.inc"
#include "metals.inc"
#include "golds.inc"
#include "stones.inc"
#include "woods.inc"
#include "shapes.inc"
#include "shapes2.inc"
#include "shapesq.inc"
// #include "shapes_lo.inc"
#include "functions.inc"
#include "math.inc"
#include "transforms.inc"

// Textures Noire ----------------------------------------------------------------
#declare TextureNoire =
texture{pigment{color rgb<0,0,0>}
finish{diffuse 1 phong 1}}
// Textures Blanche -------------------------------------------------------------
#declare TextureBlanche =
texture{pigment{color rgb<1,1,1>}
finish{diffuse 1 phong 1}}
// Texture Bleue ---------------------------------------------------------------
#declare TextureBleue =
texture{pigment{color rgb<0.28,0.28,0.60>}
finish{diffuse 1 phong 1}}
// Texture Bleue 2 ---------------------------------------------------------------
#declare TextureBleue2 =
texture{
pigment{
// color Navy
// color NavyBlue
color MidnightBlue
}
finish{diffuse 1 phong 1}}
// Texture Grise ---------------------------------------------------------------
#declare TextureGrise =
texture{pigment{color rgb<1,1,1>}
finish{diffuse 1 phong 1}}
// Texture Rouge ---------------------------------------------------------------
#declare TextureRouge =
texture{pigment{color Red}
finish {diffuse 0.9 phong 1}}
// Texture Verte ---------------------------------------------------------------
#declare TextureVerte =
texture{pigment{color Green*0.5}
finish {diffuse 0.9 phong 1}}
// Texture Verte Clair ---------------------------------------------------------
#declare TextureVerte2 =
texture{pigment{color rgb<0.65,1,0>}
finish {diffuse 1 phong 1}}
// Texture Jaune ---------------------------------------------------------------
#declare TextureJaune =
texture{pigment{color rgb<1,1,0>}
finish {diffuse 1 phong 1}}
// Texture Jaune 2 ---------------------------------------------------------------
#declare TextureJaune2 =
texture{pigment{color rgb<0.87,0.78,0.32>}
finish {diffuse 1 phong 1}}
// Texture Violet ---------------------------------------------------------------
#declare TextureViolet =
texture{pigment{color rgb<0.33,0.18,0.58>}
finish {diffuse 1 phong 1}}
// Texture Violet 2 ---------------------------------------------------------------
#declare TextureViolet2 =
texture{pigment{
// crackle
// gradient <0,1,0> turbulence 1.0
bozo
scale 1.0 turbulence 0.75
color_map{
[0.30 color rgb<0.33,0.18,0.58>] // Violet
[0.60 color rgb<0.65,1.00,0.00>] // Vert
// [0.50 color rgb<0.33,0.33,0.69>] // Bleue
[0.60 color rgb<0.87,0.78,0.32>] // Jaune
}
scale 2.0
}
// normal { bumps 0.75 scale 0.02}
finish {diffuse 1 phong 0}}
// Texture Or ------------------------------------------------------------------
#declare TextureOr =
texture{pigment{color rgb<0.87,0.78,0.32>}
normal {
crackle 0.5
// gradient <0,1,0> turbulence 1.0
// bozo
scale 0.15}
finish {phong 1}}

// Texture Metal -----------------------------------------------------------------
#declare TextureMetal =
texture{Silver_Metal}
// Texture Cuivre -----------------------------------------------------------------
#declare TextureCuivre =
texture{Copper_Metal}
// Texture New Brass ---------------------------------------------------------------
#declare TextureNewBrass =
texture{New_Brass}
// Texture Chrome Metal -----------------------------------------------------------
#declare TextureChrome =
texture{Chrome_Metal}
// Texture Sapphire Agate ---------------------------------------------------------
#declare TextureSapphireAgate =
texture{Sapphire_Agate}

// Camera ---------------------------------------------------------------------------------------
camera
{
location <260,260,-260>
// location <0,0,-360>
look_at <0,-140,160>
// look_at <80,-35,0>
rotate <0,0,0>
}

// Source de lumière -----------------------------------------------------------------------------
light_source
{
<2000,2000,-2000>
rgb <1,1,1>
rotate <0,0,0>
}

// Plan (Sol) -----------------------------------------------------------------------------------
//plane {
// <0,1,0>
// 0
// rotate<0,0,0>
// translate<0,0,0>
// texture{TextureBlanche}
//}

// Plan (Mur 1) ----------------------------------------------------------------------------------
//plane {
// <0,0,1>
// 200
// rotate<0,0,0>
// translate<0,0,0>
// texture{TextureBlanche}
//}

#declare engrenage =
union{
// dent -------------------------------------------------------
#declare dent =

difference{
// Epaisseur de l'engrenage ------------------------------------
#declare pz1 =-8;
#declare pz2 = 8;
// Epaisseur de l'engrenage ------------------------------------
#declare pz1d =pz1-1;
#declare pz2d =pz2+1;
// Module ------------------------------------------------------
#declare m = 2.5;
// Pas primitif -----------------------------------------------
#declare p = pi*m;
// Angle de pression ------------------------------------------
#declare a = 20;
// Pas de base ------------------------------------------------
#declare pb = p*cos(a);
// Nombre de dents ---------------------------------------------
#declare Z = 35;
// Angle d'une dent
#declare ad = 360/Z;
// hauteur de dent --------------------------------------------
#declare ha = m;
#declare hf = 1.25*m;
#declare h = ha+hf;
// diamètre primitif -------------------------------------------
#declare d =m*Z;
// diamètre de tête --------------------------------------------
#declare da = d+2*m;
// diamètre de base --------------------------------------------
#declare df = d-2*m;

// développante de cercle ----------------------------------------------
#declare developpante =
difference{
#declare extrusiondeveloppante =
union{
#declare x1 =-d*sin(((pi/2)/9)*1);
#declare y1 = d*cos(((pi/2)/9)*1);
#declare z1 = 0;
#declare x2 =-d*sin(((pi/2)/9)*2);
#declare y2 = d*cos(((pi/2)/9)*2);
#declare z2 = 0;
#declare x3 =-d*sin(((pi/2)/9)*3);
#declare y3 = d*cos(((pi/2)/9)*3);
#declare z3 = 0;
#declare x4 =-d*sin(((pi/2)/9)*4);
#declare y4 = d*cos(((pi/2)/9)*4);
#declare z4 = 0;
#declare x5 =-d*sin(((pi/2)/9)*5);
#declare y5 = d*cos(((pi/2)/9)*5);
#declare z5 = 0;
#declare x6 =-d*sin(((pi/2)/9)*6);
#declare y6 = d*cos(((pi/2)/9)*6);
#declare z6 = 0;
#declare x7 =-d*sin(((pi/2)/9)*7);
#declare y7 = d*cos(((pi/2)/9)*7);
#declare z7 = 0;
#declare x8 =-d*sin(((pi/2)/9)*8);
#declare y8 = d*cos(((pi/2)/9)*8);
#declare z8 = 0;
#declare x9 =-d*sin(((pi/2)/9)*9);
#declare y9 = d*cos(((pi/2)/9)*9);
#declare z9 = 0;

#declare r1 = x1*cos(((pi/2)/9)*1);
#declare r2 = x2*cos(((pi/2)/9)*2);
#declare r3 = x3*cos(((pi/2)/9)*3);
#declare r4 = x4*cos(((pi/2)/9)*4);
#declare r5 = x5*cos(((pi/2)/9)*5);
#declare r6 = x6*cos(((pi/2)/9)*6);
#declare r7 = x7*cos(((pi/2)/9)*7);
#declare r8 = x8*cos(((pi/2)/9)*8);
#declare r9 = x9*cos(((pi/2)/9)*9);

// Extrusion développante -----------------------------------------------
cylinder{
<0,0,pz1>, <0,0,pz2>, r1*2
translate<x1,y1,z1>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r2*2
translate<x2,y2,z2>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r3*2
translate<x3,y3,z3>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r4*2
translate<x4,y4,z4>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r5*2
translate<x5,y5,z5>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r6*2
translate<x6,y6,z6>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r7*2
translate<x7,y7,z7>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r8*2
translate<x8,y8,z8>
}

cylinder{
<0,0,pz1>, <0,0,pz2>, r9*2
translate<x9,y9,z9>

}
} // fin de l'extrusion de la développante de cercle -------------------

object {
extrusiondeveloppante
}

// Découpe développante -----------------------------------------------
#declare decoupedeveloppante =
union{
#declare x1 = d*sin(((pi/2)/9)*1);
#declare y1 = d*cos(((pi/2)/9)*1);
#declare z1 = 0;
#declare x2 = d*sin(((pi/2)/9)*2);
#declare y2 = d*cos(((pi/2)/9)*2);
#declare z2 = 0;
#declare x3 = d*sin(((pi/2)/9)*3);
#declare y3 = d*cos(((pi/2)/9)*3);
#declare z3 = 0;
#declare x4 = d*sin(((pi/2)/9)*4);
#declare y4 = d*cos(((pi/2)/9)*4);
#declare z4 = 0;
#declare x5 = d*sin(((pi/2)/9)*5);
#declare y5 = d*cos(((pi/2)/9)*5);
#declare z5 = 0;
#declare x6 = d*sin(((pi/2)/9)*6);
#declare y6 = d*cos(((pi/2)/9)*6);
#declare z6 = 0;
#declare x7 = d*sin(((pi/2)/9)*7);
#declare y7 = d*cos(((pi/2)/9)*7);
#declare z7 = 0;
#declare x8 = d*sin(((pi/2)/9)*8);
#declare y8 = d*cos(((pi/2)/9)*8);
#declare z8 = 0;
#declare x9 = d*sin(((pi/2)/9)*9);
#declare y9 = d*cos(((pi/2)/9)*9);
#declare z9 = 0;

#declare r1 = x1*cos(((pi/2)/9)*1);
#declare r2 = x2*cos(((pi/2)/9)*2);
#declare r3 = x3*cos(((pi/2)/9)*3);
#declare r4 = x4*cos(((pi/2)/9)*4);
#declare r5 = x5*cos(((pi/2)/9)*5);
#declare r6 = x6*cos(((pi/2)/9)*6);
#declare r7 = x7*cos(((pi/2)/9)*7);
#declare r8 = x8*cos(((pi/2)/9)*8);
#declare r9 = x9*cos(((pi/2)/9)*9);

// Découpe développante -------------------------------------------------
cylinder{
<0,0,pz1d>, <0,0,pz2d>, r1*2
translate<x1,y1,z1>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r2*2
translate<x2,y2,z2>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r3*2
translate<x3,y3,z3>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r4*2
translate<x4,y4,z4>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r5*2
translate<x5,y5,z5>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r6*2
translate<x6,y6,z6>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r7*2
translate<x7,y7,z7>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r8*2
translate<x8,y8,z8>
}

cylinder{
<0,0,pz1d>, <0,0,pz2d>, r9*2
translate<x9,y9,z9>
}
} // fin de la découpe de la développante --------------------------------

object {
decoupedeveloppante
rotate<0,0,-((pi/2)*2.3)*ad>
inverse
}
}

object {
developpante
}

// cercle de tete --------------------------------------------------------
cylinder{
<0,0,pz1d>, <0,0,pz2d>, da
inverse
}
}

#declare s=0;
#while (s<Z)
object {
dent
rotate<0,0,s*ad>
}
#declare s=s+1;
#end

// cylindre de base -------------------------------------------------------
#declare cyldb =
difference{
cylinder{
<0,0,pz1>, <0,0,pz2>, df
}

// cylindre alésage --------------------------------------------------------
cylinder{
<0,0,pz1d>, <0,0,pz2d>, 15
}
}

object {
cyldb
}

}

object {
engrenage
texture{TextureMetal}
rotate<0,0,360*clock>
translate<0,0,0>
}

#declare engrenage2 =
union{
object {
engrenage
texture{TextureMetal}
rotate<0,0,-360*clock>
translate<0,0,0>
}
rotate<0,0,ad>
translate<d*2,0,0>
}

object {
engrenage2
}



Quelqu'un peut-il m'aider à corriger les bugs ? :evil:
1er bug :
J'ai créé une première développante puis une deuxième symétrique.
Pour cette deuxième je n'arrive pas à trouver la relation (l'angle cf. rotate<0,0,-((pi/2)*2.3)*ad>) qui permet de positionner la deuxième développante au bon endroit (J'y suis allé au hasard ... Je n'aime pas trop)
Petite précision la deuxième développante de cercle est une découpe.

2ème bug :
L'axe central du pignon est petit et quand je change la valeur. Rien ne bouge.
cf. <0,0,pz1d>, <0,0,pz2d>, 15 <- ??????

Si tu veux me contacter, voici mon site
http://3dminfographie.com/

_________________
Image


18 Fév 2010, 00:10
Profil
Afficher les messages postés depuis:  Trier par  
Répondre au sujet   [ 4 messages ] 

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Forum style by ST Software for PTF.
Traduction par: phpBB-fr.com