Descriptions et exemples pour le POV-Ray raytracer par Friedrich A. Lohmueller
      Objets POV-Ray - Comment faire des objets pour POV-Ray
English English English
Italiano  Italiano
Deutsch 

Page d'Accueil
- POV-Ray Tutorial

  - Exemples POV-Ray
   Table des matières
  - Geometrie
    - Pion
    - Cube au grillage
    - Octogone
    - Œuf - Ovoïde
    - Ètoile
    - Lentille optique
    - Échiquier
    - Forme ballon monocol
    - Forme de Erlenmeyer
    - Deux cylindres fondus
    - Tétraèdre régulier
    - Triangle de Penrose
    - Yin & Yang
    - Poissons
    - 3 Poissons
    - Feuille de Trèfle
  - Architecture
  - Technique
                                               
 
3xfishblobs

Rosace en forme de 3 poissons

Objets:     "torus", "Segment_of_Torus"-Makro aus "shapes3.inc".
Méthodes: "#declare", "union{...}", "object{...}"
Cliquez ici pour un exemple!
La Construction détaillée:
Le calcul du rayon Ri des cercles intérieurs :
Il résulte du plan ci-contre :
distance MP = Ri (violet).
distance OP = racine (3)/3 * Ri (cyanbleu).
  ( tan(30°) = racine(3)/3 ).
distance OM (rouge) = distance OQ (jaune).
distance OQ = 2*racine(3)/3 * Ri (jaune).
Pour le rayon Ra du cercle exterieur
on a : Ra = QS + distance OQ.
donc : Ra = Ri + 2*racine(3)/3 * Ri,
où :
Ra = Ri*( 1 + 2*racine(3)/3 ).
À l'inverse avec le rayon extérieur donné
on a le rayon intérieur Ri de la façon suivante :
Ri = Ra/( 1+ 2*racine(3)/3 ).
Le calcul du rayon Ri des cercles intérieurs.
Le segment de tore en bas di couleur vert on doit tourner trois fois avec 120 degrés.
Dans ce qui suit s'applique pour le segment de tore mon macro "#macro Segment_of_Torus( R_major, R_minor, Segment_Angle)" de mon fichier inlude.
Pour cela on doit intégrer dans le texte le fichier correspondant avec #include "shapes3.inc" .
 
#declare R0 = 0.07;
// minor radius of all circles
#declare M  = <0,0,0>;
// center of the outer circle
// Threefold Fish
#declare Ra = 3.00-R0;
// radius of the circle 1
#declare Ri = Ra/(1+2/3*sqrt(3));
// radius of inner circles
#declare Mi = <0,-Ra+Ri,0>;
// center of the inner circle
#declare S_3_Angle =  210 ;
// segment angle  torus
// outer ring:
torus { Ra,  R0
     rotate<90,0,0>
     translate M
   } // end of torus  -----
// 3 torus segments:
#include "shapes_lo.inc"
#declare Segment =
object{
  Segment_of_Torus(Ri,R0,-S_3_Angle)
  rotate<-90, 0, 60>
  translate Mi
} // end of Torus_Segment(...)

object{ Segment rotate<0,0,  0>}
object{ Segment rotate<0,0,120>}
object{ Segment rotate<0,0,240>}
//------------------------- end
Cliquez ici pour un description de la scène
pour POV-Ray :
fichier ".txt" ou fichier ".pov"

top

© Friedrich A. Lohmüller, 2013
www.f-lohmueller.de