|
|
|
dim=[8.7, 3.2, 2.4];
|
|
|
|
color_body=[0.15,0.15,0.15]; // dark gray
|
|
|
|
above=0.1;
|
|
|
|
|
|
|
|
// pad_pos=[5.5, 2.3]; // pads raster (assumed touching z=0)
|
|
|
|
pin_pos=[5.5, 2.6]; // pins centers at z=0
|
|
|
|
dim_pin=[0.6,0.9,1.2]; // simple pin
|
|
|
|
color_pin="white";
|
|
|
|
|
|
|
|
color_writing="white";
|
|
|
|
|
|
|
|
|
|
|
|
module abs25()
|
|
|
|
{
|
|
|
|
translate([0,0,dim[2]/2+above])
|
|
|
|
difference()
|
|
|
|
{
|
|
|
|
color(color_body)
|
|
|
|
cube(dim, center=true);
|
|
|
|
// body cut pin 1 mark
|
|
|
|
translate([-dim[0]/2,0,dim[2]/2])
|
|
|
|
rotate([0,-45,0])
|
|
|
|
color(color_body)
|
|
|
|
cube([dim[1]*0.5,dim[1]+0.1,dim[2]*0.5],center=true);
|
|
|
|
// white cut pin 1 marking
|
|
|
|
translate([-pin_pos[0]/2,0,dim[2]/2])
|
|
|
|
color(color_writing)
|
|
|
|
cube([dim[0]*0.05,dim[1]*0.8,0.1],center=true);
|
|
|
|
}
|
|
|
|
// add pins
|
|
|
|
for(i=[-1:2:1])
|
|
|
|
for(j=[-1:2:1])
|
|
|
|
translate([i*pin_pos[0]/2,j*pin_pos[1]/2,dim[2]/2-dim_pin[2]/2])
|
|
|
|
color(color_pin)
|
|
|
|
cube(dim_pin,center=true);
|
|
|
|
}
|
|
|
|
|
|
|
|
// scale(1/2.54) // scale required for kicad vrml
|
|
|
|
// scale is not applied here because object will loose
|
|
|
|
// color in freecad
|
|
|
|
abs25();
|