Cam Action

In the real world changing rotation to linear motion with a cam is pretty
straight forward, but in a 3D program it's always a different story.

For this action I could just keyframe both objects separately,
but there's another way to use the actual shape of the cam...

rotcam2b.gif
 
The first thing to do is make the cam shape with
a Spline and keyframe a 360 degree rotation.

All objects created with Y as the axis of rotation and viewed from the top.

spline_rot.gif
 
Last edited:
Now I make a sphere, put a Spline Tracking Tag on it targeting the spline.
Then keyframe the Tag to rotate around in the opposite direction.

Here it is without the spline rotation:

spline_track.gif
 
For the cam follower, or lifter, I used a cylinder with a Parent Constraint Tag.
The Tag targets the ball on the Spline Track, and restricts motion to the Z axis.

The Spline Track object aligns with the center of the cylinder, but the Tag lets you offset that point.

parent_constraint1.gif


parent_constraint2.gif


The lifter action can now be fine tuned by keyframing the Spline Track objects timeline...
 
You could animate the Parent Constraints offset parameter but it's better
to edit the Spline Track keyframes instead of keying another object.

track_tuned.gif
 
I´m not sure if it´s somehow necessary - but keeping the ball on top in place seems quite tricky:
EggRotation.gif

I thought the amount of nodes may have some influence - so I´ve drawn it in Inkscape and placed 100 control points evenly around the egg shape with no effect:

EggShape.png
 
I´m not sure if it´s sehow necessary - but keeping the ball on top in place seems quite tricky:
Hello,

Certainly an interesting exercise, but keeping the contact point centered left-right is counter productive to reality. Note that, when attempting to keep the contact point centered, the “contact point” is no longer always the point on the cam that is the “tallest”.

Zoohead’s method shows what happens with an actual cam and follower/lifter. The contact point is always the tallest point of the cam and travels left and right on the face of the follower/lifter.

cheers,
gsb
 
I´m not sure if it´s somehow necessary - but keeping the ball on top in place seems quite tricky:
It is a bit tricky, but it's not essential that it's perfect, even if the contact point was... a point.
Since it's a wide surface, the cam strokes across the entire face.

I do wonder if there is another way to keep the ball in place, it may be necessary for other things.
 
I used a Loft Creator with copies of the Spline to make the polygon based
cam and then selected an edge to use with Hiroto's PolygonToSpline script.

Then with the resulting Bezier Spline, I use the Smooth Interpolation command
and set the Approximation Angle to 1 to get more spline sections.

I used an Extrusion Creator to show the extra spline sections:

Cam Spline build.jpg
 
Back
Top