On Perspective
An interesting feature of digital modular design the ability to view the object in two different viewpoints. As we perceive the real world as humans, our vision is slightly warped from our perspective.
Objects further away appear smaller and, as the artist Fillipo Brunelleschi discovered in the 15th century, are subject to alignment to a vanishing point. To visualize this, imagine standing on a pair of train tracks which run straight away from you towards the horizon. From your perspective, they appear to converge into the distance even though you know that they run parallel.
Within the computer we can opt out of this perspective view and inspect objects orthogonally which will present the object, its angles, and its dimensions exactly as defined. To understand the architecture behind this, an understanding of parametric object design is necessary.
Parametric Design
In nearly all popular digital design programs, the method of construction is parametric. The user defines points, distances, and shapes by setting parameters or boundaries on where these points reside, distances extend, and shapes end. These definitions are both logical and relatable on a three-dimensional Cartesian plane.
For our example, the following simple code block defines a cube in the primitive design software OpenSCAD. At the location [10,10,0] we place a six-sided polygon with the measurements along each vector of the XYZ plane of 10 units, 12 units, and 8 units respectively. Finally, we provide a boolean to define the nature of the object’s placement at that location. By indicating that the center is “true”, the center of the object rests at the defined location (10,10,0). Accordingly, if this was indicated as “false”, the program would position the object to project from the defined location.
Orthogonal versus Perspective
Now that the object has been defined, a render command shows the cube in the display window. Consider the two objects below: the first being our polygon in an perspective view and the second being orthogonal.
Though these images are quite similar, there is a noticeable difference in the angles and lengths of edges. Important to note is that in the orthogonal view each line and angle is exactly as defined meaning that the projection which we see is as the computer sees it.
The projection of a 3-dimensional object into a 2-dimensional space (your computer monitor) causes a slight warping when we shift to the perspective view. By definition, creating a perspective view requires another data input, this being from the user/viewer. OpenSCAD, when there is a change of viewpoint, automatically updates the field with the vector from which the user is viewing and aligns the model’s shape accordingly, allowing us to perceive the object as we might in the real world.
A slight mention was made of this difference in the CubeUp project.