LDraw.org Discussion Forums
JBrickBuilder - an easy LDraw builder in Java - Printable Version

+- LDraw.org Discussion Forums (https://forums.ldraw.org)
+-- Forum: LDraw Programs (https://forums.ldraw.org/forum-7.html)
+--- Forum: LDraw Editors and Viewers (https://forums.ldraw.org/forum-11.html)
+--- Thread: JBrickBuilder - an easy LDraw builder in Java (/thread-15249.html)



JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-01-19

NB: from october 2015 this software become unmaintained. No updates, no bugfixes, no support.
I'm sorry for that, but my time is really limited, so I prefer return back to a simple user and LEGO builder.
This software costs over a year of work, but due to lack of interest it is better to use my time for other activities.
Sorry again.

(original message follows)
-----------------------------------------------------------------------

Hi all.

I'm pleased to announce:
JBrickBuilder
a LEGO builder in Java for LDraw part library.

[Image: jbrickbuilder-aa.png]

Program is in beta and it is completed at 60%, so most functions are planned but absent in this release.

I use a connection database I built to allow "snapping" of parts when you move a brick near another. For some connection type program also align part with receiving part, so building winged or "snotted" model is not so difficult.

Connection database is in zip form and downloaded at first start. It is far from complete, but constantly grows: in last release it contains over 480 parts (decorated parts uses same connection of plain parts, so minifig torso is one part in connection database, but it is used for all 300 torso in library, so probably working parts are a lot more) and program is able to auto-detect connections for lots of parts.

When connection does not work, you always fall back on "placing grid", a plane that use snap and orientation to place parts.

Program is on Sourceforge:
https://sourceforge.net/projects/jbrickbuilder/
with manual (english, PDF).

To get program working you need only the .JAR file. All needed files are downloaded automatically at first run.

Last release: 0.4.1 (2015-06-12)
Parts with verified connections: 1260 (520 in database, 740 autodetected and verified)

A short video on jBrickBuilder flexible parts editor: https://youtu.be/xvohL50gI9Q

Informations about connection model and algorithm is here:
http://forums.ldraw.org/showthread.php?tid=15255

Flexible parts model is here:
https://sourceforge.net/projects/jbrickbuilder/files/jbrickbuilder/flexparts/



Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Nicola - 2015-01-20

Hello, i tried and run it but it looks like the downloads doesn't work behind a proxy. Is it supported somehow?
Also, why you require the user to download the library instead of just using the one already available (if he has any)?


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-01-20

Hi Nicola.

Nicola Wrote:i tried and run it but it looks like the downloads doesn't work behind a proxy. Is it supported somehow?

Not inside application at the moment. You can set proxy properties on java command line, as explained here.

Nicola Wrote:Also, why you require the user to download the library instead of just using the one already available (if he has any)?

Mainly because program is an early beta Big Grin
Next releases will handle properly library choices.

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-02-12

... and we have v0.1.5.

New release, new features:
- selection by dragging window
- selection by LDraw ID
- selection by color
- save selected as block/template
- over 80 new part connection data (included minifig and most Friends™ figures)
- 500 parts connection data available and verified.
- some bug fixed

Program is on Sourceforge:
- JBrickBuilder (Java JAR)
- manual (english, PDF).

Other information, connection model and strategy are in "Files" section on Sourceforge page.

Thank you.

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Jason Smith - 2015-02-15

Oh, can't wait to try it out. Does the new selection methods mean we can move a part that we already placed, guess I'll find out soon enough.

Thank you


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-02-18

Hi Jason.

Yes, you can select parts by direct click on it (plus Shift and CTRL modifiers for "add" and "toggle"), by part id, by color index and by dragging a window on screen.

Moving requires a click on a button (next release I'll add an hotkey, presumably 'm').

Mario


JBrickBuilder - Release 0.1.7 is out - Mario Pascucci - 2015-02-23

Hi all!

[Image: jbrickbuilder-aa.png]

Release 0.1.7b is out. Main improvements:
- new antialias option for better graphic results (disabled by default)
- new connection search strategy using a simple spatial index-like data structure and ray-to-AABB collision
- experimental new grid and pointer matrix separation for simpler SNOT model editing
- 12 primitives added to connection autodetect function
- in part list search, highlighting for parts with connection in database or verified autodetection
- bugfixes

Connection database now lists 570 parts.

Enjoy!

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Jason Smith - 2015-02-26

Thank you Mario, this is coming along nicely.

A question... when I select an already placed brick and hit the move button it flips it upside down for some reason? I then need to place it someplace and select it again to get it to flip it back right side up.

Is simply selecting and dragging with the mouse being looked at as an option?


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-02-26

Hi Jason.

No, it's a bug I triggered when I changed code for generic part rotation. I hope to release a fix in next days. When "flipping" happens, you can reset rotation matrices hitting buttons with brush in left toolbar.
Who said that a normal program has 1 bug every 100 lines of code was an incurable optimist... Big Grin

At the moment using click&drag to move parts appears a bit complex to do, and introduces some side effects. One is (like LDD) if you want to select by window a group of parts but you first click on a part, you start moving it, instead of dragging a window. I'm not excluding to add a such function, but program needs lots of function to be added to become fully usable, and some are added in a raw fashion, awaiting to be enhanced when program will be quite "stable".

Thanks for your feedback

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-03-26

Hi all.

Apologies for my long silence, but in few days I'll release new JBrickBuilder version.

Program was partially restructured to make it more modular, from editor point of view, and I'm thinking to a plugin infrastructure to add editor functions.

Meanwhile, I like to introduce a model for flexible/bendable parts, used in upcoming release:
a short writing is here.

Model is still rough, and need improvements, but I think it is a good starting point.

Thanks to:
Orion Pobursky, Don Heyse, Kevin Clague, Allen Smith – for LSynth creation and source code availability.
Willy Tschager, Philippe Hurbain, Steve Bliss, Chris Dee, Larry Pieniazek – for some part design used directly or modified in present model (see flexpartDefs.xml data file)

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-03-31

Hi all.

Release 0.3.0 is out, with new flexible part editor in first experimental version.

Main post updated with links and a short video with flex-parts editing demo.

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-06-10

Hi all.

After a long silence, I'm pleased to announce release 0.4.0b, with experimental building STEP editor and player.

Also new parts in connection database (1260 total parts).

Thank you

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Jason McReynolds - 2015-10-08

Just downloaded the latest version and I must be missing something, I can't move the bricks after I drag them out. Clicking on them and dragging them doesn't do anything. I don't see any kind of move button either. What am I missing?


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-10-08

Hi Jason.
Moving a part through click&drag is not implemented (yet).

A previous discussion here: http://forums.ldraw.org/showthread.php?tid=15717&pid=15717#pid15717

Mario


Re: JBrickBuilder - an easy LDraw builder in Java - Jason McReynolds - 2015-10-09

Mario Pascucci Wrote:Hi Jason.
Moving a part through click&drag is not implemented (yet).

A previous discussion here: http://forums.ldraw.org/showthread.php?tid=15717&pid=15717#pid15717

Mario
Thanks, didn't realize that. However, I still can't seem to figure out how to move parts once I place them. I don't see a move button of any kind and selecting the part and using arrow keys or anything else doesn't seem to do anything either. None of the menus that show up are for moving the parts. How are parts moved once they are placed? Or, is that not possible? Version 0.4.2b on Windows 10.


Re: JBrickBuilder - an easy LDraw builder in Java - Mario Pascucci - 2015-10-12

To move parts, use the combination Ctrl-X (cut) -> Ctrl-V (paste) on selected bricks.


Re: JBrickBuilder - an easy LDraw builder in Java - Jason McReynolds - 2015-10-12

Mario Pascucci Wrote:To move parts, use the combination Ctrl-X (cut) -> Ctrl-V (paste) on selected bricks.
Thanks for the clarification. I kind of figured that out by going back and watching the video you have. Wasn't too sure though, so this is helpful.