PingPong v1.0.0 - 'Service-Oriented GUI' demo application

Poster Content
nk4um Moderator
Posts: 755
April 22, 2005 10:01Installation on NetKernel 2.0.4
Please ignore the installation instructions provided above if you have updated to the latest NetKernel 2.0.4 release (see http://1060.org/forum/topic/45/1 ) - the latest release has all the updated modules already shipped with it.

To install "Ping Pong" use the Module Install Wizard from the main index panel.  Select "Add new Module" and in the URL box type...

http://www.1060.org/upload/mod-pingpong-1.0.0.jar

Follow the steps (no need to register in a fulcrum since Ping Pong is it''s own fulrcum). Finally do a hot-restart and the GUI will fire up.

Uninstallation

After playing with the app you''ll probably want to uninstall it!  Use the module wizard again and either rollback your system or uninstall the module - do a hot-restart and its gone.
nk4um User
Posts: 4
April 7, 2005 15:18Ping-Pong
Bit of a giggle....
nk4um Moderator
Posts: 485
April 7, 2005 14:53Extra Info
here is the about information that ships with the demonstration:


About Ping Pong

PingPong is a simple application which extrapolates the simple Pong physics model to a multi-body physical simulation. The application is an example of a ''service-oriented GUI'' where the GUI is simply a rendering surface for an application composed of NetKernel hosted services.

NetKernel Specifics
The application uses a GUI transport through which GUI events are issued into the NetKernel URI service address space to invoke services for computing and dynamically modifying the physics model. The resultant computed model is returned through the transport to the Swing GUI where it is rendered.

The GUI runs at 50fps (processor dependent). Each frame is computed as the result of a number of NetKernel URI addressed service invocations. The application was conceived to demonstrate the high-performance and stability of the NetKernel microkernel - it also presents an example of a ''service-oriented GUI'' design pattern.

We hope this application demonstrates that one way to think of NetKernel is as a client ''web-browser'' with pluggable rendering surfaces...

Parameters
Try the preset examples or modify the model parameters and watch the instantaneous changes to the model.

BALL_COUNT
The number of particles in the system
DAMPING
The frictional force slowing particles down.
GRAVITY
A force attracting particals downard to the floor.
INITIAL_SPREAD
Number of pixels over which to randomly scatter the particles at start
INITIAL_VELOCITY
Maximum magnitude of randomized velocity at start.
INITIAL_VELOCITY_RADIANS
Angular direction of initial velocity (0=outward, 0.25 = clockwise, 0.5 = outward, 0.75=anti-clockwise)
INTERACTION_RANGE
Separation distance at which particle-particle interaction begins.
ATTRACTION
Strength of the particle-particle attraction field
REPULSION
Strength of the short-range particle-particle repulsion field
BALL_BALL_RESTITUTION
Energy absorbtion factor in short-range particle-particle repulsion field - when set high produces ''nuclear fission''

Non-linearities
The physics model does not protect against non-linear modes. If you push the model too far it can go chaotic - for example, sometimes the Wigner Solid (a solid consisting purely of strongly repulsive inter-particle forces) goes non-linear. In this case either change the model or do a reset.
nk4um Moderator
Posts: 755
April 5, 2005 15:56PingPong v1.0.0 - 'Service-Oriented GUI' demo application
We have released a new demo of a ''service-oriented GUI'' application - all we''ll say is that its fun and educational!



Download

Download the following two modules...

http://www.1060.org/upload/ext-layer1-1.2.2.jar
http://www.1060.org/upload/mod-pingpong-1.0.0.jar

Installation

1) Drop the two modules into [install]/modules directory

2) Edit [install]/etc/deployedModules.xml

a) Edit .../ext-layer1-1.2.1.jar to ext-layer1-1.2.2.jar
b) Add an entry <module>modules/mod-pingpong-1.0.0.jar</module>

3) Boot NetKernel and enjoy!

Layer1 v1.2.2 has a very minor tweak to the NKF API which we discovered was needed to make this app''s dependencies propogate correctly.

UnInstall

To uninstall the app simply remove the mod-pingpong-1.0.0.jar entry from the deployModules.xml file.


Let us know how you get on...