scad-testing/mag2.1.py
Ian Burgess ed5c149696 updates
2025-07-20 14:03:27 -06:00

49 lines
1.2 KiB
Python

from solid2 import cube, cylinder, set_global_fn
import subprocess
set_global_fn(100)
#base
floor = cube(33,11.4,1.25).translate([1.25,1.25,0]) #floor
o = floor
o += floor.translate([0,0,2.3]) #ceiling
o -= cube(33,9.9,1.25).translate([1.25,2,2.3]) #ceiling negative
wall = cube(33,1.25,3.55).translate([1.25,0,0]) #sidewalls
o += wall
o += wall.translate([0,12.65,0])
o += cube(1.25,13.9,3.55) #backwall
o -= cube(1.75,2.5,2.5,).translate([16.4,11.5,1.75]) #hole
o += cube(1,6.85,2.3).translate([1.25,3.5,1.25]) #backwall2
#baseend
#top
o = o.rotate([180,0,0]).translate([0,13.9,0])#rotate base
o += cube(39.81,13.9,22).translate([-2.78,0,0])#top cube
#cylinders
c = cylinder(r=13, h=40).rotate([0,90,0])
c1 = c.translate([-2.78,21.9,10])#right cylinder
c2 = c.translate([-2.78,-8,10]) #left cylinder
a = 0
b = 0
#holes
h = cylinder(d=7, h=50).rotate([-90,0,0]).translate([3.78,-5,10])
h += h.translate([11.7025,0,0])
h += h.translate([11.7025,0,0])
t = cube(2.78,20,50).translate([-2.78,0,0]).rotate([0,-8,0])
t2 = cube(10,20,50).rotate([0,-8,0]).translate([34.25,0,0])
t2 += cube(10,20,50).translate([34.25,0,0])
o -= t
o -= t2
o -= h #topend
o -= c1
o -= c2
o = o.scale([10,10,10])
o.save_as_stl('mag.stl')