Squiggle Art

Requires a Wolfram Notebook System

Interact on desktop, mobile and cloud with the free Wolfram CDF Player or other Wolfram Language products.

Requires a Wolfram Notebook System

Edit on desktop, mobile and cloud with any Wolfram Language product.

This Demonstration lets you create your own piece of colorful abstract art by using collections of B-spline curves, which often look very much like badly written signatures or squiggles.

Contributed by: Karl Scherer (July 2015)
Open content licensed under CC BY-NC-SA


Snapshots


Details

Introduction

Each B-spline curve is defined by a set of "control points".

The first control point of a B-spline curve is also the first point of the curve.

The last control point of a B-spline curve is also the last point of the curve.

Select "one current curve" and "show control points" to see how the other control points control the shape of the B-spline curve.

Controls

"project" Click popup menu "project" and setter bar "" to show 20 sample paintings.

"zoom" Allows you to zoom in and out.

"save/restore" Allows you to store and restore your project.

"shift left, right, up, down" Click one of the arrows to shift your painting left, right, up, or down. Click "0" to reset your painting to its original position.

"bg" Use "bg" to select a new background color for the current project.

"number of curves" popup menu Displays the number of curves in your project, which you can change. If you choose a lower number, then the curves with higher sequence numbers are deleted. If you choose a higher number, then the system generates new curves with random control points.

"curve" popup menu Select the B-spline curve you want to edit. Its color is shown and can be changed.

"rc/rp/rp*" setter bar

Click "rc" to randomize the colors of all curves. Click "rp" to randomize the positions of the control points of this curve. Click "rp*" to randomize the positions of the control points of all curves.

"shift left, right, up, down" Click one of the arrows to shift the curve to the left, right, up, or down.

"rounded" Click to use round cap forms (ends of curves).

"only current curve" button The system will only show the currently selected curve (this is useful for editing the curve; see "show controls").

"show controls" The control points are locators: you can drag them, add more, or delete them. Note that all curves of a project have the same number of control points!

"opacity" slider and "*/r" setter bar This controls the opacity of the curve. Click "*" to apply the current opacity to all curves. Click "r" to apply a random opacity to all curves.

"control points" All curves of a project have the same number of control points! (Select "show controls" to see them.) If you select a smaller number, then all curves have fewer control points. If you select a larger number, then the system creates random additional control points for all curves.

"thickness" slider and "*/r" setter bar Select the thickness of the curve. Click "*" to apply the current thickness to all curves. Click "r" to apply a random thickness to all curves.

"from/to" With "from/to" you select a range for the thickness of the curve; used by the "r" thickness option above.

"ends" color swatch , two toggles, and "col */r" setter bar With the swatch you can select a color for the decorative disks at the ends of each curve.

Two toggles: here you can choose to decorate the start or end point with a colored disk.

"col */r" setter bar: Clicking "*" will color all curve ends with the current end color. Clicking "r" will create random colors for all curve ends.

"ends size" popup menu and "*/r" setter bar "ends size" defines the size of the colored disks at the start and end of the curve.

Click "*" to apply the current size to the decorative disks at the start and end of each curve. Click "r" to apply a random size to the start and end of all curves.

"morphing" Controls the "morphing" of each curve with the next. For example, "morphing 10" will cause the creation of 10 additional curves between any two consecutive main curves: from first to second, from the second curve to the third, …, and finally from the last to the first curve. At the same time, the colors, opacities, and thicknesses of the curves are blended.

"action" popup menu: various additional controls "start numbers": the sequential number of each curve is displayed next to the starting point of the curve. Click "start numbers" again to hide the sequential numbers.

"connect": concatenate all curves: make the last point of curve 1 the start of curve 2 etc.

"p1={0,0}": make {0,0} the starting point of all curves.

"to top" moves the selected curve to the top of the project.

"copy" creates a duplicate of the selected curve at the same position.

"upside/down" switches the current curve upside down.

"left/right" left-right reverses the current curve.

"up/down*" switches your project upside down.

"left/right*" left-right reverses your project.

"rot 3," "rot 4," "rot 5," "rot 6," "rot 8": example: clicking "rot 6" will create 5 copies of the current curve, arranged around the origin (center of the board).

"delete": click to delete the selected curve.

"delete <": click to delete all curves from the first one up to the current curve.

"delete >": click to delete all curves from the next one (after the current) one to the last.



Feedback (field required)
Email (field required) Name
Occupation Organization
Note: Your message & contact information may be shared with the author of any specific Demonstration for which you give feedback.
Send