9758

Lissajous Art

With this Demonstration you can create interesting ribbon-like surfaces. The technique of superimposing two surfaces or connecting two curves to create a ribbon-type surface results in some very aesthetically pleasing and artistic designs not seen in any other Demonstration. The program is based on generalized three-dimensional Lissajous curves. Several additional options increase the freedom of artistic expression available.

THINGS TO TRY

SNAPSHOTS

  • [Snapshot]
  • [Snapshot]
  • [Snapshot]

DETAILS

General Controls
"lighting" setter bar: three types of lighting are provided.
You can increase the plot range with the "plot range" slider (it can also be used to zoom).
You can choose to display a square "floor" showing the plot range in the - plane by checking "floor".
Check/uncheck "axes" to display arrows for the axis (red), axis (green), and axis (blue).
"background" lets you select the background color.
"curve number"
Here you choose which of two curves you want to edit.
"show both": this lets you select whether you want to see the current surface only or the current surface as well as the stored second surface. (Remember that only the selected curve can be edited.)
"store/restore/copy/reset" setter bar
"save": stores the current settings to the storage of the selected curve.
"restore": restores the curve settings from storage.
"copy": copies the current settings to the storage area of both curves.
"reset": restores the currently edited curve to its default settings.
"surface" checkbox
If the option "surface" is selected, the curve is connected to the origin with many triangular polygons, and thus a warped surface is created (see also the description of "width" below).
"lines" checkbox
The option "lines" only has an effect if "surface" has been selected.
If the option "lines" is selected, each vertex is connected to the origin by a black line. Also, a black rim runs along the curve.
"rim" checkbox
If the option "rim" is selected, a black rim runs along the curve.
"colors" selection
This defines the colors of the surface. A smooth color transition is used from the first color to the second and back to the first.
"width" dropdown menu
If "width" is set to 1, then the surface (if selected) covers the area between the origin and the curve.
If "width" is not 1, then the surface is the area between the curve and a second, similar, "sister" curve that is positioned between the original curve and the origin. Technically the sister curve is created by multiplying each vertex with the factor "width".
Explore what happens when you set the width to very large or very small values!
"effects" checkboxes
First checkbox: if "width" is not 1, selecting this "effect" option creates an effect like sun rays. Instead of a ribbon, the area between the two sister curves is filled with a series of triangles.
Second checkbox: when the surface is being created, only every second quadrilateral (or triangle, if the first checkbox is selected) is shown. Thus the surface created consists of a series of parallel stripes.
"opacity" slider
Defines the opacity of the surface.
"frequencies" dropdown menus
The coordinate of the vertex of the currently edited object is calculated as
,
,
,
where are the "frequencies" selected from the dropdown menus, and "detail" is also selected from the associated dropdown menu.
The factors and so on (which are either 1 or 0) have been introduced in order to enforce that the components with frequency 0 are ignored. So effectively we have
.
The variable counts the number of edges on the rim of the object. Hence it runs from 1 to the selected "edges" value.
The higher the selected "detail", the smoother the curves and surfaces will be.
"rotate curve" sliders
These sliders control the rotation of the curve in space.
First (slider "rot x") the curve is rotated around the axis by the given value (in degrees),
then around the axis (slider "rot y"), and finally around the axis (slider "rot z").
"connect curves" Controls
"connect" checkbox: this creates a ribbon-like surface between the two curves.
"lines" checkbox: paints the boundary of small polygons (which make up the ribbon) black.
"rim" checkbox: paints boundary of ribbon black.
"colors": defines the colors of the ribbon. A smooth color transition is used from the first color to the second and back to the first.
"width" dropdown menu: defines the width of this ribbon. The default value is 1, which means that the ribbon connects both curves. Smaller values create a more narrow ribbon. This more narrow ribbon still connects to the current curve, but does not connect to the other curve anymore. Explore what happens when you set the width to very large or very small values!
"effects" checkboxes:
First checkbox: checking it connects the curves with a series of triangles.
Second toggle: only every second quadrilateral (or triangle, if first checkbox is selected) is created. Thus the connection between the curves consists of a series of parallel stripes.
You cannot store or restore these "connect curves" controls.
Hints
If you selected integer values for all frequencies, you get closed surfaces by setting "edges" equal to "details".
If you selected a half-integer frequency, you get closed surfaces by setting "edges" to twice the value of "details".
If you selected frequencies as multiples of .1, then you get closed surfaces by setting "edges" to 10 times the value of "details".
Smooth color transitions need an associated single run through the parametrization of a closed curve. Therefore, if one curve uses integer frequencies, for nice color transitions it is best to select integer frequencies for the second curve as well; similar for half-integer frequencies, and so on.
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.









 
RELATED RESOURCES
Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and
interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Step-by-step Solutions »
Walk through homework problems one step at a time, with hints to help along the way.
Wolfram Problem Generator »
Unlimited random practice problems and answers with built-in Step-by-step solutions. Practice online or make a printable study sheet.
Wolfram Language »
Knowledge-based programming for everyone.
Powered by Wolfram Mathematica © 2014 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+