Comme je m'étonnais que personne ne l'aie demandé et que j'avais besoin d'en faire plusieurs séries,
voilà qui est fait.
Comme d'hab, la taille de la zone commune doit être à peu près de 10% de la largeur de la photo de base.
Code : Tout sélectionner
//Assemblage Fondu horizontal et vertical de 6 images Adaptation Tom : jptom.free.fr
F:64; //Taille de la zone commune
H1:Max(H(I1),H(I2),H(I3)); //Hauteur maximale des 3 images de 1ère ligne
S1:BStretch(I1,W(I1)*H1/H(I1),H1); //Adaptation hauteur image 1
S2:BStretch(I2,W(I2)*H1/H(I2),H1); //Adaptation hauteur image 2
S3:BStretch(I3,W(I3)*H1/H(I3),H1); //Adaptation hauteur image 3
H2:Max(H(I4),H(I5),H(I6)); //Hauteur maximale des 3 images de 2ème ligne
S4:BStretch(I4,W(I4)*H2/H(I4),H2); //Adaptation hauteur image 4
S5:BStretch(I5,W(I5)*H2/H(I5),H2); //Adaptation hauteur image 5
S6:BStretch(I6,W(I6)*H2/H(I6),H2); //Adaptation hauteur image 6
W:Max(W(S1)+W(S2)+W(S3),W(S4)+W(S5)+W(S6));//Largeur maximale des lignes sans fondu
H1:H1*W/(W(S1)+W(S2)+W(S3)); H2:H2*W/(W(S4)+W(S5)+W(S6)); //Adapt hauteurs lignes
S1:BStretch(S1,W(S1)*H1/H(S1),H1); //Adaptation Largeur Image 1
S2:BStretch(S2,W(S2)*H1/H(S2),H1); //Adaptation Largeur Image 2
S3:BStretch(S3,W(S3)*H1/H(S3),H1); //Adaptation Largeur Image 3
S4:BStretch(S4,W(S4)*H2/H(S4),H2); //Adaptation Largeur Image 4
S5:BStretch(S5,W(S5)*H2/H(S5),H2); //Adaptation Largeur Image 5
S6:BStretch(S6,W(S6)*H2/H(S6),H2); //Adaptation Largeur Image 6
H:H1+H2-F; //Hauteur de l'image totale
W:W-F*2; //Largeur de l'image totale
T1:Tile(S1,W,H); //Augmentation zone de travail Image 1
T2:Scroll(Tile(S2,W,H),W(S1)-F,0); // Augmentation zone de travail Image 2 et positionnement au bon endroit
T3:Scroll(Tile(S3,W,H),W(S1)+W(S2)-F*2,0); // Idem sur Image 3
T4:Scroll(Tile(S4,W,H),0,H1-F); // Idem sur Image 4
T5:Scroll(Tile(S5,W,H),W(S4)-F,H1-F); // Idem sur Image 5
T6:Scroll(Tile(S6,W,H),W(S4)+W(S5)-F*2,H1-F); // Idem sur Image 6
X:X(T1); //Initialisation Dégradé H 1ère ligne
TA:If(X<W(S1)-F,T1, //Image 1
If((X>W(S1))and(X<W(S1)+W(S2)-F*2),T2, //Image 2
If(X>W(S1)+W(S2)-F,T3, //Image 3
If((X>=W(S1)-F)and(X<=W(S1)),AlphaBlend(T1,T2,X-W(S1)+F,F), //1er Fondu
AlphaBlend(T2,T3,X-W(S1)-W(S2)+F*2,F))))); //2ème Fondu
X:X(T4); //Initialisation Dégradé H 2ème ligne
TB:If(X<W(S4)-F,T4, //Image 4
If((X>W(S4))and(X<W(S4)+W(S5)-F*2),T5, //Image 5
If(X>W(S4)+W(S5)-F,T6, //Image 6
If((X>=W(S4)-F)and(X<=W(S4)),AlphaBlend(T4,T5,X-W(S4)+F,F), //1er Fondu
AlphaBlend(T5,T6,X-W(S4)-W(S5)+F*2,F))))); //2ème Fondu
Y:Y(T1); //Initialisation Dégradé Vertical
If(Y<H1-F,TA, //Ligne 1
If((Y>H1)and(Y<H1+H2-F),TB, //Ligne 2
AlphaBlend(TA,TB,Y-H1+F,F))) //1er Fondu
Etant donné la longueur du code, si on relance le module il faut effacer la formule et la recharger ,