Compose3D, a mesh/surface geometry tiling for Rhino

(c) Copyright, Gershon Elber, 2014

Two examples of using this Compose3D new command, tiling geometry over a B-spline (wine glass-like) surface, in seconds. On the left a thorn polygonal mesh tile is used whereas a bumpy B-spline surface tile is used on the right.

Introduction

This Rhino 5.0 module allows one to tile geometry over a freeform spline surface S(u, v). Geometry will be tiled UTiles times in the surface u direction, VTiles times in the surface v direction and WTiles times in the surface normal direction. In addition, along the surface normal the tiles will span from ZMin to ZMax, where Z = 0 is on the surface. To ensure a water-tight result, the tile better be precisely periodic. That is, the tile's XMin boundary must be the same as XMax boundary (and same for Y and Z). The tile can be one of:

Licensing

BECAUSE COMPOSE3D AS DOCUMENTED IN THIS DOCUMENT ARE LICENSED FREE OF CHARGE FOR NON COMMERCIAL USE, I PROVIDE ABSOLUTELY NO WARRANTY, TO THE EXTENT PERMITTED BY APPLICABLE STATE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING, I GERSHON ELBER PROVIDE THE COMPOSE3D PLUGIN "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PLUGIN IS WITH YOU. SHOULD THE COMPOSE3D PLUGIN PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL GERSHON ELBER, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR A FAILURE OF THE COMPOSE3D PLUGIN TO OPERATE WITH PROGRAM(S) NOT DISTRIBUTED BY GERSHON ELBER) THE PLUGIN, EVEN IF YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.

Download

Simply download this "Compose3D.rhi (zip) Rhino installation file into some directory and run the "Rhino Package Installer" to install in Rhino. If Rhino is installed properly, you can open 'Explorer' in the same directory and double-mouse-click on the Compose3D.rhi file to activate the "Rhino Package Installer" and install Compose3D.

Important: If your browser (IExplorer) detects this rhi as a zip file and automatically renames it to Compose3D.zip (which in fact it is), rename it back to Compose3d.rhi before attempting to install it.

Use Instruction

The 'Compose3D', once activated, has five parameters: Only to then select the base surface S(u, v), following by either selecting the tile as a polygonal mesh or as a sequence of spline surfaces.

Examples

3D Rings Chained Together:

Example of compose3D to compose a periodic tile in the shape of three orthogonal rings over a freeform surface, tiling a 3D grid of rings over the surface's geometry. Base surface is a spline (NURBs) surface while the tile is a polygonal mesh and hence the result is a polygonal mesh as well.
Using the Compose3D command/plugin in Rhino.



3D Tubes over Freeform Surfaces:

An example of 3D composition of two/three orthogonal freeform cylinders over a freeform surface. All surfaces are spline (NURBs) surfaces and the result is a set of (piecewise) C^1 continuous spline surfaces.
Using the Compose3D command/plugin in Rhino.



3D Thorn Tiling:

An example of tiling thorn tiles over a freeform surface of revolution in the shape of a glass. Base surface is a spline (NURBs) surfaces. Tile is polygonal and hence the result is a polygonal mesh as well.
Using the Compose3D command/plugin in Rhino.

3D Chocolate-like Tiling:

An example of tiling Chocolate-like tiles over a freeform surface of revolution in the shape of a glass. All surfaces are spline (NURBs) surfaces and the result is a set of C^1 continuous spline surfaces.
Using the Compose3D command/plugin in Rhino.



This plugin was created using algorithms that are part of the IRIT solid modeler.

Gershon Elber,