Effet des vagues sur une image(effet)

Soyez le premier à donner votre avis sur cette source.

Vue 13 405 fois - Téléchargée 677 fois

Description

Pour inserer des vagues à votre images...
c la serie des effets des images...
de 4every1

Source / Exemple :


' code developpé par moi (4every1)
' c comme mon pseudo
' c pour ts
' mais comment enregistrer l'image modifiée
' j'ai besoin d'aide
'                                **********************************************************
'                                *                   code 3: Effet vagues                 *
'                                **********************************************************

Private Sub Command1_Click()
cdc.Filter = "JPG|*.jpg|BMP|*.bmp|GIF|*.gif"
cdc.ShowOpen
Text1.Text = cdc.FileName
Picture1.Picture = LoadPicture(Text1.Text)
End Sub

Private Sub Command2_Click()
Dim i, j, color
For i = 0 To Picture1.ScaleWidth Step 1
For j = 0 To Picture1.ScaleHeight Step 1
color = Picture1.Point(i, j)
Picture2.PSet (i + 6 * Sin(j / 20), j), color
Next j
Next i
End Sub

Private Sub Form_Load()
Picture1.AutoSize = True
Picture2.AutoSize = True
Picture2.Width = Picture1.Width
Picture2.Height = Picture1.Height
Picture2.Top = Picture1.Top + Picture1.Height
Form1.Width = Picture1.Width + 120
Form1.Height = Picture1.Height + Picture2.Height + 850
Picture1.ScaleMode = 3
Picture2.ScaleMode = 3
End Sub

Private Sub Picture1_Resize()
Picture2.Width = Picture1.Width
Picture2.Height = Picture1.Height
Picture2.Top = Picture1.Top + Picture1.Height
Form1.Width = Picture1.Width + 120
Form1.Height = Picture1.Height + Picture2.Height + 850
End Sub

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
4every1, arretes le SMS ! ca commence a m'agacer.

Merci.

Renfield - Admin CS
Messages postés
10
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
2 septembre 2008

Pour que tu sois un bon programmeur, il faut que tu fais tous les pas personnellement je v faire tt les chose par moi mm...
Messages postés
276
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
22 décembre 2008

Pourquoi ne pas utiliser le filtre Wave de Microsoft ?
Je sais pas comment l'utiliser en VB mais je penses que cela doit être un composant COM
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
que c'est lent...

quelques toutes petites améliorations :

Private Declare Function GetPixel Lib "gdi32.dll" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
Private Declare Function SetPixelV Lib "gdi32.dll" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long

Private Sub Command2_Click()
Dim i As Long, j As Long, color As Long
Dim k As Long
Picture2.AutoRedraw = True
Picture2.Cls
For j = 0 To Picture1.ScaleHeight
k = 6 * Sin(j / 20)
For i = 0 To Picture1.ScaleWidth
color = GetPixel(Picture1.hdc, i, j)
SetPixelV Picture2.hdc, i + k, j, color
Next i
Next j
Picture2.AutoRedraw = False
End Sub

et pour l'enregistrement, c'est simplement :

Private Sub CcBtnSave_Click()
SavePicture Picture2.Image, "C:\a.jpg"
End Sub
Messages postés
10
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
2 septembre 2008

oui MADM@TT:
c accessible par le backcolor du picturebox:

Picture2.backcolor = "votre couleur"
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.