Follow Curve

I'm proud to present a new plug-in for the Alias interactive package called "Follow Curve". It is a powerful and versatile modelling tool which lets you deform objects to arbitrary curves, and animate them moving along the curve or while the curve changes. It also allows you to (animatably) shear an object in three dimensions. When deformation is turned off, it also acts as a more flexible and animatable alternative to Motion Path.

It was first written on 18 August, demonstrated in Toronto on 31 October, and released internally on 5 December 1996.


Distribution

This is a public release!

Installation

The easiest way to install a plug-in is using these new-fangled PIM archives. First make sure you have a .Alias/plugins subdirectory in your home directory. The following command will make sure you have one:

mkdir ~/.Alias/plugins

The file below is a compressed PIM plug-in archive. To extract the PIM, first make sure that the file name ends in .pim.Z (Netscape has been known to silently mangle such file names), and then execute

uncompress pptFollowCurve.pim.Z

Now you can simply drop the PIM file on the Studio icon on your Indigo Magic desktop to do the installation. If you're not using the desktop, you can type

pim -i pptFollowCurve.pim

at a shell prompt to perform the installation. Select "local" to put the plug-in in your personal plug-in directory.

Download

Download pptFollowCurve.pim.Z (269797 bytes) or read the documentation.
This binary is for version 7.5.

Please send your comments to the author, Ka-Ping Yee, at pyee@aw.sgi.com!

Thanks very much for participating.


Recent notes

The README file was updated on 6 December 1996.

The first release does not respect changes in scale or movement of the rotate pivot on the source objects after command creation, if you are using "transform pivots only". This is being worked on.

Further to the above: scaling the target object has been fixed. However, if you are using "transform pivots only" and move the CVs on the original object, the command will not copy their locations to the target object. Likewise, since moving the pivots of an object also moves the CVs, the location of the target will not be consistent with the source if you move the source's pivot. Thus, my advice is to always set the pivots before invoking the command to put the object on the curve.

Instancing the source objects in "transform pivots only" mode is under consideration.

"Transform pivots only" mode is known to not work properly when the source axis is Y or Z. If the source axis is X, things should be okay.

That last bug has been fixed (9 Dec 96).

There is now no instancing, but the pivot bug has been fixed (11 Dec 96). Moving pivots of objects should now work fine even after the command has been installed.


Suggested demos

The following are a few ideas for showing off this plug-in. The screen shots will give you an impression of what it can do.

THE FLOWER

You can model a flower in about 30 seconds with this tool, and animate it really nicely as well.

Go to the "Front" window and draw a new curve in the shape of a petal, snapping the first CV at the origin. Try putting the CVs at about (1,0.5), (2,-2), and (4,0). Zoom in a bit.

Drop a sphere at the origin in the "Right" window using grid snap. With the sphere still picked, click Follow Curve. Click your petal curve. Click "Go".

Pick the stretched petal with the middle mouse button. Get the option box for Edit->Duplicate object. Set Rotation to 30 degrees around the Y axis (or Z if you're Z-up), and set Number of Duplicates to 11.

Select Geometry Type "Instance" and hit "Go". Quick Render. You've got your flower.

Now you can demonstrate the construction history by picking the CV on the end of your curve and moving it around. Lift it off the axis and all the petals should move with it.

(If your machine can handle it, toggle shade. For the best speed, maximize a single perspective window.)

For thinner petals, simply Nonp-Scale the central sphere along the Y axis (or Z if you're Z-up). Play with it.

TEXT

This tool is also great for deforming text. You can get text to flow along a curve fairly easily this way. The one main hitch is that faces do not work (they cannot bend).

For a real model you would have to use surfaces, but you can demonstrate what happens using just curves.

Make some text. Drop it at the origin in the Front or Top window. Select Curve Edit->Duplicate and click on each of the loops in the text one by one. Edit->Group the curves.

Drag a pick box over the text with the left button, thus selecting the faces and deselecting the curves. Delete the faces.

Draw a curve, anywhere you like. Select the text and use Follow Curve to put it on the curve. Drag it back and forth interactively with the mouse.

After pressing "Go", modify the curve and watch the text follow it. Shearing is also fun.

CORKSCREW PATH

This one shows how you can accomplish things with this tool that can't be done using motion path.

Draw a curve. Make it fairly long.

Put a sphere (or anything) about 0.5 cm away from the X axis in any view. Click Xform->Set pivot and use grid snap to put the pivot on the X axis.

Double-click on Follow Curve to bring up the option box, select "Transform->pivots only", and hit Go. Pick your curve. Click the "Go" button.

Get out the time slider. Grab the start indicator which should be sitting near the origin, and keyframe it at frame zero. Go to frame 100. Move the indicator to the end of the slider (or just select move and type 6). Keyframe it.

Turn on "Construction History Updates -> Playback Other Surfs" in the Performance Options. Play back the animation.

You can maximize the perspective view now. Select the original sphere at the origin. Go to frame zero and set a keyframe.

Go to frame 100, select Xform->Rotate, and type 2880. Set another keyframe. Now play back the animation.

You should see the sphere wind a corkscrew path around the curve as it travels.


updated Sun 15 Dec 1996 at 10:01 JST by Ka-Ping Yee (e-mail)
Valid HTML 3.2!