begin process at 2010 02 10 12:03:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

Graphique

 > 

Effets images


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Effets images

mardi 21 mars 2006 à 16:48:00 | Effets images

Matt 261

Membre Club
Bonjour à tous !
Je suis en train de finir mon écran de veille visible ICI  et je voulais y ajouter des effets sur les images par exemple apprition/disparition en fondu ou avec des lignes un petit truc "à la PowerPoint" si vous voyez ce que je veux dire. Malgré mes recherches sur Internet je n'est rien trouvé mais si vous avez des bouts de code ou une solution je vous en serais très reconnaissant...

@+ et merci à ceux qui me répondrons

 Matt



La paresse est la mère du génie...
mercredi 22 mars 2006 à 00:11:59 | Re : Effets images

f0xi

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !


si tu travail en GDI et pas en OpenGL ou DirectX, il faudrat travailler la plupart du temps sur les pixels grace a ScanLine (TBitmap) pour faire des effets.

exemple de fondus (Fade out et Fade in) :

uses math;

type
  TRGBRec = record
     B,G,R : byte;
  end;
  TRGBRecArray = array[0..32767] of TRGBRec;
  pRGBRecArray = ^TRGBRecArray;

var
  BMPS      : TBitmap;
  PassCount,
  PassMax   : integer;
  Effect    : integer = 0;

procedure TForm1.FormCreate(Sender: TObject);
begin
  BMPS := TBitmap.Create;
  BMPS.Assign(image1.Picture.Bitmap);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  BMPS.Free;
end;

procedure Fade5(const Src : TBitmap; Dest : TBitmap; const Pass : integer);
var
  ScrLines,{Src}
  BufLines {Buf} : PRGBRecArray;
  X,Y            : integer;
  Buf            : TBitmap;
begin
  Buf             := TBitmap.Create;
  Buf.PixelFormat := pf24bit;
  Buf.Width       := Src.Width;
  Buf.Height      := Src.Height;
  for Y := 0 to Src.Height-1 do begin
      ScrLines := Src.ScanLine[Y];
      BufLines := Buf.ScanLine[Y];
      for X := 0 to Src.Width-1 do begin
          BufLines[X] := ScrLines[X];
          with BufLines[X] do begin
               R := max(R-(5*Pass),0);
               G := max(G-(5*Pass),0);
               B := max(B-(5*Pass),0);
          end;
      end;
  end;
  Dest.Assign(Buf);
  Buf.free;
end;

procedure TForm1.Button1Click(Sender: TObject);
{Fade out}
begin
  PassCount      := 0;
  PassMax        := 52;
  Effect         := 0;
  Timer1.Enabled := true;
  Button1.Enabled := false;
  Button2.Enabled := false;
end;

procedure TForm1.Button2Click(Sender: TObject);
{Fade in}
begin
  PassCount      := 52;
  PassMax        := 0;
  Effect         := 1;
  Timer1.Enabled := true;
  Button1.Enabled := false;
  Button2.Enabled := false;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Case Effect of
   {Fade out}
   0 : begin Fade5(BMPS,image1.Picture.Bitmap,PassCount); inc(PassCount); end;
   {Fade in}
   1 : begin Fade5(BMPS,image1.Picture.Bitmap,PassCount); dec(PassCount); end;
  end;

  if PassCount = PassMax then begin
     Button1.Enabled := true;
     Button2.Enabled := true;
     Timer1.Enabled  := false;
  end;
end;



mercredi 22 mars 2006 à 12:51:29 | Re : Effets images

Matt 261

Membre Club
Merci beaucoup f0xi.  Oui j'ia voulu traivailler en OpenGl mais je ne peux pas l'installer ond cvoila mais encore merci beaucoup.

Matt



La paresse est la mère du génie...
lundi 27 mars 2006 à 17:48:06 | Re : Effets images

Matt 261

Membre Club
Ca marche super...
Question suivante : quelqu'un saurait-il comment faire pour "ouvrir" et "fermer" l'image de haut en bas ou dans n'importe quel sens?

Merci d'avance

Matt



La paresse est la mère du génie...
jeudi 13 avril 2006 à 17:01:33 | Re : Effets images

Matt 261

Membre Club
Bon apparement personne ne sait mais c'est pas grave, tu m'avances quand-même beaucoup f0xi, merci.
samedi 12 janvier 2008 à 17:56:27 | Re : Effets images,meilleure solution

salim07360

slt ....e developpe des applications en delphi 7 , j utilise l'opengl pour delphi , je le trouve plus facil et plus eeficace pour la programmation des objets 3d ou graphique , je te conseille d'essayer ce truc , et je suis sur que tu va pas regretter .....et si tu as du nouveau au domaine , stp , mait moi au courant , pke je ss klk1 interessé .......voilà , bon courage , et merçi .......
dimanche 13 janvier 2008 à 14:19:23 | Re : Effets images

Matt 261

Membre Club
Salut,

j'ai essayé OpenGL mais je suis un peu faché avec lui ! Pour arriver à faire tourner quelque chose de correct, faut vraiment prendre beaucoup de temps !

@+
 Matt


La paresse est la mère du génie...
http://www.mx-dev.net


Cette discussion est classée dans : images, effets


Répondre à ce message

Sujets en rapport avec ce message

Aquerir les images en provenance de ma carte video [ par gooa ] ****************************************************************************************************************************************************** au secours ... [ par Nadou ] Mon plm se résume ainsi : j'ai créer une base de données en Access, qui contient des images de type objet OLE (bmp), ensuite j'ai fais une interface Icone dans une TTooBar [ par lguez ] Dans le TTOOLBAR on peut afficher une image differente si la souris passe sur une icone de la ToolBar ou non en renseignant les champs Images et HotIm ImageList ... Help ! ;-) [ par HEproduct ] Bonjour, je voudrai stocker des images de trés petites tailles dans une image lit et récupérer les noms dans une list box. Après quoi l'utilisateur en Envoie d'images avec TServerSocket [ par neodelphi ] Bonjour à tous...Voila mon problème...Je voulais envoyer une image via une connexion avec un TServerSocket et un TClientSocket...Je ne sais po comment Insertion d'images dans un RichEdit [ par Nebula ] salut à tous !je programme un client pour un chat (voir mon site pour plus de détails), et j'aurais besoin d'étendre les fonctionnalités du TRichEdit Problème avec les images et leur fond [ par fab30 ] Salut a tous, voilà, j'ai un probleme avec le Timage de Delphi : Sur ma forme, il y a un Timage avec une image de fond en bmp. Dessus, je rajoute un T Comparer deux images [ par jperret2 ] Bonjour,Je cherche a détecter les changements sur l'écran de l'ordinateur ou tourne mon soft. Mon idée est de quadriller l'écran carré par carré (diso Images et Bouton avec WebSnap [ par Altair ] Comment afficher une image à la place des boutons generes automatiquement par WebSnap??Il y abien un champ ImageProducer mais je ne sais pas avec quoi Images en plein ecran [ par ak47 ] Salut à tous,J'aimerai pouvoir afficher une image en plein ecran (qu'on ne voit ke l'image, mais pas le tour de la form ni rien [un peu comme kan on j


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales