Tag Archive: “bricksmith”

Using LDView to make it easier to add parts to your LDraw library

A common concern among LDraw users is how to add new parts to their libraries. Often, “in-progress” versions of desired parts are available in the LDraw.org Parts Tracker (get involved!), but downloading and installing them manually can be tedious. If you don’t want to download every unofficial part, you can let LDView download and install the parts you want for you.

First, identify the number of a needed part. Let’s suppose it’s this brick:

It’s not yet in the official part library, but an unofficial version of 60475 is in the LDraw.org parts tracker. You can download the unofficial part and its prerequisites manually, or you can create a dummy model that requires it, and let LDView retrieve the files you. Here’s how.

Create a file consisting of a single reference to the desired part, 60745.dat:

1 71 0 0 0 1 0 0 0 1 0 0 0 1 60475.dat

Let’s call it download.ldr. Next time you want to download a new part, just change the highlighted part number (or add a new line for the new part; it doesn’t matter how the parts are positioned):

LDView can download missing parts automatically. First, make sure “Automatically check ldraw.org for missing parts” is checked in the “Updates” tab of LDView Preferences:

Next, open download.ldr in LDView. If it’s already open, reload it. (This will happen instantly if you’ve selected “Auto-update immediately” from the File → Polling menu.) When LDView loads the model, it will attempt to retrieve any missing parts from the parts tracker. After a moment, your new part should appear:

The new part (and any prerequisite sub-parts or primitives) will be added to your library:

To use your new part in Bricksmith, click “Reload Parts” in the “Parts” tab of Bricksmith Preferences:

The new part will now be available in the Bricksmith Parts Browser:

So, the point is that if you want to use a part that’s not yet in your library, just paste the part number in download.ldr, open it in LDView, and reload your parts library in Bricksmith.

Posted on Saturday, April 24th, 2010.

LSynth 3.1 for Mac OS X

I have compiled a Mac OS X version of LSynth 3.1, the recently released update to the program that synthesizes LDraw code for flexible LEGO parts.

Download LSynth 3.1 for Mac OS X 10.5+ (Universal Binary; 85 KB)

This download includes the lsynthcp executable as well as the configuration file (.zip) and the constraint parts (.zip) available at Willy Tschager’s installation tutorial page for MLCad users (which contains some useful information for all LSynth users).

Important Compatibility Note: The executable in the above download may only work with Mac OS X 10.5 (Leopard) or greater. Click here to download a version of lsynthcp that should also be compatible with Mac OS X 10.4 (Tiger), provided by current LSynth developer Don Heyse. Thanks, Don!

Installation

Copy the LSynth constraint parts to the parts/ or Unofficial/parts/ directory of your LDraw part library. Keep the lsynth.mpd configuration file in the same directory as the lsynthcp executable. LSynth is not integrated with Bricksmith, so you can keep these files wherever you prefer. You will need to use the command line to run LSynth.

Usage

To use LSynth, you manually place constraint parts at key locations such as the endpoints of a hose. Then you input the LDraw file to lsynthcp, which generates a duplicate file containing all the hose segments, chain links, etc. necessary to represent the flexible part described by the constraints.

For example, here is the RUBBER_BAND-Constraints.ldr file from Willy’s excellent page of LSynth examples:

rubberbandconstraints

With the file in same directory as lsynthcp and lsynth.mpd, run the following command:

./lsynthcp RUBBER_BAND-Constraints.ldr Rubber_band_output.ldr

Here is the output:

rubberbandconstraintsoutput

For more detailed information about using LSynth, peruse Willy’s troubleshooting page and the pages linked above.

Notes

Here are the minor modifications I made to compile the LSynth 3.1 source package for Mac OS X:

  1. Edit the comment on Line 69 of lsynthcp.c to begin with slashes (//) instead of backslashes (\\).
  2. Append “-arch i386 -arch ppc” to lines 3 and 17 of makefile to enable Universal Binary support.

The make command is sufficient to compile the program.

This release supersedes the LSynth Service I made a few years ago.

Posted on Saturday, November 21st, 2009.

Bricksmith Custom Categories

Here is a hack to add new categories to the Bricksmith part browser. The part catalog is normally organized into categories based on the type of each part (such as brick, plate, or tile). However, if you’re building a model based on a real set, it’s just as useful to present the parts from that set in one category.

Adding a category from a Peeron inventory

To create a category consisting of the parts from set 4891, enter 4891 and click Peeron Inventory:

Screenshot: Naming a category based on a Peeron inventory

The script will retrieve the corresponding list of parts and populate a new category containing them:

Screenshot: Browsing a category retrieved from Peeron

Adding a category from a file

To create a category based on an arbitrary group of parts, save a list of part file names, like this:

3005.dat
3004.dat
3003.dat
3001.dat

Then enter a name for your category and click From File. You’ll be prompted to select the list you just created.

Screenshot: Naming a category to be loaded from a file

The script will add the listed parts to the named category:

Screenshot: Browsing a category loaded from a file

Limitations

The script is awfully slow. AppleScript’s property list commands are not well suited for making many changes.

Parts listed in the file or inventory which are not already present in your part library will not be included in the category.

New categories are not visible until you restart Bricksmith. (I recommend quitting Bricksmith before running the script anyway.) Custom categories are lost when you reload the part list from Bricksmith’s Parts preferences.

No feedback is provided while the script is running.

Errors are not handled particularly well.

Mac OS X 10.5 is required.

It’s really slow.

Download

Bricksmith Catalog Custom Categories 26.4 KB

Posted on Saturday, June 21st, 2008.