Click here to Skip to main content
15,881,687 members
Articles / Programming Languages / C#
Article

A C# water effect picture control

Rate me:
Please Sign up or sign in to vote.
4.83/5 (24 votes)
29 Aug 2002 191.8K   6.4K   79   38
A C# implementation of the popular water surface effect.

Cool eh ?

Intro

This control is a C# implementation of the well known water effect. There are already two implementations of this algorithm on CodeProject: Really cool visual FX - a C++ variant - and a OpenGL Interactive water effect.

The algorithm itself is well described here and here.

How to use it

The control itself is derived from System.Windows.Forms.Panel. So all you have to do is to place a standard PictureBox control onto your form and change the type of this control to WaterEffectControl.

Then adjust the image source property as follows:

C#
waterControl.ImageBitmap = ((System.Drawing.Bitmap)
               (resources.GetObject("waterControl.ImageBitmap")));

Now run the program, and move the mouse over the image while the left button is pressed. The effect is clearly better than the picture above shows.

Enjoy!

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
Germany Germany
If you are not living on the edge you are wasting space Wink | ;)

Comments and Discussions

 
Questionwatter effect Pin
Member 1053462321-Feb-14 17:52
Member 1053462321-Feb-14 17:52 
QuestionCan anyone give vb2008/2010 code for water effect Pin
Member 1043019228-Nov-13 7:12
Member 1043019228-Nov-13 7:12 
AnswerRe: Can anyone give vb2008/2010 code for water effect Pin
Aleksandar Nedeljkovic27-Jun-20 9:41
Aleksandar Nedeljkovic27-Jun-20 9:41 
QuestionCan anyone give vb2008/2010 code for water effect Pin
Member 1043019227-Nov-13 8:35
Member 1043019227-Nov-13 8:35 
GeneralMy vote of 5 Pin
David Goebet11-Oct-12 22:19
professionalDavid Goebet11-Oct-12 22:19 
GeneralMy vote of 5 Pin
atoi_powered8-Jul-12 2:21
atoi_powered8-Jul-12 2:21 
wow, just wow!
QuestionLicense Pin
DanieBeckett19-Sep-11 23:37
DanieBeckett19-Sep-11 23:37 
GeneralNeed Help Pin
James Noah Black17-Sep-11 20:09
James Noah Black17-Sep-11 20:09 
GeneralThis water effect control Pin
John Chaffins17-Dec-09 7:05
John Chaffins17-Dec-09 7:05 
GeneralF U C K I N G C O O L!!! Pin
iccb101316-Jul-09 20:10
iccb101316-Jul-09 20:10 
Generalhi i want to draw an drawing like a rug Pin
cuteAisha29-Aug-07 21:45
cuteAisha29-Aug-07 21:45 
Generalrunning slow Pin
stjds7-Jan-07 12:57
stjds7-Jan-07 12:57 
GeneralBetter result Pin
Saied Javadi8-Jul-06 3:58
Saied Javadi8-Jul-06 3:58 
QuestionWhy not a PictureBox? Pin
jeffreylreed19-May-04 5:49
jeffreylreed19-May-04 5:49 
AnswerRe: Why not a PictureBox? Pin
Christian Tratz19-May-04 6:51
Christian Tratz19-May-04 6:51 
GeneralFix for the bug mentioned below Pin
Matthew Watosn22-Apr-04 0:15
Matthew Watosn22-Apr-04 0:15 
GeneralRe: Fix for the bug mentioned below Pin
Member 140959925-Mar-19 0:13
Member 140959925-Mar-19 0:13 
GeneralBug Pin
RawSteel14-Apr-04 6:49
RawSteel14-Apr-04 6:49 
GeneralBug Pin
Sefai14-Aug-03 1:25
Sefai14-Aug-03 1:25 
GeneralRe: Bug Pin
HaflBit21-Mar-10 17:45
HaflBit21-Mar-10 17:45 
GeneralLove it! Pin
User 28013430-Jun-03 23:38
User 28013430-Jun-03 23:38 
GeneralNice Job but could not use it... Pin
jvalenz5-Mar-03 21:15
jvalenz5-Mar-03 21:15 
GeneralRe: Nice Job but could not use it... Pin
Christian Tratz5-Mar-03 23:26
Christian Tratz5-Mar-03 23:26 
GeneralRe: Nice Job but could not use it... Pin
jvalenz6-Mar-03 9:32
jvalenz6-Mar-03 9:32 
GeneralRe: Nice Job but could not use it... Pin
Christian Tratz6-Mar-03 21:46
Christian Tratz6-Mar-03 21:46 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.