Small parametric project: vinyl record holder

To kick-start the conversation, let me share a small project I created with the parametric version of Shapr3D – partly to test its functionality, partly because I needed it :slight_smile: I’d really love to hear similar stories from you!

Problem to solve

Part of the joy of using vinyl records is to browse them when you are thinking about what to put on. While most records have a label printed on their sides, it’s usually in a very small typeface and trying to read them is way less fun than flipping through your LPs and examining the artwork on each. A good kind of vinyl stand allows you to do that.

There are many products out there there that solve that problem and we already own one such rack:

But our current rack is already full and off-the-shelf products are quite overpriced once you include tax and shipping to Hungary (where I live) – and it seemed like a simple enough and fun project to design and take our history-based parametric modeling capabilities out for a test ride.

My own rack design

My design is a copy of the original concept, with four parts (2x rack, 2x plexiglass endpiece), interlocked with a simple tongue-and-groove joint, the plexiglass endpieces hold the two wooden racks together. The advantage of that is that it’s easily disassembled without the need for glue, nails, screws or anything similar.


Design experience with HBPM

Even though the alpha is in quite early stages, it already worked quite well for this task:

  • It took about 1-2 hours to come up with a fairly extensible and configurable model. Later adjustments were trivial, taking minutes.
  • Driving the geometries from a few base sketches worked great: I could make adjustments a lot quicker than what it’d have taken with direct modeling. I could change a few driving dimensions and have the constraint solver calculate the rest through the constraints I set up and have the changes propagate through the entire design
  • The main adjustments I used this for:
    • change the sides of the rack taller to support the weight of the ~50 LPs when full
    • play around with the length of the rack
    • adapt the size & thickness of the plexiglass to react to manufacturability issues

An unexpected, but nice side-effect was that I could also come up with a slightly better DXF export flow than what’s possible in the production version: just making a copy & projecting it to a plane dedicated for the export. The copy would get updated together with the original model and I could dedicate that group for the export itself where I could do any post processing, plane alignment and everything else, without messing up the original design.

Things I struggled with:

  • projecting into an existing sketch was not possible (we fixed it since then)
  • drawings got broken as I updated the objects (also fixed)
  • I missed the Pattern tool real bad, I could’ve used it for the ridges in the middle of the rack (it’s coming soon though)
  • projecting flat bodies to coplanar planes can create overlapping sketch lines (one for each sides of the edge faces) which are then get included in the DXF exports, causing problems during manufacturing
  • real-time updates upon sketch changes were really useful, but when I was changing a foundational sketch without rolling back, the interaction could be annoyingly sluggish – this UX needs to be improved, offering auto-rollback or some other way to deal with the situation when real-time updates are too costly (strangely enough, performance around this was similar on my M1 Macbook Air and my beefy Windows workstation, so there’s probably some room for optimization here as well)

Manufacturing

I went to a nearby makerspace to manufacture my design. I used laser cutting to cut the endpieces from an acrylic plate and CNC-milling the cut the rack from a plywood board.


In action

After some small adjustment with sandpaper to make up for the imprecision of the plexiglass thickness, the parts fit together well and the product looked quite similar to how the design previews showed it would. After bringing it home, it stood up to the weight tests as well, accommodating the ~50 LPs I designed it for.


Build your own

If you want to build your own version of exactly the same design, the drawings are available here. and the 3D model on GrabCAD. The parametric Shapr3D model is available here:
Vinyl holder (DH) 5.450 published.shapr (586.0 KB)

Do you have questions or comments about the (parametric) design process? Have something similar to share? I’d be happy to hear more about them.

1 Like

Nice job! That look cool! Mind sharing the sharp file with me? I’m thinking of tryng something similar, but a bit smaller. Thanks!

Very cool build Peter! Impressive given the limited toolsets at the time.
I also really, really like being able to modify base features and sketches and see realtime changes. This seems to also help prevent creating a model-breaking change, or at least knowing instantly.
Good tip on the sketch projections! With direct modeling I would have to keep making new copies of bodies to cut when making changes and project new sketches, which got tedious as revisions were made. Or worse I would forget that I made a change that the sketch for cutting didn’t reflect…

Thanks, both of you.

@PatrickD, it’s a bit of a hectic week, but I’ll spend some time on it next Mon or Tue and create a version that works with the latest build (which is also coming out soon!) and that I’m not ashamed to share :slight_smile: Now I realize that it feels not unlike releasing open-source software vs. releasing the binary: even if you like the end result, you are always more nervous to have people see how things look under the hood. Do you also have that feeling when you share parametric models with others?

@NathanD, how’s the performance and visual clutter for you when it comes to real-time updates? Do you tend to roll back in the history tree, or you just activate the sketch and have things update in real-time?

I’m on a 3 year old mid-level processor iMac with 64GB ram, and it’s (kinda) smooth until I throw a pile of fillets or complicated operations at it. Even when it’s complicated geometry, and I’m adjusting base features or sketches, though jerky it’s still impressive.
I like to directly modify the steps when possible (because it’s cool :sunglasses:), but I’ll also roll back when I need to change operation settings.
I have been having some crashes making base feature changes that have a lot of dependencies, and those are all submitted each time.
Looking forward to more tools being reintroduced parametrically.

1 Like

Cool idea. Here is my attempt to draw it. I am going to cut it on Laser CNC out of 1/4" acrylic for the sides and 3mm acrylic for the back. Pretty sure adjusting this parametrically will not workout too well. Still wrapping my head around that process in Shapr3d

RecordHolder.shapr (277.3 KB)

1 Like

Great job :slight_smile: And thanks for sharing the .shapr file, too, it’s fascinating to see the differences in our approaches we took. I’ll clean up mine, share it here and highlight some of those later.

1 Like

I am sure it is on its way. But it would have been “AWESOME” if I could define a variable like slatThickness, and backboardThicknes and use that so if I wanted to change the material from say 1/4" to 1/2" thickness (sorry for the imperial units) it would automatically adjust any things where I reference those variables.

On the same thread, I see lots of designs out there for sale for laser cutting where folks provide different drawing with different materials like 3mm, 6mm material. I would love to be able to provide an array-like materials=[3mm, 6mm], and when I export SVG to DXF, it could output for each material listed in the array… I assume this feature is a long way down the road… But it would be super helpful for folks who sell designs and need to support multiple material combinations. I can provide some examples of these outputs if that is helpful.

1 Like

I agree, variables would be super useful. They are at the top of our backlog and coming in 1-2 months if everything goes well. At first, they’ll be free form, but supporting predefined values for different configurations is planned, too. And supporting batch exports of multiple configurations at once is actually a great idea, I took note of that, thanks!

2 Likes

It took some time, but I managed to create a model that’s compatible with the latest beta install and I’m happy with how well adjustable it is. There are still some workarounds in there, but it’s getting there – just as Shapr3D is. Check it out and let me know how would you improve it!

Vinyl holder (DH) 5.450 published.shapr (586.0 KB)

You can change the length of the rack:

Or the height of the pillars on the side:

The angle you want the records to be at:

But you can also adjust the size of the records you want it to hold (eg. if you want to create a version for EPs or CDs:

1 Like

Nice work Peter.

1 Like