Fab Lab Akureyri - Smiðja 2026
Hér höldum við utan um efni tengt smiðjunni
Stundatafla
Inkscape
Inkscape er öflugt "vector" myndvinnsluforrit. Það er fullkomlega sambærilegt við t.d. Illustrator sem margir þekkja.
Forritið er ókeypis, opið og frjálst. Það má sækja hér: inkscape.org
Efni tengt Inkscape
3D hönnun og prentun
Hönnunarforrit
OpenSCAD kóði
Einfalt brakkett
$fn = 50;
difference() {
cube([100,70,4]);
translate([30,35,0])
cylinder(h=5, d=16);
translate([70,35,0])
cylinder(h=5, d=16);
}

Tafla
// Parametric SKÅDIS-style pegboard (optimized)
// Origin: (0,0,0) at bottom-left of front face; Z is thickness outward (+Z)
//////////////////////////
// User parameters
//////////////////////////
material_thickness = 5; // mm
board_width = 1000; // mm
board_height = 400; // mm
//////////////////////////
// Defaults (SKÅDIS-ish)
//////////////////////////
slot_w = 5; // mm
slot_l = 15; // mm
pitch_x = 40; // mm
pitch_y = 20; // mm
stagger = true; // alternate rows shift by pitch_x/2
min_margin = 10; // mm (keeps slots away from edges)
corner_r = 10; // mm (rounded corner radius)
$fn = 16; // smoothness for round parts
//////////////////////////
// Helpers
//////////////////////////
// 2D rounded rectangle using hull of 4 circles
module rounded_rect_2d(w, h, r) {
r2 = min(r, min(w, h)/2);
hull() {
translate([r2, r2]) circle(r=r2);
translate([w-r2, r2]) circle(r=r2);
translate([w-r2, h-r2]) circle(r=r2);
translate([r2, h-r2]) circle(r=r2);
}
}
// 2D obround slot (rounded rectangle) centered at origin, vertical orientation
module slot_2d(width, length) {
r = width/2;
L = max(length, width);
hull() {
translate([0, (L/2 - r)]) circle(r=r);
translate([0, -(L/2 - r)]) circle(r=r);
}
}
//////////////////////////
// Main model (optimized)
//////////////////////////
module pegboard(
w, h, t,
slot_w, slot_l,
px, py,
stagger_rows,
margin,
corner_r
){
// Compute usable center ranges so slots don't violate margins
x_min = margin + slot_w/2;
x_max = w - (margin + slot_w/2);
y_min = margin + slot_l/2;
y_max = h - (margin + slot_l/2);
valid = (x_max >= x_min) && (y_max >= y_min);
// --- 2D boolean first, then extrude once ---
linear_extrude(height=t)
difference() {
// Board outline (2D)
rounded_rect_2d(w, h, corner_r);
// Slots union (2D), subtracted from board outline
if (valid) {
union() {
// number of rows that fit
j_max = floor((y_max - y_min) / py);
for (j = [0 : j_max]) {
y = y_min + j*py;
shift = (stagger_rows && (j % 2 == 1)) ? (px/2) : 0;
// compute k-range directly (no arrays)
k0 = ceil((x_min - shift) / px);
k1 = floor((x_max - shift) / px);
for (k = [k0 : k1]) {
x = shift + k*px;
translate([x, y])
slot_2d(slot_w, slot_l);
}
}
}
}
}
}
// Render
pegboard(
board_width, board_height, material_thickness,
slot_w, slot_l,
pitch_x, pitch_y,
stagger,
min_margin,
corner_r
);

Hér má finna það sem þarf til að búa til Ikea Skadis aukahluti