The Mathematica Journal
Departments
Download This Issue
Home
Feature Articles
Graphics Gallery
Tricks of the Trade
In and Out
Columns
The Mathematica Programmer
New Products
New Publications
Classifieds
Calendar
News Bulletins
Editor's Pick
Mailbox
Letters
Write Us
About the Journal
Staff and Contributors
Submissions
Subscriptions
Advertising
Back Issues

The Waterfall

Now we need to construct a waterfall with a parabolic shape that appears to connect the ends of the river. If we placed the waterfall apparently at the ends of the river now, these ends would intersect the aqueduct when interwoven. Interweaving consists of making mirror images of the graphic components about the y z plane. Due to symmetry, the left and right sides of the aqueduct will intersect unless translated along the line of sight. The waterfall is centered at [Graphics:../Images/index_gr_31.gif] in the helical portion of the river so that it stays centered during the final translations and avoids intersection. The waterfall will connect to the other river when interwoven.    

We want to form our parabolic waterfall in an imaginary parallelepiped with the same width as the river. The parallelepiped is centered in the spiral. To pick up the remaining dimensions of the parallelepiped, we will temporarily translate in [Graphics:../Images/index_gr_32.gif] and rotate about [Graphics:../Images/index_gr_33.gif] such that a horizontal on it is aligned with the white end of the river. The lower end is found by projecting the white end of the river along the line of sight until it intersects the near side of the parallelepiped. The upper end is found by projecting the other end of the river along the line of sight until it intersects the far side of the parallelepiped. Our parallelepiped is translated back to its original position, and a 3D parabola is formed inside.

The waterfall is rotated about the z axis so that it aligns with the endpoints of the river. Here are the positions along the x axis of the top and the bottom of the waterfall.

[Graphics:../Images/index_gr_34.gif]
[Graphics:../Images/index_gr_35.gif]

Here is the vertical rotation at pp3.

[Graphics:../Images/index_gr_36.gif]

Here is the calculation of the horizontal distance the waterfall travels.

[Graphics:../Images/index_gr_37.gif]

The vertical locations of the top and bottom of the waterfall are calculated by projecting the location of the center of the river along the line of sight to either side of the [Graphics:../Images/index_gr_38.gif] axis at a distance of half the range.

[Graphics:../Images/index_gr_39.gif]
[Graphics:../Images/index_gr_40.gif]

The height of the waterfall needs to be the following.

[Graphics:../Images/index_gr_41.gif]

A multipart function is used to define the path of the waterfall.

[Graphics:../Images/index_gr_42.gif]

Animation of the waterfall is done using the same technique that was used for the river. The waterfall is created by ParametricPlot3D, rotated by RotateShape (from Graphics`Shapes`) in the function fall.

[Graphics:../Images/index_gr_43.gif]

The river and the waterfall are combined in the function water.

[Graphics:../Images/index_gr_44.gif]
[Graphics:../Images/index_gr_45.gif]

[Graphics:../Images/index_gr_46.gif]

Figure 4.


Converted by Mathematica      September 24, 1999 [Prev Page][Next Page]