this post was submitted on 20 Sep 2023
9 points (100.0% liked)

ErgoMechKeyboards

5872 readers
2 users here now

Ergonomic, split and other weird keyboards

Rules

Keep it ergo

Posts must be of/about keyboards that have a clear delineation between the left and right halves of the keyboard, column stagger, or both. This includes one-handed (one half doesn't exist, what clearer delineation is that!?)

i.e. no regular non-split¹ row-stagger and no non-split¹ ortholinear²

¹ split meaning a separation of the halves, whether fixed in place or entirely separate, both are fine.
² ortholinear meaning keys layed out in a grid

No Spam

No excessive posting/"shilling" for commercial purposes. Vendors are permitted to promote their products/services but keep it to a minimum and use the [vendor] flair. Posts that appear to be marketing without being transparent about it will be removed.

No Buy/Sell/Trade

This subreddit is not a marketplace, please post on r/mechmarket or other relevant marketplace.

Some useful links

founded 1 year ago
MODERATORS
 

I created a 2d surface that I can perform a linear extrusion on, however the result it obviously a hard edge on the extrusion. I would love to be able to add a bezel - either rounded or at 45 degrees. Is there an easy way?

top 5 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 1 year ago (2 children)

There's lots of ways to round things or chamfer things. Coming from an extruded shape, a basic chamfer is pretty easy, you can do two different extrusions, one a bit shorter than your final piece and one full height, but offset inward a bit, and then hull them together:

module shape() {
    square(10, center = true);
}


hull() {
    linear_extrude(8)
    shape();

    linear_extrude(10)
    offset(delta = -2)
    shape();
}

Though, because of the hull, this will only really work with fully convex shapes. Doing this for shapes with concave features is harder.

[–] [email protected] 4 points 1 year ago

For rounding, you can do the extrusion, but with it a bit smaller in every dimension, then minkowski with a sphere (or a different shape if you don't want all the edges rounded), but it's tricky to get right:

module shape() {
    square(80, center = true);
}


minkowski() {
    linear_extrude(80)
    shape();

    sphere(r = 20);
}

[–] nydas 1 points 1 year ago

Thank you. Yeah, the shape is a mix of convex and concave. I might need to just make do for this prototype.

[–] wolfwood 2 points 1 year ago

you can also tip over a cube() by 45° and difference it from your object to take off an edge.

[–] pca006132 1 points 1 year ago

There were efforts trying to do make this simpler, but it was abandoned. See https://github.com/openscad/openscad/issues/4743 and related PR.