Scripts for Rhinoceros 3+
Root  Previous item  Next item

Here you find an ever growing collection of scripts for the Rhinoceros 3D CAD platform. Scripts will work on both Rhino3 and Rhino4 provided you have fairly recent version of the RhinoScript.rhp plugin. You can download the latest version for free from the Rhino3d.com website.

Scripts have been grouped in the following categories:
1.Curve tools  
2.(Poly)Surface tools  
3.Mesh tools  
4.General object tools  
5.Display and Rendering tools  
6.Workflow tools  
7.Experimental tools  



Curve tools
Script name
Script description
Script file



Break Polylines
Split polyline curve objects based on sub-curve angle.
RVB_file_icon
Circle from normal vector
Create a circle from a normal vector.
RVB_file_icon
Close curves
Close many curves at once. You can close them both by position (G0) and tangency (G1).
RVB_file_icon
Conic polyline
Convert a polyline curve object to a weighted conic polycurve. Very seventies...
RVB_file_icon
Connect curves
Connect the endpoints of a set of curves with a new curve. Both smooth and straight options.
RVB_file_icon
Cross vector line
Create a line perpendicular to two lines.
RVB_file_icon
Curve self-intersection
Perform self-intersection on a set of curve objects.
RVB_file_icon
Display Nurbs curve data
Create a rich_text_format file that contains all Nurbs data of a curve object.
RVB_file_icon RTF_file_iconExample

Advanced divide curves
Divide multiple curves using 3 different algorithms including a t-parameter division.
If you don't know what t-parameters are and are desperate to find out, you can read about them in the RhinoScript handout, page 65 - Appendix C.

RVB_file_icon
Hyperbolic polylines
Convert multiple polylines into hyperbolic polycurves. The true meaning of explode...
RVB_file_icon
Non-linear spiral
Create a spiral curve object with a non-linear pitch.
RVB_file_icon
Randomize curve
Randomize all of some control-points of a curve object.
RVB_file_icon




(Poly)Surface tools
Script name
Script description
Script file



Box from midpoints
Create a box (or rectangle) from midpoints.
RVB_file_icon
Hyperbolic box
Create a box with curved faces.
RVB_file_icon
Gastank surface
Create a gastank shaped solid.
RVB_file_icon
Teapot object
An implementation of the famous teapot object in Rhino.
RVB_file_icon
Multipipe
Pipe multiple curves at once. With neat preview.
RVB_file_icon
Pyramid solid
Create a pyramid solid from any regular polygon.
RVB_file_icon
Rectangular pipe
Create rectangular pipe objects. Settings for width, height, thickness and angle. Angle doesn't work very well yet...
RVB_file_icon
Surface self-intersection
Perform self-intersection operations on multiple surface objects. This script is buggy because the Rhino intersection code is buggy. My hands are clean...

RVB_file_icon
Randomize surface
Randomize all or some control-points of a surface object.
RVB_file_icon




Mesh tools
Script name
Script description
Script file



UV-mesh
Create a mesh from untrimmed surfaces.
No_file_icon
Extract mesh wires
Convert all polygon edges of a mesh object to loose line objects.
RVB_file_icon


General object tools
Script name
Script description
Script file



Copy objects to points
Copy any amount of objects to any amount of points.
RVB_file_icon
Name objects
Name any amount of unnamed object. Each object will receive a unique name.
RVB_file_icon
Random move objects
Move a group of objects a random distance into a random direction.
RVB_file_icon
Random rotate objects
Rotate a group of objects by a random angle around a common or individual center.
RVB_file_icon
Random scale objects
Scale a group of objects by random factors from a common or individual point.
RVB_file_icon
Sequential names
Apply sequential names to objects by defining name prefix, number and increment.
RVB_file_icon
Relocate objects by _Scale1D
Relocate (move) objects by performing a scale1D operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Scale2D
Relocate objects by performing a scale2D operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Scale
Relocate objects by performing a scale operation on their bounding box centers.
RVB_file_icon
Relocate objects by _ScaleNonUniform
Relocate objects by performing a scaleNU operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Rotate
Relocate objects by performing a rotate operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Rotate3D
Relocate objects by performing a rotate3D operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Mirror
Relocate objects by performing a mirror operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Shear
Relocate objects by performing a shear operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Taper
Relocate objects by performing a taper operation on their bounding box centers.
RVB_file_icon
Relocate objects by _Twist
Relocate objects by performing a twist operation on their bounding box centers.
RVB_file_icon
Relocate objects by _SetPoints
Relocate objects by performing a setpt operation on their bounding box centers.
RVB_file_icon




Display and Rendering tools
Script name
Script description
Script file



Bongo path recorder
Use this script to visualize the paths of animated objects in the bongo plugin environment.
RVB_file_icon
Bongo vector animation
Render a bongo-animation as an *.ai file sequence.
RVB_file_icon
Add render queue camera
Add a new render queue camera.
RVB_file_icon
Remove render queue camera
Remove an existing render queue camera definition.
RVB_file_icon
Restore render queue camera
Restore an existing render queue camera definition in a viewport.
RVB_file_icon
Viewport camera tumble
Tumble the camera with varying speed and position. Nice for long-running presentations.
RVB_file_icon
Slide camera along curve
Quick and dirty camera path animation tool.
RVB_file_icon




Workflow tools
Script name
Script description
Script file



Lowest scene coordinate
Find the lowest point in the current model. This is useful when assigning groundplanes in flamingo.
RVB_file_icon
Manage selection states
Save, recall, delete, filter and adjust selection states.
RVB_file_icon
Quick restore selection state
Quick restore an existing selection state. No filter options available. States are always merged.
RVB_file_icon
Random deselection
Deselect a selection by percentage.
RVB_file_icon
Select by size
Select objects based on the size of their bounding boxes.
RVB_file_icon
Select name from list
Select named objects from a list containing all existing names.
RVB_file_icon
Window select point(cloud)s
Select points and pointclouds using a window-selection rectangle.
RVB_file_icon
Window select curves
Select curves using a window-selection rectangle.
RVB_file_icon
Window select surfaces
Select surfaces using a window-selection rectangle.
RVB_file_icon
Window select polysurfaces
Select polysurfaces using a window-selection rectangle.
RVB_file_icon
Window select meshes
Select meshes using a window-selection rectangle.
RVB_file_icon
Window select annotation
Select annotation objects using a window-selection rectangle.
RVB_file_icon
Window select blocks
Select block instances using a window-selection rectangle.
RVB_file_icon
Window select lights
Select light objects using a window-selection rectangle.
RVB_file_icon



Experimental tools
Script name
Script description
Script file



Liquid drop simulator
This script simulates the behaviour of a small drop of liquid on a (poly)surface object. Friction and impulse are not taken into account. This will work on all surfaces and polysurfaces.
(Note: If you use the preview option, using rough mesh settings, will drastically speed things up)

RVB_file_icon Video_file_icon2.16M
Rain simulator
Similar to the one above, but it automatically calculates the paths of a grid of points. This only works on surfaces and has no froody feedback (yet).
(Note: the animation is *not* a representation of this script. It was made with an adjusted version of the previous script)

RVB_file_icon Video_file_icon2.58M
Dragon-path fractal
Create a dragon path fractal by iteratively copying an open curve along a path. This script was written for polylines but you can use other curves as well.
RVB_file_icon
Plant growth fractal
This script simulates the growth of a plant by adding a new generation of branches to the previous one. Settings slowly change during the lifetime of the plant.

RVB_file_icon Video_file_icon1.0M
Sierpinsky fractal
With this script you can create a sierpinksy sieve fractal. It works both in 2D and 3D. You can use as many vertices as you like. But triangles work best...
RVB_file_icon
Inflate balloon
This script inflates a balloon inside a polysurface. Very experimental, quite buggy.
RVB_file_icon
Geodesic curve
Simulate the behaviour of an elastic band on a surface. If the initial curve is not obstructed this script will create a geodesic curve on the surface.
RVB_file_icon
Parametric curve
Create a curve based on x, y and z parametric functions. Jess Märtterer created a similar (but much better and more advanced) set of tools which you can download from his site.
RVB_file_icon

 


For additional information.