Tag Archive: “LEGO”

Miscellaneous Mac LDraw Machinations

Macintosh universal binary versions of Philo’s Isecalc and Linetrim utilities for LDraw part authors are now readily available, courtesy of yours truly.

Posted on Thursday, June 14th, 2007.

Isecalc

Isecalc is a new LDraw utility by Philippe Hurbain. It computes the intersection of two parts (useful for part authors).

Happily, it is Mac compatible. I built Isecalc with the following command:

g++ Isecalc.cpp -arch i386 -arch ppc -o Isecalc

The -arch options are only needed to produce a universal binary.

Posted on Saturday, June 2nd, 2007.

RSOPlayer

Brickley Roscowicz Engineering has released rsoplay, a utility that plays LEGO Mindstorms NXT.rso” sound files. To complement this Mac-compatible tool, I’ve created RSOPlayer, a wrapper for rsoplay that provides enhanced Mac OS X desktop integration.

RSOPlayer Droplet Icon

You can drag RSO files onto RSOPlayer to play them. You can double-click RSOPlayer to select files to play with a file browser. You can even assign RSOPlayer as the default application for RSO files, so that double-clicking an RSO file will automatically play it.

Download RSOPlayer 1.0 (162k)

The download includes the rsoplay 0.1.0 source distribution as well as the RSOPlayer application and source code. RSOPlayer is a Universal Binary and probably requires at least Mac OS X 10.4.

Posted on Tuesday, April 24th, 2007.

LSynth Service

LSynth is a program by Kevin Clague that synthesizes flexible LDraw parts.

lsynthtest.ldr lsynthtest-output.ldr

I’ve fiddled with the 2.0 source code to produce a variant that adds some minor features (and probably breaks some others). Most notably, I’ve also packaged this version as a Mac OS X Service, a text-processing filter you can use to run LSynth anywhere you can edit text.

Install the service in ~/Library/Services/ and double-click it to register its availability. To run LSynth, select some LDraw text and select “LSynth” from the “Services” submenu of your current application:

The selected text will be replaced with LSynth’s output. You can use Service Scrubber to add a global keyboard shortcut or to weed out any services you don’t use.

Editor Compatibility

The LSynth Service works great with any conventional Mac OS X text fields. However, some popular editors implement their own text fields that interact with services a little differently. Ideally, the service would recognize these cases and cater to them accordingly, but for the time being workarounds are needed.

Towards that end, I’ve added an LSynth.tcl filter to my TextWrangler LDraw Kit (adaptable for BBEdit users, too) that acts as a compatibility wrapper for the LSynth Service. TextMate users may need to use the Text bundle’s “Remove Unprintable Characters from Selection” command to clean up misinterpreted line endings after running the service.

LSynth Service Tool

I call my modified version of the LSynth program lsynthst (for “LSynth Service Tool”) to avoid confusion with the official version. It builds on Mac OS X and Linux, but I haven’t tested it with any other platforms.

The primary difference between lsynthst and LSynth 2.0 is the addition of a “filter” mode. Run with no arguments, lsynthst reads standard input and writes to standard output. Other changes include:

For more detailed information about the changes made, see my comments in the main.c source code file. No additions or functional modifications to the actual part synthesis code have been made. The program is packaged as a system service with ThisService.

Development

I cannot support this version of LSynth, nor can the original author. However, I would be glad to receive your feedback, and the source code is, of course, available for your perusal or repair. Eventually, service integration with the next official version of LSynth would be nice.

Posted on Tuesday, April 10th, 2007.

txt2dat online

Hot on the heels of Bitsticker, I’ve made an interface for Ross Crawford’s txt2dat program: txt2dat online. You just enter some text and click a button to download a custom LDraw part with the text stamped right on it. Bring some literacy to the lives of your virtual LEGO people with labeled street signs and storefronts.

Posted on Sunday, March 4th, 2007.

Bitsticker

Bitsticker example gallery

As recently announced elsewhere, I’ve released Bitsticker, a little script that converts bitmap images into virtual “stickers” that can be used to decorate LDraw models.

So. Art on your LEGO. On your computer. What’s not to love?

Posted on Thursday, March 1st, 2007.

B-Wing Variant

The first in a series of alternate spacecraft built from the pieces of the LEGO B-Wing kit.

From certain angles I think it even bears a slight resemblance to some WWII-era fighters:

P-51 Mustang F4U Corsair

Bricksmith CAD screenshots:

The MPD file is available, as are more photos.

Posted on Thursday, February 8th, 2007.

LEGO Bros

My brother has built an Exoforce Claw Crusher – it’s the biggest Lego kit he’s built yet, and it is pretty cool. He took some pictures of it:

Claw Crusher Claws

I also made a fancy computer rendering of the alternate docking cradle I made for the Star Wars B-Wing kit (unlike the default cradle, it makes the cockpit reasonably accessible by placing it at ground level):

B-Wing Cradle Rendering

Look here for more information on LDraw Mac shenanigans with Bricksmith, L3P, LGEO, and POV-Ray at a future date.

Posted on Monday, January 15th, 2007.