LDraw.org Discussion Forums

Full Version: Do we need another LDraw building program?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5
Hi all.
I'm working on a simple builder in Java, derived from JLDraw Java viewer, but now I wonder if we really need yet another building software Smile

My program will have a building mode with "autoconnect", i.e. new part will "snap" to nearest connection on line of sight (it is already done for studs, tubes, some technic pin and pegholes, but needs lots more work for other connections).

It is in Java, so we have "one version is good for all". Some drawbacks are the "rough" rendering (You must optimize a lot if you want some accettable speed in Java...), and probably the maximum size of a model, that will be in the order of 5k-10k parts (i'll not tested yet).

The coming of "MOC Builder" from Bricklink will make my program useless, I think.

So, I'm here to ask for your opinion: we need another building software? Please talk frankly and be direct: I'll survive to your criticism :-p ;-)

Thank you in advance.
My feeling is the more choice the better it is. Bonus points for being open source
When I built my Java based builder a few years ago, I knew it would not be the best out there, but it gave me the experience in OpenGL I needed to take on new projects at work.

I'm glad to see so many Java developers that are interested in LDraw based programing. I'd really like to see more developers working together on one program.

Since MOC Builder is supposedly backed by Bricklink and is fairly well along, it seems to be a good choice.

If you're having fun and learning with your own project...keep going. If you want to help build the best LDraw program...join a team.

Best of luck,
You are right, there are already some good builders for models in our LDraw Systems of Tools.

But as far as I can see there is only 1 (two if I count LDForge) application (MLCad) for designing the parts itself.

I think that it is far more complicate to write such an application and therefore the lack of alternatives.

If you like to do some work for the community - this would be a good choice IMHO.
Hey, cool to see you around here!

If you want to hear my humble opinion on your question, then I'd answer like this:

yes, it is fun writing an LDRAW parser and creating some GUI application around it for editing, snapping, etc.
I myself feel the urge to do so from time to time again.
And when you do that, you learn a lot. You can design your parser to be a "real" parser like taught in the books
(tokenizer, parser, annotated syntax tree, cache, etc.) or make it a quick and dirty or simple solution.
And you learn a lot about OpenGL and or GUI libraries. Or WebGL. And interesting aspects like "efficiency" of
the program language you use.

So I would agree with the previous posters:
if you get fun or a learning from it, why not go on.
But I think the best community effort would be achieved if we would not have 100 small/incomplete editors,
but instead just 1 or 2 or 3, maybe written in different languages or using different approaches,
which are developed cooperatively. There is anyway so much work to do and so few people writing parts or software
that we should combine our efforts IMHO.
Hi, i'm interested in a java based building program! Mind to share some more details? Such as what libraries are you using etc Smile

Are the sources available yet? I'd love to peek inside

EDIT: i see you're a fellow italian, from romabrick right ? Smile
Hi Nicola.

Yes, I'm part of Romabrick people.

If you want, we can use email to talk (in italian... Big Grin )

I haven't released any code (yet) but most of the work is derived from my Java viewer JLDraw, available from SourceForge:

At the moment, program relies on some key libraries:
- LDraw part library and model handling. Reads and parse parts files from official or unofficial library (zipped or installed a folder), reads models, handles parts cache and connection points database (last is work in progress)
- LDraw 3D library. Highly optimized part/model renderer, handling of part moving, connection point "snap", model connection handling (adding and removing connection point according of part placement/removing).
- LDraw part database library. Used to search parts from description/keywords/name/id using full text search engine (H2 pure Java database with Lucene indexer. Yes, I'm using nuclear weapon to kill a mosquito...)
I would be happy with a version of MLCAD that isn't buggy and takes advantage of hardware acceleration. When it works, my preferred modeler is still MLCAD.
Well, this might be work for simple brick stacking but it's more or less impossible to build complex technic models. When I used MLCad for building technic models I used autocad for drawing areas with angles for getting the right rotation values...

And unfortunately MLCAD is closed source as well so all we can really do about it is to replace it. What is with all this closed sourcedness anyway in most programs I've seen here on LDraw? It seems a bit insulting to the open standard.
Pages: 1 2 3 4 5