Skip to content

Instantly share code, notes, and snippets.

@ridercz
Created February 12, 2020 16:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ridercz/ac8f5a3f2e18b3e4853efcb226d88509 to your computer and use it in GitHub Desktop.
Save ridercz/ac8f5a3f2e18b3e4853efcb226d88509 to your computer and use it in GitHub Desktop.
Gopas Suction Cup Holder
/****************************************************************************
* SUCTION CUP HOLDER version 1.0 (2020-02-11) *
* Copyright (c) Michal Altair Valasek, 2020 *
* www.rider.cz | www.altair.blog *
****************************************************************************/
/* [General] */
inner_diameter = 56;
height = 30;
wall_thickness = 1.67;
/* [Suction Cup] */
sc_mount_hole_small = 8;
sc_mount_hole_big = 12;
sc_mount_hole_depth = 3;
sc_mount_depth = 7;
sc_mount_hole_top = 3;
sc_mount_width = 40;
/* [Hidden] */
sc_mount_total_size = inner_diameter / 2 + wall_thickness + sc_mount_depth;
$fudge = 1;
// Main shape
difference() {
// Main circle(ish) shape
linear_extrude(height) difference() {
hull() {
circle(d = inner_diameter + 2 * wall_thickness, $fn = 128);
translate([0, -sc_mount_width / 2]) square([sc_mount_total_size, sc_mount_width]);
}
circle(d = inner_diameter, $fn = 128);
}
// Suction cup mount slot
translate([sc_mount_total_size - 2 * sc_mount_hole_depth, -sc_mount_hole_big / 2, sc_mount_hole_top]) cube([sc_mount_hole_depth, sc_mount_hole_big, height]);
translate([sc_mount_total_size - 2 * sc_mount_hole_depth, -sc_mount_hole_small / 2, sc_mount_hole_top]) cube([sc_mount_hole_depth * 2 + $fudge, sc_mount_hole_small, height]);
}
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment