pad_width, corner_inset + pad_width,
"1", "1");
+pad_mm_arbitrary(-shield_width/2 + corner_inset, -edge_width / 2,
+ -edge_width / 2, -shield_width/2 + corner_inset,
+ pad_width,
+ "1", "1", "");
+
/* NE corner */
pad_mm((shield_width - corner_inset) / 2, -edge_width /2,
corner_inset + pad_width, pad_width,
pad_width, corner_inset + pad_width,
"1", "1");
+pad_mm_arbitrary(shield_width/2 - corner_inset, -edge_width / 2,
+ edge_width / 2, -shield_width/2 + corner_inset,
+ pad_width,
+ "1", "1", "");
+
/* SW corner */
pad_mm((-shield_width + corner_inset) / 2, edge_width /2,
corner_inset + pad_width, pad_width,
pad_width, corner_inset + pad_width,
"1", "1");
+pad_mm_arbitrary(-shield_width/2 + corner_inset, edge_width / 2,
+ -edge_width / 2, shield_width/2 - corner_inset,
+ pad_width,
+ "1", "1", "");
+
/* SE corner */
pad_mm((shield_width - corner_inset) / 2, edge_width /2,
corner_inset + pad_width, pad_width,
pad_width, corner_inset + pad_width,
"1", "1");
+pad_mm_arbitrary(shield_width/2 - corner_inset, edge_width / 2,
+ edge_width / 2, shield_width/2 - corner_inset,
+ pad_width,
+ "1", "1", "");
element_end();
num);
}
+public void pad_mm_arbitrary( real x1,
+ real y1,
+ real x2,
+ real y2,
+ real thickness,
+ string name,
+ string num,
+ string options)
+{
+ real clearance = process_clearance;
+
+ real mask = thickness + clearance / 2;
+
+ printf (" Pad[");
+ printf (" %6d %6d %6d %6d",
+ mm2mils100(x1),
+ mm2mils100(y1),
+ mm2mils100(x2),
+ mm2mils100(y2));
+ printf (" %6d %6d %6d",
+ mm2mils100(thickness),
+ mm2mils100(clearance),
+ mm2mils100(mask));
+ printf (" \"%s\" \"%s\" \"%s\"]\n",
+ name, num, options);
+}
+
public void pin_mm_clear(real x, real y, real drill, real copper, real clearance,
string name,
string number)