include noctua_nf_a4x20_h = 40; noctua_nf_a4x20_w = 40; noctua_nf_a4x20_t = 20; ld3007ms_w = 30; ld3007ms_h = 30; ld3007ms_t = 8; ld3007ms_distance_between_holes = 23.8; module noctua_nf_a4x20() { translate([-noctua_nf_a4x20_w / 2, 0, -noctua_nf_a4x20_w / 2]) rotate([0, 0, -90]) scale([2, 1, 1]) import("Noctua_NF-A4x10_PWM_Fan.STL"); } // some chinese fan, 30x30x8 module ld3007ms() { w = ld3007ms_w; h = ld3007ms_h; t = ld3007ms_t; translate([0, t / 2, 0]) rotate([90, 0, 0]) cube([w, h, t], center = true); } module ld3007ms_holes() { dbh = ld3007ms_distance_between_holes; // half distance between holes hdbh = dbh / 2; for (xo = [hdbh, -hdbh], zo = [hdbh, -hdbh]) { translate([xo, 0, zo]) screw_hole( m = m2, id = 4, il = hole_insert_height * 2, hd = m2_head_diameter, hh = m2_head_height, hs = hole_side_back); } } *ld3007ms(); *ld3007ms_holes();