#!/bin/csh

#######################################################################################################################################
#                                                                                                                                     #
#         G E N E R A T I O N   D ' U N E   P A I R E   S T E R E O S C O P I Q U E   P O U R   U N   C H A M P   D O N N E  :        #
#                                                                                                                                     #
#                                                                                                                                     #
#         Utilisation :                                                                                                               #
#                                                                                                                                     #
#                   $xci/stereo_pair$Z  <nom_champ> <nom_de_la_paire> [diviseur=<diviseur>]                                           #
#                                                                                                                                     #
#                                                                                                                                     #
#         Nota important :                                                                                                            #
#                                                                                                                                     #
#                    Si le resultat de cette operation est                                                                            #
#                  destine a generer un couple de montagnes                                                                           #
#                  stereoscopiques via la fonction 'Imontagnes(...)'                                                                  #
#                  de '$xiii/montagnes$FON', le risque est grand que                                                                  #
#                  les ombres soient incoherentes. En effet, le                                                                       #
#                  calcul est effectue en laissant fixe l'observateur                                                                 #
#                  et la source lumineuse, et en faisant tourner le                                                                   #
#                  champ. La bonne solution serait de ne faire tourner                                                                #
#                  que l'observateur, ce qui est difficile, vu le                                                                     #
#                  principe de la fonction 'Imontagnes(...)'. Un tel                                                                  #
#                  exemple d'incorehence est donne par les couples                                                                    #
#                  ('$xiirv/DEPT.15$DROITE$M', '$xiirv/DEPT.15$GAUCHE$M') et                                                          #
#                  ('$xiirv/DEPT.25$DROITE$M', '$xiirv/DEPT.25$GAUCHE$M').                                                            #
#                                                                                                                                     #
#                    Provisoirement, on pourra ne pas utiliser la generation                                                          #
#                  de l'ombre (voir 'v $xci/montagne.71$Z'...). Mais alors, on                                                        #
#                  perd d'une part le "depth-cueing" et d'autre part la texture...                                                    #
#                                                                                                                                     #
#                    Une autre solution consiste a conserver la generation de                                                         #
#                  l'ombre et a exploiter ce qui est decrit dans le commentaire                                                       #
#                  relatif a '$lumiere' dans '$xci/montagne.71$Z'. On utilisera                                                       #
#                  ainsi :                                                                                                            #
#                                                                                                                                     #
#                                       $xci/montagne.71$Z  <surface> (...) <imageR> "Ty=... sx=... sy=..."                           #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xci/stereo_pair$Z' :                                                                                            #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, AAAAMMJJhhmmss).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

set                 champ=$1
set                 paire=$2
set                 diviseur=$3

set                 Angle=6.28318530
set                 Diviseur=300.0

set                 angleD=`$xcg/scale$X nombre=$Angle multiplicateur=-1.0 diviseur=$Diviseur $diviseur`
set                 angleG=`$xcg/scale$X nombre=$Angle multiplicateur=1.0  diviseur=$Diviseur $diviseur`
                                        # Definition des angles de rotation.                                                          #
set                 translation_X="txA=0.5 txRA=0.5 txRR=0"
set                 translation_Y="tyA=0.5 tyRA=0.5 tyRR=0"
                                        # Definition des translations horizontale et verticale.                                       #

$xci/rotate$X       A=$champ R=$paire$DROITE angle=$angleD interpoler=VRAI $translation_X $translation_Y $formatI
                                        # Generation de l'image 'DROITE' de la paire stereoscopique.                                  #
$xci/rotate$X       A=$champ R=$paire$GAUCHE angle=$angleG interpoler=VRAI $translation_X $translation_Y $formatI
                                        # Generation de l'image 'GAUCHE' de la paire stereoscopique.                                  #



Copyright © Jean-François Colonna, 2019-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2019-2021.