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.
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:
A 3D polygonal mesh tile, in which case the mesh is tiled
over S(u, v). Result is a 3D polygonal mesh located over S(u, v).
A set of freeform spline surfaces, in which case the
surfaces are tiled over S(u, v). Result is a set of
freeform spline surfaces precisely located over S(u, v)
while continuity is preseved. This quality result is
achieved using spline surface-trivariate composition but
result will be of a higher degree.
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.
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.
The 'Compose3D', once activated, has five parameters:
UTiles: Number of tiles to place along the u parameter of
the base surface S(u, v). Minimum 1.
VTiles: Number of tiles to place along the v parameter of
the base surface S(u, v). Minimum 1.
WTiles: Number of tiles to place along the normal direction of
the base surface S(u, v). Minimum 1.
ZMin: Minimal distance along the normal of S(u, v) to start
placing the tile(s). Negative means direction opposite
to the surface normal. Cannot equal to ZMin and if ZMin
is greater than ZMax, Z orientation will be flipped.
ZMax: Maximal distance along the normal of S(u, v) to end
placing the tile(s). Negative means direction opposite
to the surface normal. Cannot equal to ZMin and if ZMin
is greater than ZMax, Z orientation will be flipped.
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.
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.