#!/bin/csh ####################################################################################################################################### # # # D E S S I N D ' U N M E S S A G E : # # # # # # Utilisation : # # # # $xrd/message.01$vv$Z <ImageA> # # <Message> # # <ImageR> # # [<CoordonneeX> # # [<CoordonneeY> # # [<CoordonneeZ> # # [<Dimension> # # [<Rayon> # # [<CouleurR> # # [<CouleurV> # # [<CouleurB> # # [<Cadre> # # [<CadreR> # # [<CadreV> # # [<CadreB> # # [<CadreBordure> # # [<Zoom> # # [<Bibliotheque> # # [<Couronne> # # [<TranslationZ> # # ]]]]]]]]]]]]]]]]] # # # # # # Author of '$xrd/message.01$vv$Z' : # # # # Jean-Francois COLONNA (LACTAMME, 20240401142409). # # # ####################################################################################################################################### set ImageA=$1 set Message="$2" set ImageR=$3 set CoordonneeX=$4 set CoordonneeY=$5 set CoordonneeZ=$6 set Dimension=$7 set Rayon=$8 set CouleurR=$9 set CouleurV=$10 set CouleurB=$11 set Cadre=$12 set CadreR=$13 set CadreV=$14 set CadreB=$15 set CadreBordure=$16 set Zoom=$17 set Bibliotheque=$18 set Couronne=$19 set TranslationZ=$20 setArgum CoordonneeX 0 setArgum CoordonneeY 0 setArgum CoordonneeZ 0 setArgum Dimension 0.0030 setArgum Rayon 0.0040 setArgum CouleurR $BLANC setArgum CouleurV $BLANC setArgum CouleurB $BLANC setArgum Cadre $NEXIST setArgum CadreR $BLANC setArgum CadreV $BLANC setArgum CadreB $BLANC setArgum CadreBordure 6 setArgum Zoom 1 setArgum Bibliotheque 0 setArgum Couronne 1 setArgum TranslationZ 0.5 if ((-e $ImageA$ROUGE) && (-e $ImageA$VERTE) && (-e $ImageA$BLEUE)) then FilSTmpB ZBuFfEr $xci/init$X \ standard=FAUX \ valeur=-100 \ R=$ZBuFfEr \ $formatI set TrAnSlX=0 set TrAnSlY=0 set TrAnSlZ=+0.012 set CoordonneeX=`$xcg/ADD2.01$X a=$CoordonneeX b=$TrAnSlX` set CoordonneeY=`$xcg/ADD2.01$X a=$CoordonneeY b=$TrAnSlY` set CoordonneeZ=`$xcg/ADD2.01$X a=$CoordonneeZ b=$TrAnSlZ` alias InItIaL 'set G_Alphabet=$Bibliotheque ; \\ G_K $Dimension ; \\ G_Zoom $Zoom ; \\ G_Cursor1 $CoordonneeX $CoordonneeY $CoordonneeZ ; \\ G_Cursor3 $Rayon' # On notera que : # # # # source $xrd/graph.01$vv$Y # # # # ne peut etre inclu dans l'alias car alors les utilisations de 'G_K',... qui suivent # # dans l'alias : # # # # source $xrd/graph.01$vv$Y # # # # donnent : # # # # G_K: Command not found. # # (...) # # # source $xrd/graph.01$vv$Y InItIaL G_Cursor2 $CouleurR $CouleurV $CouleurB G_Quelc `G_Message "$Message"` G_Zoom $Zoom set AGeNeRe_C="$K_VIDE" set AGeNeRe_C="$AGeNeRe_C"" couronne=$Couronne" set AGeNeRe_C="$AGeNeRe_C"" fond=VRAI" set AGeNeRe_C="$AGeNeRe_C"" F=$ImageA" set AGeNeRe_C="$AGeNeRe_C"" Zfond=VRAI ZF=$ZBuFfEr" set AGeNeRe_C="$AGeNeRe_C"" BZ=$TranslationZ" if ($Cadre == $EXIST) then FilSTmpB FoNd execRVB $xci/init$X \ niveau=$NOIR \ R=$FoNd.RVB%s \ $formatI G_Genere $FoNd.RVB $AGeNeRe_C fond=FAUX Zfond=FAUX $xci/luminance.01$X \ A=$FoNd.RVB \ $formatI | \ $xci/seuil$X \ R=$FoNd$LUMIN \ $formatI FilSTmpB FExTrEmA $xci/extremaXY$X \ A=$FoNd$LUMIN \ editer_centrage=FAUX \ Prme=VRAI \ $formatI \ >> $FExTrEmA set MiNiMuM_X=`$CA $FExTrEmA | $GRE '^minimumX' | $SE -e "s/^.*= *//"` set MaXiMuM_X=`$CA $FExTrEmA | $GRE '^maximumX' | $SE -e "s/^.*= *//"` set MiNiMuM_Y=`$CA $FExTrEmA | $GRE '^minimumY' | $SE -e "s/^.*= *//"` set MaXiMuM_Y=`$CA $FExTrEmA | $GRE '^maximumY' | $SE -e "s/^.*= *//"` @ MiNiMuM_X = $MiNiMuM_X - $CadreBordure @ MaXiMuM_X = $MaXiMuM_X + $CadreBordure @ MiNiMuM_Y = $MiNiMuM_Y - $CadreBordure @ MaXiMuM_Y = $MaXiMuM_Y + $CadreBordure $xci/cadre$X \ A=$NOIR \ MinimumX=$MiNiMuM_X MinimumY=$MiNiMuM_Y \ MaximumX=$MaXiMuM_X MaximumY=$MaXiMuM_Y \ niveau=$BLANC \ epaisseur=1 \ R=$FoNd.cadre \ $formatI set MiNiMuM_X=`$xci/coordonnees$X normaliser=VRAI eX=VRAI X=$MiNiMuM_X eY=FAUX eZ=FAUX $formatI` set MaXiMuM_X=`$xci/coordonnees$X normaliser=VRAI eX=VRAI X=$MaXiMuM_X eY=FAUX eZ=FAUX $formatI` set MoYeNnE_X=`calcul (($MiNiMuM_X)+($MaXiMuM_X))/2` set MiNiMuM_Y=`$xci/coordonnees$X normaliser=VRAI eX=FAUX eY=VRAI Y=$MiNiMuM_Y eZ=FAUX $formatI` set MaXiMuM_Y=`$xci/coordonnees$X normaliser=VRAI eX=FAUX eY=VRAI Y=$MaXiMuM_Y eZ=FAUX $formatI` set MoYeNnE_Y=`calcul (($MiNiMuM_Y)+($MaXiMuM_Y))/2` set ArG_CoNtOuRs="$K_VIDE" set ArG_CoNtOuRs="$ArG_CoNtOuRs"" A=$FoNd.cadre" set ArG_CoNtOuRs="$ArG_CoNtOuRs"" x=$MoYeNnE_X" set ArG_CoNtOuRs="$ArG_CoNtOuRs"" y=$MoYeNnE_Y" $xci/contours.12$X \ $ArG_CoNtOuRs \ niveau=$CouleurR \ R=$FoNd.cadre$ROUGE \ $formatI $xci/contours.12$X \ $ArG_CoNtOuRs \ niveau=$CouleurV \ R=$FoNd.cadre$VERTE \ $formatI $xci/contours.12$X \ $ArG_CoNtOuRs \ niveau=$CouleurB \ R=$FoNd.cadre$BLEUE \ $formatI $xci/cache.31$Z \ $ImageA \ $FoNd.cadre \ $ImageR # L'image '$ImageR' contient alors l'image argument '$ImageA' avec le cadre rempli. # G_Delete source $xrd/graph.01$vv$Y InItIaL G_Cursor2 $CadreR $CadreV $CadreB G_Quelc `G_Message "$Message"` G_Zoom $Zoom G_Genere $ImageR $AGeNeRe_C fond=VRAI F=$ImageR Zfond=VRAI G_Delete FilSTmpE FExTrEmA FilSTmpE FoNd else G_Genere $ImageR $AGeNeRe_C G_Delete endif FilSTmpE ZBuFfEr else EROR "L'image '$ImageA' n'existe pas." endif