Basic Geometric Actions
Action! There are numerous basic actions. You have already seen some of them for the computer version in the previous chapters, but in this section we'll re-examine these, add several more, and work through some of the physical implementations off of the computer. For completeness I begin with the four most basic actions: point, circle, line segment, and arc:
The first three of these have been used extensively in earlier chapters. The dot is drawn at the location of the cursor, the circle is centered at the location and of radius "side", and the line segment is in the same direction and of the same magnitude as the "move forward" command. The arc is of the same center and radius as the circle, but it goes from one of the cursor wings to the other. This vastly increases the scope of what can be done with Geometron on the computer.
Here is the letter "S" as well as the glyph spelling:
And here are interlinked rings made with various lengths of arc.
And here is the beginning of a binary spiral:
These are the only geometric actions which are part of the core permanent commands in the current computer version. Others will be dealt with shortly.
Symbols
A core element of Geometron is the symbol/action dichotomy. One can think of them as nouns and verbs. Each action is represented by a symbol, and each symbol is made up of actions. Those actions in turn can be described by a sequence of symbols. This sounds complicated but that's what a real human language looks like when looked at accurately. This paragraph is itself an example of such a conceptual quagmire.
I've already been using symbol glyphs throughout this book but will now try to make some more formal definitions and clearer examples. The word "glyph" is used to denote sequences of actions which might be either symbols or not. Symbol glyphs are contained in a square of size equal to whatever "side" is at the time that that glyph's action sequence is invoked. Part of the sequence is to move the cursor one "side" unit to the right if we assume that forward is in the "up" direction. This is all relative, making it very natural to print sequences of symbol glyphs in different orientations and sizes. Here is an example of that:
Physical Geometron
The simplest physical implementation of Geometron consists of tracing simple geometric shapes onto paper, coloring them in, cutting them out, and laminating them with packing tape. The basic shapes are square, equilateral triangle, golden triangle(72 degrees), and isosceles right triangle. With these, a huge range of figures can be constructed which are the same on paper as what we are building on the computer with the web browser based version.
Images for constructing all the basic shapes go here
instructions for building various figures with basic shapes go here
Printers using trash, photos and examples here
Flag Markers
Flag markers are a concept familiar in many situations in the physical world, which Geometron attempts to unify into a single language across platforms. The idea is that it makes sense to be able to drop a marker at a given location, then return to that marker later, and to have a single command to do so. By default Geometron has four markers, each indicated by a flag with a polygon on it. Those polygons are: triangle, square, pentagon and hexagon. The symbol glyphs to drop a marker have an arrow pointing down and the symbols to return to a marker have an arrow pointing sideways at the flag itself. Here are the symbol glyphs:
By default all these do is store a location(the x and y values) of a point. One of the numerous ways Geometron can and should be modified by users is to add or subtract data from the save point as needed. One might want to store the value of "side", "theta" and "thetaStep" for example. However one reason that the default is just position is to make it as much like the various physical implementations as possible.
The reason that a flag is used is that it represents one of the most intuitively obvious physical implementations, where the user literally plants a flag. In this case, the triangle, square, pentagon or hexagon is drawn or painted on a piece of paper, which is taped onto a piece of cardboard which is taped to a stick attached to a tensegrity tetrahedron(discussed in a later chapter).
Word Stack and Table
The way Geometron handles words from human languages is different than most other languages, but similar to how Geometron processes other types of information. A global variable is used in the code called "currentWord", which has the value of some word or phrase represented in ASCII code. In a physical implementation this might be something like a physical stack of words cut out from a mass produced piece of junk mail deposited with a tool.
Closed Paths
One of the big picture goals of this work is to create a smooth path in workflow between the art side of design which goes on websites and in presentations with the engineering design side which gets sent to a factory for fabrication. There are numerous complicated and proprietary pieces of software used to turn shapes on a computer screen into things made of metal and plastic. One thing they tend to have in common is the need to create shapes that are "closed" in the sense that they're not just a series of paths which connect but there is some sort of specific command that connects the start point to the end point, telling the machine that the path is indeed closed. When a path is closed, we add a series of diagonal line segments to the bottom of the symbol glyph.
Here are some symbols with filling:
Also, in order to make closed paths it makes sense to have a command to start and another one to close a path. These are:
The detailed aspects of these commands will need to be tweaked by the user for any given application, but for the most part as long as a closed path can be exported in .svg format it can be imported into just about any other software. That is part of the default javascript implementation, which is documented in detail elsewhere(and avoided here to avoid confusion for those who don't want to work with code).
Color, Layer, Material, Texture
In many contexts, both virtual and physical, it makes sense to have some type of "layer". In software this could be stroke width, fill color, stroke color or some other type of style. In physical fabrication it might be the "layer" in circuit design. In maps of a building, layers are floors. In some cases maps have layers indicating different types of item such as food, tourist destinations, banks, subways, etc. In generalized three dimensional fabrication of objects from trash(another primary goal of this work), the layer might refer to different materials from different feedstocks, such as various plastics and metals.