Files
2026-02-25 21:13:25 +13:00

36 lines
1.1 KiB
OpenSCAD

function length(point_1, point_2) = sqrt(
(point_1-point_2).x^2 +
(point_1-point_2).y^2 +
(point_1-point_2).z^2
);
// todo fix this
// units in m, the size is the min bond pad size
module bond_pad(
leg_length = 0.000075,
leg_width = 0.00001875,
leg_length_tweak = 0,
leg_angle = 45,
size = 0.000075,
bond_pad_shape = "square",
post_scale = false
) {
circle(r=leg_width*post_scale);
rotate([0, 0, leg_angle+180]) {
translate([-leg_length*post_scale-leg_length_tweak, -leg_width*post_scale/2, 0]) {
// color([0, 255/255, 255/255]) {
// arm
square(size=[(leg_length)*post_scale+leg_length_tweak, leg_width*post_scale]);
// }
}
}
// pad
translate([post_scale*leg_length*cos(leg_angle), post_scale*leg_length*sin(leg_angle), 0]) {
square(size=[size*post_scale, size*post_scale], center=true);
}
// echo(str("x = ", post_scale*leg_length*cos(leg_angle+180)));
// echo(str("y = ", post_scale*leg_length*sin(leg_angle+180)));
}