IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Blog de Gilles Vasseur - Pascal et compagnie

Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles

Noter ce billet
par , 05/04/2018 à 07h55 (932 Affichages)
Comme nous avons vu ce qu'est un masque et comment nous en servir, nous allons explorer les possibilités qu'offre cette technique. En effet, si nous avons envisagé le cas d'une croix, nous pouvons bien entendu partir d'une ellipse, d'un rectangle ou d'une forme encore plus complexe.

Une première série de transitions aura ainsi trait à l'expansion progressive d'un rectangle qui remplacera l'image d'origine par celle de destination ou découvrira cette dernière.

Les expansions de rectangles

La transition RightBottomExpand

La transition RightBottomExpand agrandira un rectangle en direction du point inférieur droit de l'image finale, recouvrant peur à peu l'image d'origine par celle de destination.

Le schéma associé à cette transition est donc le suivant :

Nom : rightbottomexpand.png
Affichages : 107
Taille : 6,3 Ko

Le code à insérer dans notre application modèle ne comporte qu'une ligne :

Code pascal : Sélectionner tout - Visualiser dans une fenêtre à part
LBGRAMask.FillRectAntialias(0, 0, imgResult.ClientWidth * fStep div 100, imgResult.ClientHeight * fStep div 100, BGRAWhite);

En effet, le schéma montre clairement que le masque est réduit à un rectangle toujours situé dans le coin supérieur gauche de l'image.

Un aperçu de son action est fourni ci-après :

Nom : brightbottomexpand.png
Affichages : 120
Taille : 279,0 Ko

Les autres expansions


Les transitions de la même famille ressemblent beaucoup à RightBottomExpand, aussi nous contenterons-nous de fournir le code associé à chacune et un instantané de la transition en action.

Bien sûr, vous aurez eu le courage et la sagesse de trouver le code par vous-même, au besoin avec l'aide d'un schéma approprié !

Le code associé à LeftBottomExpand sera :

Code pascal : Sélectionner tout - Visualiser dans une fenêtre à part
LBGRAMask.FillRectAntialias(imgResult.ClientWidth, 0, imgResult.ClientWidth * (100 - fStep) div 100, imgResult.ClientHeight * fStep div 100, BGRAWhite);

Nom : bleftbottomexpand.png
Affichages : 136
Taille : 290,3 Ko

Le code associé à RightTopExpand sera :

Code pascal : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
LBGRAMask.FillRectAntialias(0, imgResult.ClientHeight,
  imgResult.ClientWidth * fStep div 100,
  imgResult.ClientHeight * (100 - fStep) div 100, BGRAWhite);

Nom : brighttopexpand.png
Affichages : 122
Taille : 280,3 Ko

Enfin, le code associé à LeftTopExpand sera :

Code pascal : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
LBGRAMask.FillRectAntialias(imgResult.ClientWidth,
  imgResult.ClientHeight,imgResult.ClientWidth * (100 - fStep) div 100,
  imgResult.ClientHeight * (100 - fStep) div 100, BGRAWhite);

Nom : blefttopexpand.png
Affichages : 142
Taille : 279,6 Ko

Dans le prochain billet, nous examinerons les contractions qui sont des transitions inverses de celles qui viennent d'être vues...

Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Viadeo Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Twitter Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Google Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Facebook Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Digg Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Delicious Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog MySpace Envoyer le billet « Les transitions entre images sous Lazarus avec BGRABitmap (XII) - Les expansions de rectangles » dans le blog Yahoo

Commentaires