<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>libimage: combiner des images</title>
<link rel="stylesheet" type="text/css" href="libimage.css">
<meta name="generator" content="Vim et huile de phalange">
<meta name="keywords" content="libimage, Boudet, Targa, combiner, mixage">
</head>

<body>

<a name="top"><h1 align=center>libimage / combiner des images</h1></a>

<p align=center>
<tt>dernière mise à jour: 27 septembre 2018</tt><br>
</p>

<p class="menuhaut">
[<a href="libimage.html#primitives">primitives</a>]
[<a href="img-outils.html#combine">l'outil</a>]
[<a href="#liens">liens</a>]
</p>


<dl class="proto">

<dt>int Image_combine_lines(Image_Desc *s1, Image_Desc *s2, Image_Desc *d,
    int sy, int oy, int zak);
    <small><i>ou</i> Image_combine_columns(...</small>
<dd> XXX

<dt>int Image_combine_checker(Image_Desc *s1, Image_Desc *s2,r
 Image_Desc *d, int sx, int sy, int ox, int oy, int zak);
<dd> Ben, ça fait un damier...

<dt>int Image_combine_random_point(Image_Desc *s1, Image_Desc *s2,
    Image_Desc *d, int yo);
<dd>On prend au (presque) hasard un point sur une des deux images. Le paramètre
    <tt>yo</tt> peut varier entre 0 et 100.

<dt>int Image_combine_cercle_flou(Image_Desc *s1, Image_Desc *s2,
    Image_Desc *d, int yo);
<dd> Il manque des paramètres à cette fonction pour le positionnement
 du <i>cercle flou</i>, son diamètre et son intensité.

<dt>int Image_combine_diagonale(Image_Desc *s1, Image_Desc *s2,
Image_Desc *d, int yo, int p1, int p2);
<dd>Tiens, aucun des 3 paramètres n'est utilisé ? Vraiment étrange.

<dt>
int
Image_combine_minmax(Image_Desc *s1, Image_Desc *s2, Image_Desc *d, int flg);
<dd>Si flag est à 1, on utilise le maximum, sinon, on utilise le minimum, et
 cela pour chacune des composantes.

<dt>int Image_mix(Image_Desc *a, Image_Desc *b, Image_Desc *c, int k);
<dd>Mélange les composantes rgb de deux images. Le coefficient va de 0 à 10000,
 mais vous pouvez tenter d'autres valeurs.

<dt>int Image_mix_rgb(Image_Desc *a, Image_Desc *b, Image_Desc *c,
 int kr, kg, kb);
<dd> Pareil, sauf qu'il y a un coefficient par composante.

<dt>
int
Image_combine_4img_0(	Image_Desc *s1, Image_Desc *s2,
			Image_Desc *s3, Image_Desc *s4,
			Image_Desc *dst);
<dd>
 Je ne sais pas ce que ça va faire.
</dd>

<dt>
int Image_combine_Vdegrade(Image_Desc *s1, Image_Desc *s2, Image_Desc *dst, int sens);<br>
int Image_combine_Hdegrade(Image_Desc *s1, Image_Desc *s2, Image_Desc *dst, int sens);
<dd>Degradé horizontal ou vertical entre deux images.
 Le paramètre 'sens' détermine quelle image sera à droite (en haut) du
 résultat.

<dt>
int Image_combine_if_not_black(Image_Desc *s1, Image_Desc *s2, Image_Desc *d);
</dt>
<dd>
En gros, si un pixel de <i>s2</i> n'est pas complètement noir,
il est recopié dans <i>d</i>. Sinon, on prend le pixel dans <i>s1</i>.
Une version de cette fonction avec les seuils paramétrables est
en chantier. Vous pouvez aussi aller consulter la
<a href="img-alpha.html">page</a> sur le canal alpha.
</dd>

<dt>
int Image_combine_power(Image_Desc *s1, Image_Desc *s2, Image_Desc *d);
</dt><dd>
Vous pouvez essayer d'échanger les deux images sources...
</dd>

<dt>
int Image_combine_XOR(Image_Desc *s1, Image_Desc *s2, Image_Desc *d);
</dt><dd>
Vous pouvez aussi essayer d'échanger les deux images sources, mais ça
ne marche pas très bien. Vous venez de comprendre.
</dd>

</dl>

<p>
Naturellement, on arrive vite à inventer 42000 façons de combiner deux
images. Dans ce domaine précis, j'aimerais avoir plus d'imagination.
Hélas, ce n'est pas le cas...
</p>

<p align=right><a href="#top">haut de page</a></p>

<a name="liens"><h2>liens</h2></a>

<p class="footer">
Le <a href="http://weblog.mixart-myrys.org/">blog</a> de l'auteur.
Si votre demande est accompagnée<br>d'une caisse de bon vin,
je patche à donf.<br>
<a href="#top">haut de page</a></p>

</body>
</html>