|
[ Home ] [ Introduction ] [ Installation ] [ Basic Lessons ] [ Just Enough C++ ] [ Advanced Lessons ] [ Reference Manual ] [ Packages ] [ Demos ]
is a set of C++ files for graphics and animation programming in a
Windows environment using the Visual Studio C++ compiler. GrafiX provides functions for drawing,
coloring, animating, responding to user inputs, and using sound. The core
GrafiX system is extensible by means of GrafiX packages.
With GrafiX You Can
- Draw points, lines, circles, rectangles, and about a dozen other basic
shapes.
- Modify drawings to produce shapes which are hollow, filled, block 3D, or
perspective 3D.
- Use text in a variety of fonts, sizes, rotations, and alignments.
- Change the color of nearly anything: the background, shape boundaries,
shape interiors, and text using a wealth of named colors or custom colors.
- Alter properties which affect such things as the style and width of lines
and how 3D effects are rendered.
- Ignore the Windows environment and concentrate on your own graphics.
- Work with an animation toolkit that hides the details of double buffering
and clock synchronization so that you can begin animating with a few lines of
code.
- Work within a system in which the literally hundreds of available
functions have a consistency of naming and parameters, making it easy to
"guess" new functions.
- Call ranges which allow animated objects to blend from one color to
another, move from one position to another, and change from one position or
shape to another. Any property can be made to change smoothly during an
animation.
- Use .wav sound files along with your graphics and animation.
- Detect and respond to user key-presses and mouse clicks.
- Quickly put a graphical face on that graphically-challenged console window
program you wrote. (Anyone for checkers rendered in asterisks on a
console window?)
- Access a large set of lessons and references for learning and using GrafiX
at http://www.carthage.edu/ewheeler/grafix
- Customize GrafiX. The source code is freely available to be modified,
extended, or studied.
What GrafiX is not
- GrafiX is not for anything but Windows. Sorry. C++ allows no
facilities for graphics other than the ability to call the facilities
provided by something else. I've called the Windows GDI (Graphics
Device Interface.)
- GrafiX has not been tested in compilers other than the Visual Studio C++
compiler. In theory GrafiX uses only standard C++ and the Windows API
and so should work on many Windows C++ compilers...
- GrafiX is not for super-high-speed performance. First, the GDI is
inherently slow compared to something like DirectX. Second, I've made
ease-of-use for the user the overwhelming priority. What good is a
graphics toolkit to a beginning programmer if it is too difficult to
use? But on the other hand, "slow" by today's standards is
blazing fast by the the standards of a few years ago. GrafiX is
sufficiently fast for many applications.
- GrafiX is not for sale. It is free. I don't want a donations. I wrote it for my students
and for anyone else who wants to have the fun of graphical programming.
If you enjoy it, then let me
know.
- GrafiX is not Flash(TM). It is not for importing bitmap images and
animating them. There are plenty of wonderful environments for doing
that with which I make no attempt to compete. GrafiX makes programming
graphics easy, but it is for programmers.
- GrafiX is not a GUI environment. There is no built-in palette of
button or list box widgets to call into your program. Again, if that
is what you want to do, there are plenty of environments for that.
- GrafiX is not spelled correctly. I know. But it taps into the
mystique of the letter X (Generation X, Direct X, X files, Xbox).
If you have any suggestions for improvements or find bugs, then please contact me: ewheeler@carthage.edu

|