About shape grammars
The interpreter project
Create a grammar
Run a grammar
Get out of trouble
The Yingzao fashi project
i (at) andrew (dot) li
Before you start
You need Rhinoceros3d version 5 for Windows; version 6 also seems to work reliably. It must be a full version, not an evaluation version.
The interpreter does not work with any version of Rhino for Mac, unfortunately.
To see the version number, in Rhino select Help / About Rhinoceros. A window will open; look in the lower right corner, in parentheses.
While you’re there, make a note of whether you have the 32-bit or the 64-bit Rhino. It’s written right beside the version number.
Download the zip files
‘sortal_3D 180904 oAPI’. This is Rudi Stouffs’s library (also called the sortal library, the engine, or the back end). There are other versions available on his web site, but my front end doesn’t work with them (yet). Download here.
‘package v190713’. This is my library (also called the package, the user interface, or the front end). Download here.
Install the libraries
Put the folder ‘package v190713’ in a location with an all-ASCII path name. This means that the name of the folder containing ‘package v190713’ must not contain Chinese characters (like ‘文法’), kana (like ‘ぶんぽう’ or ‘グラマー’), or even letters with accents (like ‘grámmar’). The same applies for the name of the folder containing that folder, and so on back to the hard disk. Be sure to use only the English input method. With other methods you can input English letters, but they may not have the ASCII codes.
Make an archive copy of the folder ‘package v190713’ and put it in a safe place.
In Rudi’s library, find and (by double-clicking) run the file ‘sortal-setup/setup.bat’. This will install files in the IronPython library for the type of Rhino (i.e., 32- or 64-bit) on your machine.
Set the Python module search paths
Open Rhino. Open the Python script editor (Tools / PythonScript / Edit…). In the Python script editor, open Tools / Options…. Click the Files tab. Add the following module search paths. ‹Rhino_name› may be either ‘Rhinoceros 5’ or ‘Rhinoceros 5 (64-bit)’. Select the path name for the Rhino you have.
‘‹Rhino_name›\Plug-ins\IronPython\Lib’. This one is probably already there by default.
Click the Script Engine tab. Check Frames Enabled. Click OK.
If you’re hot to trot, now is a good time. If, on the other hand, you’d like to read some more instructions, go to the next page.
This lattice design is based on the standard Nakata curve. Can you identify it?