To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cadOpen lugnet.cad in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / 1076
1075  |  1077
Subject: 
Re: Java LDraw/LDLite
Newsgroups: 
lugnet.cad.dev, lugnet.cad
Date: 
Fri, 26 Feb 1999 13:40:02 GMT
Viewed: 
42 times
  
I actually thought of this long ago and mentioned it to LDraw Master James
himself.  He didn't sound very interested in it at the time because he didn't
think java was fast enough to support it.  I sorta dropped the idea after that.
I'm glad Todd made me remember it.

The problem with the applet approach, as Jeremy mentioned, is the parts
database.  Either the applet would have to be given permissions to read local
files (it is possible), or the parts would have to be downloaded on the fly over
the network.  This part database could consist of compressed files to make the
downloads smaller.  I just did a quick compression of the entire primitives
directory, and it came out to one 41k file, so that would be a pretty quick
download.  The largest part I see in my list is 3754p01.dat at 225kb.  I
compressed it and it came out 36k.  I count about 20 parts that are > 50k in
size uncompressed.  A 50k file came down to 7k.  It looks like that around 75%
of the files are 10k or less, and a 10k file compresses down to about 2k.  So a
400 part model would be less than 800k worth of compressed part files,
especially if you remember a model often uses parts more than once.  So it looks
like downloadable parts is doable, though there will be some noticeable delay
while the parts are downloaded.

Here's a quick rundown on what just such a program could be able to do.

- Application or applet
- Read DAT files locally or from the network (think of inputting a URL directly
to a DAT file and viewing it that way)
- Automatically download parts files from the network (So if a part that is
requested isn't there, it could be downloaded.  If we could guarantee a standard
for parts file locations, we could create an online database that the program
would autodownload the part if you don't have it when viewing a model.  Todd,
would lugnet be the choice for this database?)
- Program would be self updating on request (It could determine if an update is
available and go get it when you want.  This only makes sense for an
application, of course.)
- A 3d display with various controls for the camera location, zoom, wireframe or
shaded, etc.
- Ability to save the model's image as a gif or jpeg image (this is free in
java)
- Multithreaded (This means it could be drawing one part while downloading the
next, for example.)
- Ability to read zip compressed part or model files (zip decompression is built
into java)

I've certainly got the skills to write this program.  All of the above features
I've already done in java in some fashion, except for 3d display.  I've done 3d
graphics before, but I've gotten somewhat rusty.  I'd like to see someone else's
source code for drawing a DAT file (ldlite comes to mind) to use as a guide for
making a java version.  The only downside is finding enough time to do it.  As
long as I have enough motivation, though, it can become my top priority free
time activity (as opposed to playing a computer game, as has been my main
activity lately)  :-).

Todd Lehman wrote:

[followups set to lugnet.cad.dev]

In lugnet.cad, Steve Anderson wrote:
Has anyone considered tackling LDraw/LDLite as a Java Applet, maybe with
controls for rotation?  [...]

Steve!  Whoa, heavy....like...WAY COOL IDEA!!!!!

How come nobody's ever suggested this yet?  (Or have they?)

I mean, forget all about making a Mac clone of LDraw or any other specific
platform -- even Linux -- why not write it all as a standalone app in Java?
Java is a good enough language to write serious applications in.  As a
byproduct, if it were architected properly, the app (or portions of it) would
be separable and also run on a Java-enabled web browser.

If cross-platform happiness isn't yet a 100% reality with Java, surely it
would be by the time the project were complete...?

I've seen more sucky Java applets on the web than I care to remember, but it
*is* possible to write excellent cross-platform apps in Java (they're just
exceptional).

--Todd

--
Greg Williams
gregw@mindspring.com
http://www.mindspring.com/~gregw



Message has 4 Replies:
  Re: Java LDraw/LDLite
 
(...) standard (...) To me, that would be the primary advantage of a Java version[1], I haven't played with LDraw much because the biggest thing that put me off is the parts database, half the models I look at seem to have missing parts and when I (...) (26 years ago, 26-Feb-99, to lugnet.cad.dev, lugnet.cad)
  Re: Java LDraw/LDLite
 
Greg Williams wrote in message <36D6A432.8476B943@m...ng.com>... (...) features (...) done 3d (...) else's (...) for (...) As (...) free (...) Greg, this would be awesome. I think we need an option like this for Ldraw to really take off. Just think (...) (26 years ago, 26-Feb-99, to lugnet.cad.dev, lugnet.cad)
  Re: Java LDraw/LDLite
 
(...) I've though a bit about this -- I think I would prefer uncompressed individual files, as this would make parts updates easier on the server end. Just copy the /P and /PARTS dirs to the Web server. (1) <DEVILS_ADVOCATE> However, the JDK now has (...) (26 years ago, 26-Feb-99, to lugnet.cad.dev, lugnet.cad)
  Re: Java LDraw/LDLite
 
Please before starting take a look at the java3D api, I know java 2 is not yet supported directly by most browsers but its just a question of time and then you have all the 3D done for you AND you get the benefice of 3D accelerations. Greg Williams (...) (26 years ago, 28-Feb-99, to lugnet.cad.dev, lugnet.cad)

Message is in Reply To:
  Re: Java LDraw/LDLite
 
[followups set to lugnet.cad.dev] (...) Steve! Whoa, heavy....like...WAY COOL IDEA!!!!! How come nobody's ever suggested this yet? (Or have they?) I mean, forget all about making a Mac clone of LDraw or any other specific platform -- even Linux -- (...) (26 years ago, 25-Feb-99, to lugnet.cad, lugnet.cad.dev)

51 Messages in This Thread:

















Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR