#!/bin/csh
#######################################################################################################################################
# #
# R E C A D R A G E D E S A N C I E N S " H A R D - C O P I E S " T E K T R O N I X : #
# #
# #
# Utilisation : #
# #
# $xci/RecadrageHardCopy.01$vv$Z <imageA> <imageR> [<Scroll> [<Mode> [<Seuil> [<MargeSecurite>]]]] #
# #
# #
# Author of '$xci/RecadrageHardCopy.01$vv$Z' : #
# #
# Jean-Francois COLONNA (LACTAMME, 20220206102402). #
# #
#######################################################################################################################################
set imageA=$1
set imageR=$2
set Scroll=$3
set Mode=$4
set Seuil=$5
set MargeSecurite=$6
setArgum Scroll $EXIST
setArgum Mode 2
setArgum Seuil 252
setArgum MargeSecurite 0.04
if (-e $imageA) then
S
FilSTmpB ImAgEt
set DiMeNsIoNs=`$CONVERT -verbose -depth $NBitsOctet -flip JPEG:$imageA RGBA:$ImAgEt.1$RVB |& $GRE "$imageA" | $HEA -1`
set DiMeNsIoNs=`echo "$DiMeNsIoNs" | $R "$K_TAB" "$K_BLANC"`
set DiMeNsIoNs=`echo "$DiMeNsIoNs" | $SE -e 's/^.* \([0-9][0-9]*\)x\([0-9][0-9]*\)[ +].*$/\1 \2/'`
# C'est 'v $xiMo/creation$Z le.format.a.encore.change' qui a fourni les quelques instructions #
# qui precedent... #
SwapB $ImAgEt.1$RVB
@ DiMeNsIoNsX = $DiMeNsIoNs[1] - 0
@ DiMeNsIoNsY = $DiMeNsIoNs[2] - 0
gFITn FIT5 $DiMeNsIoNsX $DiMeNsIoNsY
FIT5
unset DiMeNsIoNsX
unset DiMeNsIoNsY
unset DiMeNsIoNs
$xci/RVB_load$X \
A=$ImAgEt.1$RVB \
RVB=VRAI \
R=$ImAgEt.2 \
$formatI
if ($Scroll == $EXIST) then
$xci/luminance.01$X \
A=$ImAgEt.2 \
$formatI | \
$xci/seuil$X \
seuil=$Seuil \
R=$ImAgEt$LUMIN \
$formatI
set CeNtRe_ImAgE_X=0.5
set CeNtRe_ImAgE_Y=0.5
set CeNtRe_GrAvItE_X=`$xci/CentreGravite.01$X A=$ImAgEt$LUMIN Prme=VRAI signe="$K_VIDE" |& $GRE "^XG=" | $SE -e "s/^.*=//"`
set CeNtRe_GrAvItE_Y=`$xci/CentreGravite.01$X A=$ImAgEt$LUMIN Prme=VRAI signe="$K_VIDE" |& $GRE "^YG=" | $SE -e "s/^.*=//"`
set TrAnSlAtIoN_X=`$xcg/SOUS.01$X a=$CeNtRe_ImAgE_X b=$CeNtRe_GrAvItE_X signe="$K_VIDE"`
set TrAnSlAtIoN_X=`$xcg/MOIT.01$X n=$TrAnSlAtIoN_X signe="$K_VIDE"`
set TrAnSlAtIoN_X=`$xcg/ADD2.01$X a=$TrAnSlAtIoN_X b=$MargeSecurite signe="$K_VIDE"`
set TrAnSlAtIoN_X=`$xcg/NEGA.01$X n=$TrAnSlAtIoN_X signe="$K_VIDE"`
set TrAnSlAtIoN_Y=`$xcg/SOUS.01$X a=$CeNtRe_ImAgE_Y b=$CeNtRe_GrAvItE_Y signe="$K_VIDE"`
set TrAnSlAtIoN_Y=`$xcg/MOIT.01$X n=$TrAnSlAtIoN_Y signe="$K_VIDE"`
set TrAnSlAtIoN_Y=`$xcg/ADD2.01$X a=$TrAnSlAtIoN_Y b=$MargeSecurite signe="$K_VIDE"`
set TrAnSlAtIoN_Y=`$xcg/NEGA.01$X n=$TrAnSlAtIoN_Y signe="$K_VIDE"`
execRVB $xci/scroll$X \
A=$ImAgEt.2%s \
toreX=FAUX trX=$TrAnSlAtIoN_X \
toreY=FAUX trY=$TrAnSlAtIoN_Y \
R=$ImAgEt.3%s \
$formatI
set TrAnSlAtIoN_X=`$xcg/NEGA.01$X n=$TrAnSlAtIoN_X signe="$K_VIDE"`
set TrAnSlAtIoN_X=`$xcg/MOIT.01$X n=$TrAnSlAtIoN_X signe="$K_VIDE"`
set TrAnSlAtIoN_Y=`$xcg/NEGA.01$X n=$TrAnSlAtIoN_Y signe="$K_VIDE"`
set TrAnSlAtIoN_Y=`$xcg/MOIT.01$X n=$TrAnSlAtIoN_Y signe="$K_VIDE"`
execRVB $xci/scroll$X \
A=$ImAgEt.3%s \
toreX=FAUX trX=$TrAnSlAtIoN_X \
toreY=FAUX trY=$TrAnSlAtIoN_Y \
R=$ImAgEt.4%s \
$formatI
else
execRVB $xci/neutre$X \
A=$ImAgEt.2%s \
R=$ImAgEt.4%s \
$formatI
endif
execRVB $xci/format.01$X \
A=$ImAgEt.4%s \
$formatI \
mode=$Mode \
R=$imageR%s \
$formatR_Pdu
# On notera que : #
# #
# FIT5 formatI="Xmin=0 Xmax=2337 Ymin=0 Ymax=1653" #
# 2338/1654 = 1.4135 #
# #
# Pdu formatI="Xmin=0 Xmax=1559 Ymin=0 Ymax=1149" #
# 1560/1150 = 1.3565 #
# #
# Les deux formats 'FIT5' et 'Pdu' ont des proportions assez proches... #
FilSTmpE ImAgEt
else
EROR "L'image '$imageA' n'existe pas."
endif