POV-Ray : Newsgroups : povray.general : JPovRay ... a Java port Server Time
17 Oct 2026 06:04:27 EDT (-0400)
  JPovRay ... a Java port (Message 1 to 22 of 22)  
From: Case
Subject: JPovRay ... a Java port
Date: 12 Oct 1999 04:26:22
Message: <3802F14C.C599417A@sh.cvut.cz>
Hello everybody,

I (any my friends) want port PovRay source code to Java platform (pure
Java withi JINI).

This is primary goal, for building our modeler for PovRay.

but I've some general question:

- Are there any restrictions for original source code ? 
  (Of course, JPovRay will be free as PovRay)

- Can JPovRay be little differend from PovRay ?
  (Basic will cover PovRay, but extension like new features no    found
in PovRay,plugins,extendend modularity,etc.)

- Is there any web URL for PovRay programmers ? (where is bugfixes,
  new ideas,etc)

Thanks,
 Pavel


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 05:09:53
Message: <3802fae1@news.povray.org>
Case <p.k### [at] shcvutcz> wrote:
: I (any my friends) want port PovRay source code to Java platform (pure
: Java withi JINI).

  Why?
  For speed?

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Bob Hughes
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 05:29:14
Message: <3802ff6a@news.povray.org>
povray.programming and povray.binaries.programming here on the
news.povray.org server might be a good place to look at.

Bob

Case <p.k### [at] shcvutcz> wrote in message
news:3802F14C.C599417A@sh.cvut.cz...
> I (any my friends) want port PovRay source code to Java platform (pure
> Java withi JINI).
> - Is there any web URL for PovRay programmers ? (where is bugfixes,
>   new ideas,etc)


Post a reply to this message

From: Case
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 06:12:23
Message: <38030A1E.95F3B9CD@sh.cvut.cz>
Nieminen Juha wrote:
> 
> Case <p.k### [at] shcvutcz> wrote:
> : I (any my friends) want port PovRay source code to Java platform (pure
> : Java withi JINI).
> 
>   Why?
>   For speed?
> 

Java for easy portability, distributing aplications, etc.

With JPovRay, there will not be problem render on 100 normal machines in
Lan (via RMI and maybe in future IIOP)(not needing cluster or cluster
enabled operating system).

There's more benefits. In current state of PovRay this is almost
imposible.

I'm not promiser, i'd like try it.

With pure Java, render code may be slowed, so using JNI (core in C) may
help.


Post a reply to this message

From: Ron Parker
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 09:29:08
Message: <380337a4@news.povray.org>
On Tue, 12 Oct 1999 10:29:00 +0200, Case wrote:

>- Are there any restrictions for original source code ? 
>  (Of course, JPovRay will be free as PovRay)

I don't see any explicit restrictions on rewriting the whole thing in
another language, but if I were you I'd ask the Team coordinator for
explicit permission before embarking on such a huge task.  I would 
hazard a guess that while it's not explicitly prohibited, it isn't 
within the spirit of the license.  See disclaimer below.

>- Can JPovRay be little differend from PovRay ?
>  (Basic will cover PovRay, but extension like new features no    found
>in PovRay,plugins,extendend modularity,etc.)

From povlegal.doc:

  POV-Ray may not be linked into other software either at compile-
  time using an object code linker nor at run-time as a DLL,
  ActiveX, or other system. Such linkage can tend to blur the end-
  user's perception of which program provides which functions and
  thus qualifies as an attempt to obscure what is running.

  To allow POV-Ray to communicate with outside programs, the official
  versions of POV-Ray include several internal communication "hooks" 
  for it to call other tasks, often called an Application Programming 
  Interface, or API. For example: the generic part of POV-Ray provides
  operating system shell-out API commands. The Windows version has a 
  GUI-extension API and the ability to replace the text editor.
  Modification to these APIs or other officially supported
  communication mechanisms to increase functionality beyond that of 
  the official version IS EXPRESSLY PROHIBITED.

This would seem to limit what you can do with plugins or modularity.

>- Is there any web URL for PovRay programmers ? (where is bugfixes,
>  new ideas,etc)

There are some groups on this server you'll probably find interesting -
povray.programming and povray.unofficial.patches are two such.  You 
also might enjoy reading povray.bugreports.

Disclaimer: Yes, I'm a member of the POV-Team.  No, I'm not making an
official statement for them.  This post, with the exception of the 
direct quote from povlegal.doc, consists entirely of my own opinions.


Post a reply to this message

From: Greg M  Johnson
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 10:38:22
Message: <38034749.50A5F983@my-dejanews.com>
Cool.  It would be neat if it had animation support.

I've been pining for years for something that will allow me to have
continuously-running animations based on povray-like code.   Does something
like this already exist?  If so, please point me to it!

Case wrote:

> Hello everybody,
>
> I (any my friends) want port PovRay source code to Java platform (pure
> Java withi JINI).
>
> This is primary goal, for building our modeler for PovRay.
>
> but I've some general question:
>
> - Are there any restrictions for original source code ?
>   (Of course, JPovRay will be free as PovRay)
>
> - Can JPovRay be little differend from PovRay ?
>   (Basic will cover PovRay, but extension like new features no    found
> in PovRay,plugins,extendend modularity,etc.)
>
> - Is there any web URL for PovRay programmers ? (where is bugfixes,
>   new ideas,etc)
>
> Thanks,
>  Pavel


Post a reply to this message

From: Case
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 11:10:17
Message: <38034FF7.F8DE8AE7@sh.cvut.cz>
> From povlegal.doc:
> 
<cutted>
>   Modification to these APIs or other officially supported
>   communication mechanisms to increase functionality beyond that of
>   the official version IS EXPRESSLY PROHIBITED.
> 
> This would seem to limit what you can do with plugins or modularity.
> 

However, this is right. This make JPovRay useless. Port to Java with
same features (same API) can only make JPovRay platform independend (but
current JVMs is usable only for win32,solaris,linux...).

As I mentioned, our main goal is use distributed computing (one of main
benefits), translate source to components, open to everybody, so that
programmers can focused only for adding specific features without
looking at whole source code. Well, lot's work but much easier in Java.

So we start our own code, freely available, and use PovRay as good
reference.

> 
> Disclaimer: Yes, I'm a member of the POV-Team.  No, I'm not making an
> official statement for them.  This post, with the exception of the
> direct quote from povlegal.doc, consists entirely of my own opinions.

Very thanks for constructive hints,

have a GOOD day

Pavel


Post a reply to this message

From: Johannes Hubert
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 12:25:20
Message: <380360f0@news.povray.org>
Case <p.k### [at] shcvutcz> wrote in message
news:38030A1E.95F3B9CD@sh.cvut.cz...
>
>
> Nieminen Juha wrote:
> >
> > Case <p.k### [at] shcvutcz> wrote:
> > : I (any my friends) want port PovRay source code to Java platform (pure
> > : Java withi JINI).
> >
> >   Why?
> >   For speed?
> >
>
> Java for easy portability, distributing aplications, etc.
>
[snip]
>
> With pure Java, render code may be slowed, so using JNI (core in C) may
> help.

And out the door goes "easy portability, distributing aplications, etc." ...
:-)

Johannes.


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 13:39:12
Message: <38037240@news.povray.org>
Case <p.k### [at] shcvutcz> wrote:
: Java for easy portability, distributing aplications, etc.

  So tell me what are the current problems in portability etc.

: With JPovRay, there will not be problem render on 100 normal machines in
: Lan (via RMI and maybe in future IIOP)(not needing cluster or cluster
: enabled operating system).

  Well, if you can render the same image with the current version in one
computer in the same time as with the java version in all those computers,
what's the point?
  Ok, ok, Java is not 100 times as slow as C, but at least 10 times, and you
seldom have 10 computers to render your scene.

: With pure Java, render code may be slowed, so using JNI (core in C) may
: help.

  Someone responded to this already.

  The current core is already in C, so what's the point?
  If you wish to make a user interface or even a modeller for povray in java,
then go ahead. I will be glad to try it.
  But don't touch povray itself, thanks.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 13:51:57
Message: <3803753d@news.povray.org>
Case <p.k### [at] shcvutcz> wrote:
: Port to Java with
: same features (same API) can only make JPovRay platform independend

  But povray is already platform independent! (And surely it can be ported
to more platforms than java programs can)

: As I mentioned, our main goal is use distributed computing (one of main
: benefits)

  There are versions of povray that do distributed rendering, and I'm sure
that they are a lot faster than a java version would be.

: translate source to components, open to everybody, so that
: programmers can focused only for adding specific features without
: looking at whole source code.

  I think this is better done with C++.

  Besides, in C++ you have some handy things not available in Java, like
templates (and STL!), multiple inheritance, operator overloading, etc.
(Yes, I know that java coders can tell a hundred and one reasons why those
features are "not needed" or even "dangerous", but don't bother, I have heard
all of them but still find them really handy (specially templates).)

  Btw, a little problem (just for curiosity, not for flaming): Make a
generic swap-function in Java :)
  The C++ version would be something like:

template<typename T>
void Swap(T& p1, T& p2)
{ T tmp=p1; p1=p2; p2=tmp; }

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 13:52:50
Message: <38037572@news.povray.org>
Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
: Cool.  It would be neat if it had animation support.

  What kind of animation support you mean? Povray has animation support, FYI.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Greg M  Johnson
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 15:50:13
Message: <38039061.F11058@my-dejanews.com>
Pov makes wonderful TGA's. Pov can make a still image where things happen based
on a clock variable.

I want an animation to run based on my algorithm all day.

look at.
http://hmt.com/cwr/boids.html


Nieminen Juha wrote:

> Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
> : Cool.  It would be neat if it had animation support.
>
>   What kind of animation support you mean? Povray has animation support, FYI.
>
> --
> main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
> ):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Jon A  Cruz
Subject: Re: JPovRay ... a Java port
Date: 12 Oct 1999 23:33:42
Message: <3803FDD8.E015949B@geocities.com>
Nieminen Juha wrote:

>   Ok, ok, Java is not 100 times as slow as C, but at least 10 times, and you
> seldom have 10 computers to render your scene.

Actually, for full MPEG-2 decoding in pure Java, it's only about half as slow as
C. I guess the gap has been closing since you last checked  :-)

But still, I would recommend against doing raytracing with Java. And this is
coming from "Mr. Java". :-)

--
"My new computer's got the clocks, it rocks
But it was obsolete before I opened the box" - W.A.Y.


Post a reply to this message

From: Jon A  Cruz
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 00:15:20
Message: <38040799.8BD1F8CA@geocities.com>
Nieminen Juha wrote:

> (Yes, I know that java coders can tell a hundred and one reasons why those
> features are "not needed" or even "dangerous", but don't bother, I have heard
> all of them but still find them really handy (specially templates).)
>

If you do that is good. But it is true that they are dangerous, and easily
abused. Especially that multiple-inheritance one. Unfortunately, most
programmers are not quite as savvy as yourself, and we end up with some horrible
stuff to maintain. (BTW, this is all honest, and not said in a flaming tone)


>   Btw, a little problem (just for curiosity, not for flaming): Make a
> generic swap-function in Java :)

Here's the solution:
"Why?"

Here's another Java question: where are objects created? On the stack or on the
heap?
Answer: doesn't matter. Why should you care?

One should not do C++ things in a Java way, and vice versa. How about writing an
object-oriented debugging HTTP proxy program in under 400 lines of fully
commented code, or a high-performance video codec?

Java 3D modeler if you are using Java3D = good.
Java POV-Ray = bad.
Java POV-Ray distribution system = good. (shameless self-promotion)

--
"My new computer's got the clocks, it rocks
But it was obsolete before I opened the box" - W.A.Y.


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 04:15:44
Message: <38043fb0@news.povray.org>
Jon A. Cruz <jon### [at] geocitiescom> wrote:
:>   Btw, a little problem (just for curiosity, not for flaming): Make a
:> generic swap-function in Java :)

: Here's the solution:
: "Why?"

  This is the typical answer when there isn't a solution. Perhaps this specific
example is seldom really useful, but it was only an example. It demonstrates
that there are some things that can't be done. It shouldn't be very hard to
think about a similar problem which is more radical but can't be done for
the same reason.
  Why is it so hard to admit that there are things that you just can't do
with java and that you have to live with that if you are coding java?
  There are things that are very difficult, if not impossible to do with C++
and I don't have any problem in admitting it. I know that C++ has some very
bad things. I know that it would need some features which would make it more
safe. I admit it and I don't have any problem doing it.
  What I wonder why is it so hard for java coders to admit that java is not
perfect? Java seems to be a holy thing and if you criticize it you are
committing blasphemy.
  Java coders seem to be like windows users: When they can't do something then
they convince themselves that actually they don't really need it.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 05:00:58
Message: <38044a4a@news.povray.org>
Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
: Pov makes wonderful TGA's. Pov can make a still image where things happen based
: on a clock variable.

: I want an animation to run based on my algorithm all day.

  Sorry, I still don't understand what do you mean.

  Povray can make a series of images. You just have to tell it how many
images it has to create. You can convert those images to an animation format
with any converter you like.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Ken
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 06:14:19
Message: <38045B3E.18F124A2@pacbell.net>
Nieminen Juha wrote:

>   Java coders seem to be like windows users: When they can't do something then
> they convince themselves that actually they don't really need it.

And why is it that when people that favor using unix/linux have to decide
which OS to pick on for an example always choose windows as the platform
to pick on when they do :)

-- 
Ken Tyler -  1100+ Povray, Graphics, 3D Rendering, and Raytracing Links:
http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Ken
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 06:17:38
Message: <38045C05.A9BB9518@pacbell.net>
Nieminen Juha wrote:
> 
> Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
> : Pov makes wonderful TGA's. Pov can make a still image where things happen based
> : on a clock variable.
> 
> : I want an animation to run based on my algorithm all day.
> 
>   Sorry, I still don't understand what do you mean.
> 
>   Povray can make a series of images. You just have to tell it how many
> images it has to create. You can convert those images to an animation format
> with any converter you like.

I think what Greg needs is not so much a "movie" amination capability
as much as he needs a screen saver type program routine that runs his
sript continiously. At least that is the way I percieve it.

-- 
Ken Tyler -  1100+ Povray, Graphics, 3D Rendering, and Raytracing Links:
http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 07:18:04
Message: <38046a6c@news.povray.org>
Ken <tyl### [at] pacbellnet> wrote:
: And why is it that when people that favor using unix/linux have to decide
: which OS to pick on for an example always choose windows as the platform
: to pick on when they do :)

  Perhaps because there is no other OS which is so irritating? ;)

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Jon A  Cruz
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 10:59:08
Message: <38049E79.97943E5C@geocities.com>
Nieminen Juha wrote:

> Jon A. Cruz <jon### [at] geocitiescom> wrote:
> :>   Btw, a little problem (just for curiosity, not for flaming): Make a
> :> generic swap-function in Java :)
>
> : Here's the solution:
> : "Why?"
>
>   This is the typical answer when there isn't a solution. Perhaps this specific
> example is seldom really useful, but it was only an example. It demonstrates
> that there are some things that can't be done. It shouldn't be very hard to
> think about a similar problem which is more radical but can't be done for
> the same reason.
>   Why is it so hard to admit that there are things that you just can't do
> with java and that you have to live with that if you are coding java?
>   There are things that are very difficult, if not impossible to do with C++
> and I don't have any problem in admitting it. I know that C++ has some very
> bad things. I know that it would need some features which would make it more
> safe. I admit it and I don't have any problem doing it.
>   What I wonder why is it so hard for java coders to admit that java is not
> perfect? Java seems to be a holy thing and if you criticize it you are
> committing blasphemy.
>   Java coders seem to be like windows users: When they can't do something then
> they convince themselves that actually they don't really need it.
>

First of all the "why" solution was not the usual cop-out, but rather in this case
an actual answer that was supposed to make the reader step back a level and switch
from asking "how can I implement this" to "why should I be doing this" (one thing
that more programmers should be doing). But the main intent was to show that the
particular operation in question was not a good architectural choice for Java.

As far as the point that sometimes one should use Java and sometimes one should
use C++, I am in total agreement. I gave an example where Java was a good choice,
then an example where C++ was a good choice. Here's another one. Don't do a
MPEG-II decoder in pure Java. You'll probably only get 50% the performance of
C/C++.

I used to say "Don't try to write games like Quake in Java", but then someone did
an interface library so that you can use Java to write Quake II games. What is
even more interesting is that later versions exposed the Quake map & all it's
objects using the standard DOM architecture. That's the same why you'd examine and
manipulate an HTML document in IE, or most standard XML documents (even in C++).

But I will say again that I think a Java version of POV-Ray is just not the best
idea. If they are planing on doing a native C library to do the number intensive
part, then they would be better off shelling out to call POV-Ray itself. The
resulting Java program would stay cross-platform, and the performance would be
good.

BTW, this is a bit interesting: http://www.cs.brown.edu/people/jks/thesis.html

--
"My new computer's got the clocks, it rocks
But it was obsolete before I opened the box" - W.A.Y.


Post a reply to this message

From: Greg M  Johnson
Subject: Re: JPovRay ... a Java port
Date: 13 Oct 1999 18:50:21
Message: <38050C14.F1509AD4@my-dejanews.com>
Yes.      I want it to be like that boid link by Craig Reynolds.
 http://hmt.com/cwr/boids.html
If I want to see what happens at the 1000th or 2000th  frame of an animation, I have
to
either store 1000 TGA's on my hard drive or keep guessing what it will be like along
the way.   I want to be able to be doing something else (hence screensaver is a fairly
good analogy) and just watch as the scene develops.

If I were only making an animation of a man walking across the street, then YES it is
inconceivable to want anything more than TGA's.  But I made some things like a
self-assembling chain and I wanted to know if it were ever going to undo itself.
 http://members.xoom.com/_XOOM/gregjohn/animation.html#POV2
Figuring out a way to see "very long" exposures is such a headache to program that I
would rather just code it in Java (or in C++ perhaps) and let it crunch with
continuous
display.

On further thinking, maybe the answer is to have povray write to the same file over
and
over and over. (Would this hurt my hard drive? Could I have it simply store a file in
"RAM"??)

You see how the old-fashioned "crunch one TGA every five minutes and store it"
conflicts with my grand schemes for flocking brilliance!!!!


Ken wrote:

> Nieminen Juha wrote:
> >
> > Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
> > : Pov makes wonderful TGA's. Pov can make a still image where things happen based
> > : on a clock variable.
> >
> > : I want an animation to run based on my algorithm all day.
> >
> >   Sorry, I still don't understand what do you mean.
> >
> >   Povray can make a series of images. You just have to tell it how many
> > images it has to create. You can convert those images to an animation format
> > with any converter you like.
>
> I think what Greg needs is not so much a "movie" amination capability
> as much as he needs a screen saver type program routine that runs his
> sript continiously. At least that is the way I percieve it.
>
> --
> Ken Tyler -  1100+ Povray, Graphics, 3D Rendering, and Raytracing Links:
> http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Nieminen Juha
Subject: Re: JPovRay ... a Java port
Date: 14 Oct 1999 10:09:19
Message: <3805e40f@news.povray.org>
Greg M. Johnson <gre### [at] my-dejanewscom> wrote:
: If I want to see what happens at the 1000th or 2000th  frame of an animation, I have
to
: either store 1000 TGA's on my hard drive or keep guessing what it will be like along
: the way.

  ... or use the Clock=0.9 option (or command line parameter +k0.9) ?


: I want to be able to be doing something else (hence screensaver is a fairly
: good analogy) and just watch as the scene develops.

  How does winpov stop you from doing something else (I suppose you are using
winpov)?

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.