begin process at 2010 02 10 11:48:39
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > HALO SUR UNE IMAGE

HALO SUR UNE IMAGE


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Niveau :Débutant Date de création :13/08/2004 Date de mise à jour :13/08/2004 16:12:27 Vu :3 484

Auteur : BLG

Ecrire un message privé
Site perso
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Cette procédure permet de créer un halo de lumière de centre le point de coordonnées X et Y et de diamètre D sur le bitmap Bmp.

Exemple d'appel :
CreerHalo(25, 25, 1000, MonBitmap);

Ce code nécessite la déclaration préalable des types suivants :
  TRGBArray = ARRAY[0..0] OF TRGBTriple;
  pRGBArray = ^TRGBArray;

Source

  • procedure CreerHalo(X, Y, D : Integer; Bmp : TBitmap);
  • var
  • I, J, adding : Integer;
  • P : pRGBArray;
  • begin
  • D := D div 2;
  • for j := max(0, Y-D) to min(Y+D, bmp.Height-1) do begin
  • P := bmp.ScanLine[j];
  • for i := max(0, X-D) to min(X+D, bmp.Width-1) do begin
  • adding := 255 - min(trunc(255*(sqrt(sqr(i-X)+sqr(j-Y))/D)),255);
  • P[i].rgbtRed := min(255, P[i].rgbtRed + adding);
  • P[i].rgbtGreen := min(255, P[i].rgbtGreen + adding);
  • P[i].rgbtBlue := min(255, P[i].rgbtBlue + adding);
  • end;
  • end;
  • end;
procedure CreerHalo(X, Y, D : Integer; Bmp : TBitmap);
var
  I, J, adding : Integer;
  P : pRGBArray;
begin
  D := D div 2;
  for j := max(0, Y-D) to min(Y+D, bmp.Height-1) do begin
    P := bmp.ScanLine[j];
    for i := max(0, X-D) to min(X+D, bmp.Width-1) do begin
      adding := 255 - min(trunc(255*(sqrt(sqr(i-X)+sqr(j-Y))/D)),255);
      P[i].rgbtRed := min(255, P[i].rgbtRed + adding);
      P[i].rgbtGreen := min(255, P[i].rgbtGreen + adding);
      P[i].rgbtBlue := min(255, P[i].rgbtBlue + adding);
    end;
  end;
end;



 Historique

13 août 2004 16:12:27 :
Ajout d'une l'image illustrant la source.

 Sources du même auteur

Source avec Zip Source avec une capture TRANSFORMATIONS BIJECTIVES D'UNE IMAGE : BOULANGER ET PHOTOM...
Source avec Zip Source avec une capture COULEUR D'UN PIXEL
Source avec Zip Source avec une capture EFFET DE LAMPE TORCHE
Source avec Zip Source avec une capture ÉDITEUR HEXADÉCIMAL
CARRÉ MAGIQUE

 Sources de la même categorie

Source avec Zip Source avec une capture EFFET VITRE ET THUMBNAILS SOUS VISTA par Bacterius
Source avec Zip Source avec une capture ANAGLYPHEUR OU COMMENT VOIR EN RELIEF LES STÉRÉOSCOPES ANCES... par jfs59
Source avec Zip Source avec une capture DÉFORMER UNE IMAGE AUX DIMENSIONS D'UN QUADRANGLE QUELCONQUE... par FFCAST
Source avec Zip Source avec une capture THREAD ET BITMAP (DESSIN AU CRAYON) par barbichette
Source avec Zip Source avec une capture ÉCRAN DE VEILLE FEU D'ARTIFICE par barbichette

Commentaires et avis

Commentaire de 417 le 04/07/2008 22:18:37

C VRAIMEN ALLO

Commentaire de cavalier2400 le 15/08/2008 16:38:15

Bsr, j'ai ajouté dans le projet une image bmp, au nom de bmp, j'ai ajouté la librairie math, il ne trouve pas la propriété bmp.scanline.
Merci,  

Commentaire de BLG le 15/08/2008 17:32:12

Bonsoir,
Je ne sais pas d'où vient votre problème... La source a été conçue sous Delphi 6/7. Je crois qu'elle était encore tout à fait compatible Delphi 2005. Depuis j'ai arrêté de faire du Delphi, et peut-être que la propriété TBitmap.Scanline a disparu !? Vous pouvez toujours consulter la documentation de l'objet TBitmap. J'essayerai de regarder ça de mon côté quand j'aurai un peu de temps.

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

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,484 sec (4)

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