1module beam(r1, r2, shr, msr){
2 /* The walking beam acts as a class I lever transferring the
3 * movement from the pitmans arms to the horse head. */
4
5 H = 12; // Height
6 W = 10; // Width
7 e = 10; // Total added extension
8
9 difference(){
10 union(){
11 translate([(r2-r1)/2,0,H/2]) // Walking beam body
12 cube([r1+r2+e, W, H], center = true);
13
14 rotate([90, 0, 0]) // Fulcrum or pivoting point
15 cylinder(r = 2*msr, h = W, center = true);
16 }
17
18 rotate([90,0,0]) // Pivoting point hole
19 cylinder(r = msr, h = W+1, center = true);
20
21 translate([r2,0,H/2]) // Equalizer mounting screw hole
22 cylinder(r = shr, h = H+1, center = true);
23
Code
is the future of CAD
Designs backed by reliable, easy-to-write code open a world of new workflows and collaboration. We're building a place where you can build that future.
Choose your character

CadHub is the place you can try out Code-CAD packages to find the one that's right for you. Our dedicated community is making CAD easy to learn on the web. Try one of our three integrations today and keep an eye out for more.

  • A mature Code-CAD library focused on Constructed Solid Geometry (CSG) modeling with syntax like C++.

  • A Python-based library with support for CSG and sketch-based modeling and a clean-feeling API.

  • A JavaScript Code-CAD library that will feel familiar to web developers, based on the same tech as OpenSCAD.

  • Curv is a programming language for creating art using mathematics. It's a 2D and 3D geometric modelling tool.

Explore with our community

CadHub is a social platform. You can ask users how they designed a part, fork their work to put your own spin on it, and find inspiration in abundance.

Loading...
1hingeHalfExtrudeLength=hingeLength/2-clearance/2;
2mountingHoleMoveIncrement=(hingeLength-2*mountingHoleEdgeOffset)/
3 (mountingHoleCount-1);
4
5module costomizerEnd() {}
6$fn=30;
7tiny=0.005;
8// modules
9module hingeBaseProfile() {
10 translate([pivotRadius,0,0]){
11 square([baseWidth,baseThickness]);
12 }
13}
14
15module hingeBodyHalf() {
16 difference() {
17 union() {
18 linear_extrude(hingeHalfExtrudeLength){
19 offset(1)offset(-2)offset(1){
20 translate([0,pivotRadius,0]){
21 circle(pivotRadius);
22 }
23 square([pivotRadius,pivotRadius]);
24 hingeBaseProfile();
25 }
26 }
27 linear_extrude(hingeLength){
28 offset(1)offset(-1)hingeBaseProfile();
29 }
30 }
31 plateHoles();
32 }
33}
Learn Code-CAD

We want you to learn Code-CAD today so it can change the way you work tomorrow. Our community is writing tutorials to make this powerful paradigm more accessible to people new to code and CAD.

Read our roadmap

Version control with GitHub, multi-file projects, and team collaboration tools. We’ve got a lot planned, and we’re building it in the open.

Join our community

CAD is ready to evolve. Join our Discord and opensource community on GitHub and build that future with us!

CadHub

Built by 22 contributors from around the world.