Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1843 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C# - GDI] Rendre une suite de ligne transparente

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C# - GDI] Rendre une suite de ligne transparente

n°1306585
Slay
Posté le 15-02-2006 à 17:49:50  profilanswer
 

Bonjour,
 
Voila , j'affiche grace à DrawLine une courbe +- sinusoidale( suite de tres petites lignes).
Je voudrais bien qu'au fur et à mesure du temps, plus la ligne a été affichée il y a longtemps, plus elle devient transparente.
 
Pour l'instant j'ai fait ceci :

Code :
  1. for (int PChg = m_Indice, transparence = 255; transparence > 0; PChg--, transparence--)
  2.             {
  3.                 if (PChg == 0) PChg = (m_Limite/2)-1;
  4.                 Graph.DrawLine(new Pen(Color.FromArgb(transparence,0, 255, 0), 1), m_Points[PChg - 1], m_Points[PChg]);
  5.             }


En gros, à chaque tick ( toutes les 10ms ) je dois reafficher "petite ligne" par petite ligne pour pouvoir leur donner un effet de transparence de plus en plus fort.
Cela fonctionne très bien mais c'est très pompeux en ressource ! ( par rapport au DrawLines où j'affichais tout les points du tableau d'un coup )
Existe-t'il un solution moins "pompeuse" en ressource ??
 
Merci d'avance

mood
Publicité
Posté le 15-02-2006 à 17:49:50  profilanswer
 

n°1307053
x1800+
Posté le 16-02-2006 à 13:27:38  profilanswer
 

Je dis peut etre des conneries (mais bon, pas trop le temps de vérifier ti suite), mais y a pas moyen avec GDI de définir une suite de points (pour faire ta courbe), et ensuite de faire quelquechose du style "FillPath" avec une GradientBrush qui va de ta couleur jusqu'a transparent  [:pingouino]  
 
Ptetre que ce que je dis existe pas, mais comme je dis, pas trop le temps de vérif la  :o Donc vous avez le droit de me remettre a ma place les gens  :o

n°1332407
xfifi
Posté le 26-03-2006 à 12:13:39  profilanswer
 

bonjour,
 
Je pense que l'idée de x1800+ est la bonne.
Utilise un PathGradientBrush pour faire un dégradé sur ta courbe.
 
http://www.bobpowell.net/pgb.htm
http://www.c2i.fr/code.aspx?IDCode=507
http://www.c2i.fr/code.aspx?IDCode=508


Message édité par xfifi le 26-03-2006 à 12:17:36

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C# - GDI] Rendre une suite de ligne transparente

 

Sujets relatifs
[Ant] Rajouter une ligne en en-tete dans un fichierà quoi sert cette ligne ?
code vba pour inserer une ligne dans une macro[C++ débutant] Liste chaînée, suite des problemes :D
VBA - Macro supprimer ligneProblème de mise à la ligne
comment faire une page achat en ligne[HTML/CSS]Empiler horizontalement des éléments sans retour à la ligne
supprimer une ligne vide [résolu]Shell unix : caractère saut de ligne à supprimer
Plus de sujets relatifs à : [C# - GDI] Rendre une suite de ligne transparente


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR