This is a project I've had in the back of my head for more than a year now. Every few months it'd resurface and I'd jot down some dimensions, look into materials, and inevitably get distracted by life. A week ago I had totally open weekend and decided that it was time. Unfortunately I didn't pause to take progress shots, but the vast majority of the techniques are the same as I used in the deckbox and land station. The corners are miter joints, the "floor" and lid are set into 1/8" deep rabbets all the way around, and the dividers simply slot into 1/8" deep dados on both sides.
Materials-wise, I stuck with maple for the frame, with bird's eye figure this time, ceder for the dividers, and baltic birch plywood for the lid and floor. The ceder was a lot softer than I anticipated, but I don't expect much wear on the dividers, and the smell is amazing. The inlay materials are cherry veneer, three colors of paua shell veneer, and five semi-precious stones (being pearl, blue onyx, onyx, carnelian, and malachite).
After sanding to 600 grit the maple and cherry got a coat of danish oil, producing a lovely warm and deep look, but I found in testing that the plywood looked miserable and blotchy with that approach. I ended up going with a few layers of spray varnish and a final sanding with 600 grit and ultra fine steel wool on the plywood, giving it a satin feel and slightly warming up the color without any of the blotching.
Laser cutting the lotus pieces (sorry for the vertical video, I know)
The veneers and lid-inset were all laser cut, requiring six different cutting patterns to get everything matched up and at the right burn-depth. Needless to say, some experimentation went into this process. An additional mini-project came out of this testing as well, which I'll post later on!
Dry fitting inlay
Dry fitting the shell veneer
The veneers were attached with a thin later of Titebond I (I know there are better glues, even just TB III, but I didn't want to put off this project for another week) and clamped with wax paper for an hour. The same spray vanish and rub-out procedure was used on both sides of the lid, giving it a wonderful feel. Finally the stones were secured with a drop of cyanoacrylate super glue each.
Beautiful maple figure on the front
Nice even rows, glue just dried!
A head-on shot of the final result
While this project was only a marginal step up in complexity, I still learned a ton while working through it. While every small mistake and blemish that ended up in the final piece stand out a lot to me, I'm still really happy with the result!
Note - I'm working on getting all the stencils I've generated into a consistent format, as I do intend on posting them here! It could take a bit, but I wanted to get these shirts and the process post up this weekend. Also, I definitely don't own the original images, they're posted here only for illustration / education purposes.
These might be the last shirts for a while, been on a bit of a tear with them lately. The shirts used for these two (depicting Etched Oracle and Sheoldred, Whispering One) were Hanes Premium X-Temp V-necks, which yielded a more orange color when bleached. To not bury the lede too much, here are the final results!
Sheoldred completed shirt
Etched Monstrosity completed shirt
At this point I've settled into a workflow for generating designs from art, which breaks down into five steps -
Original art - Etched Monstrosity
First, isolate the subject. In GIMP I end up using the lasso-select tool and color-select tool as necessary to delete the background. This can take a while if the edges are hard to see, or if the subject blends slowly into the background, like Sheoldred does.
Second, create two new layers. The first is a block of black that fills the entire subject, providing a silhouette for later, but is kept "off" for the intermediate steps. Second, a "highlights" layer that sits at the very top of the stack for providing the "gaps" between pieces. These gaps create depth in the final design by allowing objects to pass behind each other, so it's important to grok how the original image is arranged.
Third, as the art on most cards is cropped by the frame, as need to expand the canvas enough to complete the figure. This usually means adding feet, tendrils, arms, etc. so the finished shirt doesn't have an artificial "frame" imposed on it.
Blocking layer with extensions
Fourth, and most time-consuming, adding the gaps. On the highlight layer I've settled on using 3-5px wide pencil and pen-curve tools to trace out the boundaries of each piece. Inevitably there's some iteration as I apply these at high zoom, and have to zoom out to make sure it all still parses at a distance.
Completed with highlights
Lastly, moving the file (usually in png format) over to Adobe Illustrator, to convert it all into paths. I fell into using the "black and white logo" setting on live trace as it has produced good results so far, but your mileage may vary. The only thing left to do at this point is to expend the resulting object into paths, un-group them, and delete the unnecessary segments. For me, this usually means retained islands of white. If kept, during cutting the laser will attempt to cut the boundary multiple times, isn't ideal.
For the cutter I'm using it expects vector cuts to be 0.01 pt black stroked paths, so I set everything to that and no fill color. I've also found that the speed-power-frequency settings needed to produce good results is about 80/5/2500, on a 150W cutter. After cutting the pieces of freezer paper are taken back home, and the host-shirt is laid out on an ironing board. After centering things up, I can start placing pieces and "gluing" them down with brief contact from a hot iron. Be sure to check you don't iron the wrong side of the paper, it WILL glue itself to your iron. Both of the patterns in this post took about 45-60 minutes to position all the fiddly pieces, tweezers were definitely a must. I've dropped an in-progress shot below.
Placing so many pieces
After it's all ironed down, a plastic poster-holder is slotted into the shirt to prevent bleed-through and bleaching of the back surface, and it's set outside either on the concrete or a protected work surface. I've settled on 4-6 fine sprays, quickly dabbing the excess off of the papered regions with a paper towel, followed by a five minute wait. I did that twice for each of these, followed by a minute or two agitating it a bucket of ice water to halt the bleaching. The water definitely turned orange. Lastly they were both thrown into the washer for a short cycle and dried. That's the whole thing!
This is a short post, but I did want to show off the Phyrexian Obliterator shirt I made, as I managed to get it signed by Todd Lockwood (the original artist) at Emerald City Comic Con this year! There are two big differences between this and the previous designs I'd done. First was the sheer number of independent pieces of wax paper that had to be positioned relative to one another, thankfully I was able to position and then "fix" a few pieces at a time, and they were generally well behaved. Second was the amount of pre-processing that went in. Rather than starting with someone else's stencil, I started directly with the card art, first isolating the beastie from the background, and then adding breaks to highlight each plane of depth within the image, and eventually pushing it all to illustrator to generate paths. The laser cutter also had a bit more power than intended, so a few pieces that came out charred had to be re-made by hand with a hobby knife. That all said, I'm really happy with how this came out! Now that it's signed, I'm not sure I'm going to be wearing to on the regular, but might try to frame it somehow.
A quick update; I cracked out another bleached shirt, this one based on the moogle-in-magitek-armor image by DeviantArt user Camac, straight out of FF6 for the SNES. It took some tweaking to make the pattern contiguous for the laser cutter, but not too much. A quick observation: the brand of the shirt seems to have a big impact on the minimum realizable feature size. We couldn't find the soft fancy v-necks we'd been buying, so settled on a four-pack of Haynes crew-neck shirts. They're comfy enough, but noticeably thinner and bleached substantially faster (think 10-20 seconds rather than 2-4 minutes to transition from black to maroon-pink). I stuck with the same freezer-paper and ironing method I've described previously.
For future patterns on these shirts I'll probably aim for thicker features and a finer spray at a larger distance, as I'm not totally happy with the the blurring on this one. Still, more SNES nostalgia is always good.
This past weekend I was able to take a class on jewelry and metalworking at The Crucible in Oakland; the tuition was covered as a Christmas gift. I thoroughly enjoyed the class, and learned enough to produce the rings shown below with minimal guidance. We covered stamping, sawing, filing, rolling, soldering, and finishing;the metals we worked with were silver, copper, and brass (primarily for cost reasons, gold is even more insanely expensive than I remembered.) The first ring in the gallery involved a lot of sawing and drilling, which I still need to improve with, as well as eight hard solder joints to hold the copper bits inside the silver voids. There were additional pieces generated during the stamping and embossing tutorials, but I'll keep the post here to the rings. My only frustration with the class was how quickly I ran out of ideas. I really wish I had walked in with a pile of concepts rather than just one or two! Definitely looking to obtain some of the tooling to continue this sort of work at home, and combine it with my lapidary / faceting aspirations.
Silver and copper ring - Roughly a DNA double-helix
My second real project in wood, a commander-sized deckbox, represented a step up in joint complexity and wood quality. I also had to deal with an unexpected issue, namely wood movement. The board of curly maple was purchased months ahead of time, with a couple different ideas in mind, and during that interval it went from a beautifully flat and square board, to a pringles-chip shaped board with slightly off-true edges. Had I been more motivated, I suppose I could have use a hand plane and pared it down to flat. With time at a premium, and a deep conviction that clamping and gluing can do amazing things, I did my best to roll with it.
I also tried to remember to take process photos as I went, not only to share here, but also for my own benefit the next time I kick off a project. The basic design was pretty simple: rabbet joints, rabbet joints everywhere. The four vertical walls of the box all get an eighth-inch deep 3/4 inch tall rabbet along their bottom edge to accommodate a beefy cheery base, and additional rabbets along the vertical edge for the left and right sides. One concern from the outset was the stability of cutting an eighth inch of material away from panels only a quarter inch thick, but going slowly, it did work out. Additionally, an eighth inch deep, quarter inch tall, slot was cut into the back and side panels to allow for a side-in lid. It's worth noting here that the lid had to be subtly tapered by sanding the edges meant to mate with the slots to allow for easy movement.
The raw materials were a 24" x 5" x 0.25" board of curly maple, and a 3/4" thick board of cherry (which I'd previously been using as a backstop to prevent tear-out when sawing). Both boards were wider than my miter box would allow, so I ended up using clamps and the straight edge of other boards to establish the cuts. In the photo below, the saw is neatly guided by straight-edged stock on both sides.
All the pieces
With all the pieces cut, the front panel (notably 0.25" shorter than the others, to permit the lid to slide out) was off to the laser cutter. I should also note, the design is not mine, it was found here, and was simply too cool to pass up. Maple takes laser engraving very well, and even grey-scale depth features were rendered very well.
Unfortunately I forgot to take any photos during the routing step, but they were all executed with a 0.25" flat router bit at medium-low speed. For the finish, I wanted the grain to really pop, so I used the remainder of the board as a test piece (seen far left in the photo below). The top portion of the test piece got two coats of diluted anoline dye, then two coats of Danish oil, while the bottom simply got the oil. I settled on dye+oil again, but in retrospect should probably have gone darker (less dilute) on the dye. The blue-taped areas, aside from the test piece, were to exclude oiling the gluing surfaces.
After a brief dry-fit, gluing and clamping went on for two days. I did have to make a second pass, as a small gap opened up in one of the corners, but after that it looked good.
Gluing and clamping
Finally, here are some photos of the final product!
I probably won't rely so heavily on rabbet joints in the future, but this was super instructive in the difficulties and details of executing them. Also, this came together more quickly than the first project! As I get my basic skills in line, things go a bit faster and smoother, but there's still seemingly infinite room still to grow.
I've been playing around with the idea of woodworking for pretty much the whole year now, watching videos on YouTube and tearing through a few books on the topic. I did a few simple projects leaning heavily on the laser cutter to do all the operations, but that isn't really woodworking. I finally decided to put together a land station, that is, a box for people to grab basic lands on those rare times a draft comes together!
The design is fairly simple, four planks of wood for the sides of the box, with 45 degree mitred edges, and four dados (slots) for dividers, plus a flat plank as a bottom. The dimenions of a card are (roughly) 3.5 inches tall, but 2.5 inches wide, and I ran with those for my first attempt. Trying to put a 45 degree miter along a 3.5 inch edge with a hand saw was a losing battle, and the prospect of putting in eight dados with a router plane (something like this) sounded frustrating. After quite a bit of hemming and hawing, I eventually bit the bullet and bought a router, some bits, and a table for it. While there was a sale going on at the time, I certainly had to convince myself that I'm excited for more than this one project.
The dimensions were driven in part by the cheap wood I had access to, namely long planks of quarter-inch thick, 3.5 inch wide pine. I kept the height and stuck with a single thickness to simplify the sawing operations, which are harder than they look. I ended up using a cheap clamping mitre box to establish a perpendicular cut line, and then clamped the piece to a heavy piece of scrap for the remainder of the cut to prevent tear-out (an issue that frustrated me enormously at first.)
My initial design had tolerances that ended up being too tight, and it was going to be impossible to get the cards in and out. The final dimensions of each piece are laid out below. The critical number turned out to be 2.75 inches - the width of the empty space (measured from divider edge to divider edge, not centers) for each card "lane". If that sounds a little too big, it's because it is, but a small error one way or the other won't prevent cards from getting into or out of the box. In the future I'll probably shave 1/8th inch off that value to reduce card "jiggle" in something like a deck box.
2x sides (L/R) - 3.5" x 5.5" x 0.25"
2x sides (F/B) - 3.5" x 15.25" x 0.25"
1x bottom - 5.5" x 15.25" x 0.25"
4x dividers - 3.5" x 5.25" x 0.25"
The dados to retain the dividers are 1/8th (0.125) inch deep on the front and the back, and were cut with the fence fixed to ensure they ended up aligned. I had to make up a 90 degree jig by clamping some heavy blocks to cut the furthest-in dados, as the fence can only move about 5 inches back from the bit, but it worked well enough. The mitres were put on with a 45 degree router bit, over many passes to carefully creep up on the proper depth. Once all the cuts were done, the front panel was off to the laser.
The pattern was generated using the vector mana symbols generously posted by Goblin Hero over at Slightly Magic, they had just to be scaled and moved around to fit the panel. I put down some masking tape to prevent resin deposition on the wood, but it also seems to have caused some line-artifacts in the final cut, likely due to "thick" overlaps attenuating the beam. In the future I'll probably avoid using tape and just sand the surface clean afterward, as the residual adhesive also looked to interfere with the dye and oil in a few places. For reference, it was cut on an Epilog Ext36 150W in raster mode at 600 DPI, 100% speed, 70% power, in a single pass.
Cut pieces laid out for dry-fitting
After sanding all the sides with a ~250 git sanding sponge, the sides and panels were glued together using titebond and a 90 degree clamp, something I didn't even know existed before needing one. I was able to snugly fit in the divider into the back without glue, and press the front panel on for gluing.
Gluing the front panel (bottom is not attached)
After letting it dry over night, I was ready to dye and finish it. I'd experimented with some scrap wood from the same boards to see how the dye and oil finishes would look, and settled on Transtint golden brown diluted in water, and a Danish Oil finish. I applied the dye carefully, given all the warnings it comes with, and gave it plenty of time to dry. Then the oil finish went on and took all night to set, I opted for a single layer as I wasn't looking for a shiny or silky appearance, just sealed. At this point I finally glued on the bottom and gave it a few hours to set.
Nest of clamps
Finished land station
It definitely took a lot more time, effort, and learning to finish this than I anticipated, but I am happy with how it came out. I've already gotten a lot of good suggestions for improving it (e.g. cutting semi-circular access holes at the front of each row so you can always get at the cards, also adding a lid isn't a bad idea), but will probably move on to other projects for the time being. The next on my list is a commander deck box, and after that, a substantially more intricate box for my cube to live in. I've got to spread out that tooling cost somehow!
With a whole week off around Thanksgiving, Ouliana and I finally had time to test out a method for templating bleached shirts we'd seen online. It needs freezer paper, which as far as I can tell is butcher paper with wax on one side only. The plan consists of cutting out your pattern, and ironing the waxed side onto the shirt, applying your bleach-water solution, and peeling off the mask. The twist being that cutting precise patterns is a pain, but a laser should be able to make quick work of it!
For the pattern, I came across this image of Samus from the Metroid games, posted by terrorsmile on DeviantArt. I wanted the pattern to be a true stencil, meaning having at least one totally contiguous region to be the "mask". That took some doing, about an hour of work in GIMP, but I ended up with an inverted stencil that could be cut without producing "islands". I'm a bit reluctant to share the file, as it's based so closely on someone elses's work, but the process is fairly straightforward (the magic-wand selection tool will immediately show you any "islands" left in your image.)
The other issue that came up was the freezer paper tends to curl (it does come on a roll), so it had to be taped down at the edges to a rigid substrate, scrap acrylic in this case. The second pattern was a manually made stencil of the "doom guy" dolls from the 2016 Doom game that Ouliana made, seen getting ironed on below.
Ironing the freezer paper
The positive-stencil of the doom guy did end up having "islands", meaning a few pieces of freezer paper had to be carefully place and individually ironed on. Also, having a positive pattern mean needing to block off the rest of the shirt with extra paper to prevent any stray bleaching. The negative stencil, shown below just after ironing, needed no additional masking.
Samus stencil applied
I opted for a slow and regular application of 50/50 bleach in water solution, spraying a few times, and giving it 5-10 minutes to act and dry, and repeated that roughly three times. The shirts were then rinsed out in the shower, and immediately washed. We noticed that setting the iron too low resulted in poor bonding, so the paper would "pop" off the shirt, and ironing too hot resulted in small beads of wax around the edges of the stencil that remained after peeling away the paper. They can be picked off by hand, but it is a pain. The final result of my shirt attempt is below!
It's been a while since I've put up an update, but I haven't been up to nothing. I found out that I have access to a beefy laser cutter through my work, and have been throwing various projects at it over the last few weeks. One of the first things I wanted to try was precision inlay and making a rudimentary deck box. My first target was my Lazaav EDH deck, and it provided a good opportunity to get my feet wet with both laser cutting, inlay, and wood staining. The material itself comes from an 1/4" thick oak project board. I had pondered putting on a few layers of shellac or other finish to smooth it out, but decided that I'd already learned what I'd wanted to, and kinda preferred the woodgrain look.
Showing off the inlay colors
The lid fits, but not perfectly
The ebony stain looks almost exactly like I wanted it to
I didn't both to finish the interior on this one, a final version would definitely have a lining.
The pattern for the box itself was generated using MakerCase, but I think for later projects I'm going to opt for actually making the joints myself to ensure they fit. There seemed to be some inconsistencies with the laser kerf (similar to the saw-depth for conventional cuts) that prevented perfect mating, and I haven't dialed in the compensation for that.
Over all this served as a proof-of-method and tools for doing nacre inlay on later projects, and bonus points: it still works as a box.
In the previous two posts in this series (1, 2) I talked about capturing a reliable image of the art on a magic card from a webcam, and how we can hash those images for an effective and mostly efficient comparison. Now we're left with a hash for the card we'd like to match, and an enormous table of hashes for all the possible matches (something like 18,000 cards). The first question is how to compare the hashes in a meaningful way, but thankfully this is made easy by the nature and documentation for phash. The Hamming distance, or number of dissimilar characters in the string, is the metric of choice. This method is demonstrated step-wise below, first for the correct target, then for a random non-target image.
When compared to the actual match, the Hamming distance is 9. Mismatched characters are highlighted in red. While the cutoff value might take some fine tuning, for our purposes (and my camera), 9 is a relatively strong match.
Compared to an incorrect image, the Hamming distance is 15. The single matched character is effectively within the noise.
Hamming distance is a reliable metric for this hashing approach, and is relatively easy to compute if the hashes are all already calculated. That being said, we don't really want to do 18,000 x 16 charter-character comparisons in order to determine which card we're looking at. Instead we can use a binary search tree. There is a lot already written on binary trees, but the short version is this: by splitting space up one can iteritively narrow down the possibilities, rather than look at each candidate individually. It does require that you take the time to build the tree, but individual searches become substantially faster.
But wait, the Hamming distance doesn't provide coordinates in some searchable space, it provides a measure describing how two data are related (or not), but this can be thought of as a 16 dimensional metric space. The approach I've gone with is a vantage-point, or VP tree, chosen primarily since Paul Harrison was kind enough to post his Python implementation. The idea behind VP trees is to pick a point in your space, e.g. the hash "1111aaaabbbbcccc", and then break your member-set into two parts: those "nearer" than some cut-off Hamming distance, and those further out. By repeating this process a tree of relations can be built up, with adjacent 'branches' having smaller hamming distances than 'far' branches. This means that a hash you're trying to match can rapidly traverse the tree and only run direct comparison with one or two actual set members. The paper by Kumar et.al has an excellent explanation of how this compares with other binary-tree approaches, and while they were doing image-patch analysis, the content is still incredible relevant and well presented. Figure 2 in that paper, not reproduced here, is perfect for visualizing the structure of VP trees!
I'm still in the process of cleaning up code, but plan to shortly follow up with a video demonstration of the code in action, as well a few snippets of particular interest.