|
|
What you're looking at are some of the Java applets/programs that I've written.
The Interactive OpenGL Tutorial is my first experience programming anything
extensive in Java. It requires GL4Java, which is available at
www.jausoft.com.
As a language, I like Java. I'm pretty good at learning new languages but I
remember Java was particularly easy to just pick up and go. It fits into the
object-oriented paradigm better than C++ and is very well documented too. As
a matter of fact, the way they've implemented Javadoc has allowed me to use
only two sources for learning Java:
|
|
Interactive OpenGL Tutorial
|
This applet was created by me under the supervision of
Dr. Li Yang during the fall of
2001. It started as a port of Nate
Robin's Projection Demo. Eventually it came to incorporate a whole slew
of transformation functions from the OpenGL library to show how the various
parameters affect the 3D view and how the order in which the functions are
called is also important. The appearance of the applet is a hybrid of Nate
Robin's demo and of another demo by Emran Jafree, Mike Melville, and Yuanlei
Zhang. Both of their demos were written in C however so I ended up rewriting
nearly all of their code in order to fit into the Java Object Oriented
paradigm. They definitely deserve credit here because this would have been
much more difficult without their influence (not that this demo was easy to
create by any means!).
| |
Projection Demo 1.6 Screenshot
|
The applet only takes one parameter: viewsize. The viewsize parameter reflects
the dimensions of the two view windows of the applet. I added this parameter
because I realized that as I made newer versions the size of these views would
need to change to make the appearance look nice. Below are links
to all of the versions, both compiled and source versions. I like hearing when
people use my software so feel free to
email me with comments/questions.
|
|
Widgie - A GUI Development Tool
|
By day during Spring Break 2002 I was programming Widgie, by night... well
that's a different story. Widgie was an experiment in rapid GUI development with Java for two
reaons: 1) it allows you to quickly develop frames and generate source
code using a very basic point-and-click interface and 2) I developed the entire
application, all 5,000+ lines of code, in a week (7 days). For what it does,
I'm pretty happy with how it turned out. Here's a screen shot:
| |
Widgie 1.0 Screenshot
|
It runs pretty fast but as you can see it's aimed primarily at GUI development
in MS Windows. I wrote it using AWT (at the time I was annoyed at how slow I
thought Swing was) so it doesn't look quite right in other operating systems
but it is cross-platform. Here's the source, zipped
Download: Widgie 1.0 Source Code
A couple of features I think are worth pointing out are the custom toolbar with
mouse-overs that you see on the left of the screenshot and a very modular
design. All droppable objects implement the Widget interface that I defined
to provide a pretty quick and easy way to add new controls to a frame. Also,
though far from perfect, the way I implemented the source code generation is
done by deriving from an abstract class called WidgieExporter. By creating
new exporter classes you can effectively design a single form and output source
in any number of languages using any number of libraries (the exporter I wrote
generates Java 1.1 code with AWT but I could easily write exporters to generate
MFC, GTK, Qt, Swing, etc.).
Anyway, check it out and let me know what you think. The zip includes a readme
file that mentions known bugs and what can be improved upon so you should read
that before contacting me with
comments/questions.
|
|