It started with a drawing. I'm not the best artist, but I've seen enough sci-fi movies to manage drawing an awkwardly angular fighter ship with a ruler. I got the idea for the shape from some images I found online.
The hardest part was figuring out which lines on one drawing connected and corresponded to which lines on the other drawing. The breakthrough came when I started labeling the points. Instead of thinking about lines and shapes, I simplified the problem down to connecting the correct points together.
The next step was a lot harder. The top view of an object still lacks a lot of information about what the object looks like, so I started drawing the side view. It's really difficult to make a drawing match up with its counterpart if I'm making everything up as I go. After labeling the axes, I realized that I had to keep the measurements on the Z axis the same on both pictures, but I could choose the Y and X measurements.
2D drawings are nice, but they're just drawings. I was sure that I could take the measurements from my two drawings, do some math, and create triangles that would allow me to build a 3D version of my ship. For each line on my drawings, I would take an X measurement and a Y measurement, use the Pythagorean Theorem, and get the true 3D length of the line. I thought that since both of my drawings also involved the Z axis, I could just measure my lines from both pictures to get the right lengths to create a 3-dimensional shape.
I got a lot of confused looks when describing this plan to other people. Yes! There are probably dozens of CAD programs that do this with ease, where I would be able to design a 3D object made of triangles directly into a 3D space, then isolate the triangles and laser-cut them, all without doing any math or measuring or drawing.
But that's no fun, and I don't have easy access to a program like that. I wanted to prove that it is possible to build an accurate 3D object from 2D drawings, by hand. The process is far more rewarding this way.
In order to measure the triangles that formed the base of my ship, I also had to draw the bottom view. The underside of the ship is a simplified version of the top, with only three unique triangles: NAM, NIA, and NIK. N is the point at the bottom of the ship, M is the point at the front, and K is at the back. Like the top, the shape of the bottom is symmetrical about the Z axis. That means all the triangles of one quarter of the ship can be duplicated to form the other quarter.
I took measurements from my drawings with a ruler, ran the calculations, created the triangles, and laser-cut them out of cardboard. Some of the "triangles" were actually 4-sided shapes made of two triangles. I also cut out the wings and the tails.
As usual, the first attempt was unsuccessful. My shapes didn't fit together well. I was able to identify where the cardboard triangles corresponded to the triangles on my drawings and what side lengths should have fit together, but when I tried to tape everything together I saw very quickly that my lengths were wrong. I could see that a triangle which should have been obtuse was actually acute, or vice versa. And yet all my calculations matched up with the triangles I had made. I hadn't made a clerical error. So what was the problem?
I used a program called VectorWorks to make my triangles. I was able to input 3 lengths and get that triangle with those side lengths. When I did this for all my triangles, I encountered an error several times, which said that the triangle I was trying to create could not exist. If two side lengths of a triangle do not add up to more than the third length, that triangle can't exist. I assumed this was happening because I had measured my side lengths with a ruler, from a pencil drawing I'd drawn on a piece of blank paper. So I would add a few more millimeters to one length, hope it wasn't too far off from reality, and move on. Clearly this was a reason for my initial failure.
To remove the human error from my calculations, I redrew my ships on CorelDraw, the software that I use at school for laser-cutting, and color-coded each line to match those on my paper drawings. This way, when I needed a measurement, I just clicked on the line and the program showed me the exact length I needed. The colors on one view don't match the colors on the other view because I rarely needed to compare the lines from one view to another, and I was able to use my paper drawings with the labeled points if I did need to make a comparison.
My two drawings show two different planes: the XZ plane (top view) and the YZ plane (side view). The planes are defined by the axes they show. Z is front to back, Y is top to bottom, and X is left to right.
It took a long time for me to realize the other major mistake I had made with the first ship I'd tried to make. I had assumed that my calculations were correct, but in reality I had simplified the procedure to a point that made it useless.
I was calculating the final side lengths of my triangles using the Pythagorean theorem, which usually requires an input of two lengths to output a third length. So I was measuring those two input lengths from my two pictures, plugging those lengths into the equation and getting what I thought was my final side length. In terms of the below pictures, I measured the purple and green lines, plugged those lengths into the equation as X and Y, and got what I thought was the real length IB.
As a mathematical equation, my initial process looked like this:
I have no idea what the resulting C value actually means, but it's not what I needed for this project.
What I really needed was to measure the length of the line on just the X, Y, and Z axes individually, then plug all three of those lengths into a modified Pythagorean theorem equation that requires three input lengths for one output.
The modified 3-input equation, with C being the real (output) length:
So to find the real length of IB, I plugged in the length of the red line as X, the yellow line as Y, and the blue line as Z. The Z line is identical on both drawings. When I built my final triangles, C for line IB is the length I used to create any triangle with side IB, such as triangles LBI or IBA.
Finding the real length of IB just happens to involve the lengths of BA and IA. There are other triangles that have X, Y, and/or Z lengths that don't connect to any labelled points on my drawings, like JB or LJ.
This shape, when folded at the lines AN and IN, forms a shape with lots of awkward angles that don't fit together with any other triangles.
Here's how wrong my math was the first time. Left, in pink, is the first try, and right, in blue, is the final, correct result. Both images are meant to form the same part of the ship.
This shape, when folded at the lines AN and IN, forms half of the bottom of the ship
Generally, all the lines are are found with that 3-input equation. Three separate lengths are found to calculate the real 3D distance between two points.
However, in the case of lines that run along the outer edges of my drawings, one of those lengths (X, Y, or Z ) is zero. Those are lines like AM, AI, and IK, (purple) which use only the XZ plane, or KH, HG, and GD, (green) which use only the YZ plane. There are also lines like AB, BC, and BC (orange) which technically use the XY plane. I didn't draw this plane because the information (X and Y lengths) is on the other two drawings already.
The final list of unique shapes is: NIA, NIK, NIM, PLO, GHJ, BIA, LIB, FDC, JCB, GDCJ, ABEM, CBFE, KLHJ, AIQRST
The first three make up the bottom of the ship. The fourth, PLO, defines the tails of the ship. I'm not really sure what they would be in a realistic model, but I thought they made my design look cooler. The rest of the shapes make up the top of the ship, all visible in the XZ plane (top view).
The last five shapes are not triangles, since they are defined by more than 3 points. Four of them are quadrilaterals, and the last defines the wing of the ship. The quadrilaterals are each defined by two unique triangles. For example, ABEM was made by laying the AEM and AEB triangles next to each other with their identical AE sides touching. The wing was made the same way, but with four unique triangles instead of two.
Here, the construction of all the shapes is visible. The five shapes made of multiple triangles are the shapes with lines crossing through them.
The above list of shapes only creates half the ship, so every shape must be duplicated and mirrored in order to form the full ship.
When all the shapes are correct, the ship can be put together in any order. I found it easiest to build the bottom first, then the front, then the back, and finally put all three parts together. Once every point is labelled, it's simple to construct the ship, since it's just a matter of connecting all the corresponding points.
The completed bottom, front, and back
The back attached to the bottom
Attaching the front
The below pictures can be printed out (they've already been mirrored) to create a full 3D paper spaceship. It's important to pay attention to which version of the shape goes on which side of the ship, and there's really no way to tell without looking at the drawings. It will be really obvious if something is wrong, because the shape won't work out. When complete, all the label letters should either be all on the outside (visible) or all on the inside (not visible) of the ship.
The lines KH, HG, GD, DF, FE, EM, MN, and KN all attach to their mirrored counterparts. In other words, those lines separate the two halves of the ship, and run along the plane of symmetry for the ship. That's the YZ plane, and these lines are shown by the green line that runs along the outer edge on that drawing.
Other than seeing that all the shapes fit together, I can also check that I've done the math correctly by viewing the ship directly from the side or top. From those specific angles, my 3D ship looks exactly like my 2D drawings.
Above, laser-engraving the letters onto cardboard so the pieces can be cut afterwards.
Below, the large cardboard ship, about 2.5 feet long.
Above, all the pieces cut from cardboard at a larger scale compared to the paper ones.
Below, side view of the large cardboard ship.
One of the fun things about this project is that it's scalable. I could laser-cut huge pieces out of wood or cardboard and build the spaceship several feet long. If I cut the pieces myself, or cut each piece into smaller pieces that would fit inside a laser-cutter, I could make a life-size ship! I could make most of it out of wood and make the cockpit out of plexiglass so it feels realistic, or make a bunch of tiny versions out of cardstock and create an entire fleet of ships.
There is still a bit of error in my calculations, and as I made larger and larger versions that error would be accentuated, so I'm not sure how well a giant version would work. Still, it might be worth a try. Now that I have a better idea of how to do this, I might make a new design and see if I can recreate the success I've had.
Take a look at my Notebook Pages for a complete set of side lengths and calculations, if for some reason that seems interesting.