[REBOL] Re: ANN: Konka 1.0.5
From: jskibinski:emailaccount at: 19-Jun-2003 8:35
>It looks nice, but I am no 3D expert...
>What is Konka's primary audience? What kind of applications would you
>build with this?
I try to answer these questions in the manual, which is available
on line. Also: Graham Chiu converted the original 1.0.0 version to HTML
format and put it in his Vanilla. I hope he will find time to
do the same with 1.0.5 version. Thanks again Graham, it was very kind of you!
But here is another shot to answer your questions, which are indeed
very important from the business point of view.
I do not consider Konka to be a goal in itself, but rather the means
for producing a 3D output when required by other applications.
For this reason I stress the fact that Konka can be interfaced from
just about any programming language that knows how to speak TCP.
For the same reason I try to make Konka API look as language neutral
I see several ways of using Konka with an application XYZ written
in a language PQR, not necesserily Rebol:
1. Konka as a local output device running alongside such application.
Nowadays, the 8Mb of memory, as (minimally) consumed by Rebol/View + Konka, is not a
big deal. Application will do its magic, then construct
the 3D output (with or without Konka API) and send it to Konka
for display. The operator will view the output locally.
Why not to reuse Konka, rather than to write your own rendering engine,
in Smalltalk say? Or Haskell?
I have seen many packages that require TCL/TK for visual output.
Or Gnuplot, or something else. As a matter of fact, the problem
that prompted me to start designing Konka was a little engineering
problem which I tried to solve with OCTAVE (Matlab compatible
numerical analysis software), which interfaces to GNUPLOT.
I did not like quality of visualization at all!
2. Konka as a front end for Web Services, etc.
Konka transport layer is by definition asynchronous. Some services
can be very time consuming. Suppose that a customer wishes to
to find some answer regarding stress analysis of some problem,
which qualifies as standard and does not require human intervention
to solve it. In general, this is not very likely to happen, but
if the field of interest is narrow enough the automatic approach
seems possible. Suppose that the Finite Element Analysis of the problem takes at least
10 minutes. Client sends his request, Konka
forwards it to some FEA module (not necessary written in Rebol) and
responds with a ticket ID and estimated computation time. Client connects some time later
and gets his answer (or not), which might include a bunch of 3D pictures, visualizing
deformations, stresses, etc.
To be fair, I must add that some commercial FEA packages, such as ANSYS, have their own
graphics - they would not need Konka directly.
But format translation is still possible and bundling few services
together may still be easier with Konka in between.
Konka is able to compute integral properties of solids it produces,
therefore it will be quite helpful in rigid body dynamics application.
Here is a real example, from the times when I used to be Noise
and Vibration consultant.
Suppose that you wish to isolate a compressor, which vibrates as hell.
Mounting it on springs solves only half of the problem: you will protect
the environment from vibrations coming from the compressor to the
floor, but the compressor will still vibrate as hell, which is quite
dangerous. To reduce the vibrations you must add some mass to the machine, to make it
heavier. But the mass also should be properly distributed to increase moments of inertia
of the system and threfore
to reduce its rocking motions.
All what you have to do is to plug the physical properties
of the system made of compressor + inertia base (made of steel
and concrete) to your neat system of dynamic Newtonian equations,
Not so fast, you need to calculate the physical properties first.
Mass, center of gravity, moments of inertia.
Formulas are simple, but very mundane. You try the simplest design.
It does not work - back to drawing board, draw new picture of
inertia base, calculate inertias, solve the dynamics..
Over and over again..
Here comes Konka with its ability to do those computations for you.
I already took too much space ..
See some other examples in the manual.
>What do you use for remote communication?
Browser to konka-cgi-client: HTTP
Konka-cgi-client to Konka Server: TCP.
The requests are well filtered by a type checker installed on
the server. Nothing illegal (or what I hope) can get through.
Get an email address your friends will never forget... FREE!
Become [YOU--EmailAccount--com] at http://www.emailaccount.com/