inital commit

This commit is contained in:
MReenen 2023-02-24 15:53:09 +01:00
commit 6e14005163
120 changed files with 6395993 additions and 0 deletions

290
bakje.ini Normal file
View File

@ -0,0 +1,290 @@
# generated by PrusaSlicer 2.5.0 on 2023-02-14 at 12:47:01 UTC
avoid_crossing_perimeters = 0
avoid_crossing_perimeters_max_detour = 0
bed_custom_model =
bed_custom_texture =
bed_shape = 0x0,235x0,235x235,0x235
bed_temperature = 50
before_layer_gcode = ;BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n
between_objects_gcode =
bottom_fill_pattern = monotonic
bottom_solid_layers = 3
bottom_solid_min_thickness = 0
bridge_acceleration = 0
bridge_angle = 0
bridge_fan_speed = 100
bridge_flow_ratio = 0.95
bridge_speed = 20
brim_separation = 0
brim_type = outer_only
brim_width = 0
clip_multipart_objects = 1
color_change_gcode = M600
colorprint_heights =
compatible_printers_condition_cummulative = printer_model=~/NEPTUNE2/;printer_notes=~/.*PRINTER_VENDOR_PS3D.*/
complete_objects = 0
cooling = 1
cooling_tube_length = 5
cooling_tube_retraction = 91.5
default_acceleration = 0
default_filament_profile = "Generic PLA @PS3D"
default_print_profile = 0.16mm OPTIMAL @PS3D
deretract_speed = 70
disable_fan_first_layers = 1
dont_support_bridges = 1
draft_shield = disabled
duplicate_distance = 6
elefant_foot_compensation = 0.1
end_filament_gcode = "; Filament-specific end gcode \n;END gcode for filament\n"
end_gcode = {if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F600{endif} ; Move print head up\nG1 X5 Y170 F{travel_speed*60} ; present print\n{if max_layer_z < max_print_height-10}G1 Z{z_offset+min(max_layer_z+70, max_print_height-10)} F600{endif} ; Move print head further up\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors
ensure_vertical_shell_thickness = 1
external_perimeter_extrusion_width = 0.65
external_perimeter_speed = 70
external_perimeters_first = 0
extra_loading_move = -2
extra_perimeters = 0
extruder_clearance_height = 25
extruder_clearance_radius = 45
extruder_colour = #FFFF00
extruder_offset = 0x0
extrusion_axis = E
extrusion_multiplier = 1
extrusion_width = 0.65
fan_always_on = 1
fan_below_layer_time = 100
filament_colour = #DDDDDD
filament_cooling_final_speed = 3.4
filament_cooling_initial_speed = 2.2
filament_cooling_moves = 4
filament_cost = 20
filament_density = 1.24
filament_deretract_speed = nil
filament_diameter = 1.75
filament_load_time = 0
filament_loading_speed = 28
filament_loading_speed_start = 3
filament_max_volumetric_speed = 15
filament_minimal_purge_on_wipe_tower = 15
filament_notes = ""
filament_ramming_parameters = "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
filament_retract_before_travel = nil
filament_retract_before_wipe = nil
filament_retract_layer_change = nil
filament_retract_length = nil
filament_retract_lift = nil
filament_retract_lift_above = nil
filament_retract_lift_below = nil
filament_retract_restart_extra = nil
filament_retract_speed = nil
filament_settings_id = "Generic PLA @PS3D"
filament_soluble = 0
filament_spool_weight = 0
filament_toolchange_delay = 0
filament_type = PLA
filament_unload_time = 0
filament_unloading_speed = 90
filament_unloading_speed_start = 100
filament_vendor = Generic
filament_wipe = nil
fill_angle = 45
fill_density = 20%
fill_pattern = gyroid
first_layer_acceleration = 0
first_layer_acceleration_over_raft = 0
first_layer_bed_temperature = 40
first_layer_extrusion_width = 0.42
first_layer_height = 0.2
first_layer_speed = 30
first_layer_speed_over_raft = 30
first_layer_temperature = 210
full_fan_speed_layer = 0
fuzzy_skin = none
fuzzy_skin_point_dist = 0.8
fuzzy_skin_thickness = 0.3
gap_fill_enabled = 1
gap_fill_speed = 70
gcode_comments = 1
gcode_flavor = marlin
gcode_label_objects = 0
gcode_resolution = 0.0125
gcode_substitutions =
high_current_on_filament_swap = 0
host_type = octoprint
infill_acceleration = 0
infill_anchor = 600%
infill_anchor_max = 50
infill_every_layers = 1
infill_extruder = 1
infill_extrusion_width = 0.45
infill_first = 0
infill_only_where_needed = 0
infill_overlap = 25%
infill_speed = 80
inherits_cummulative = "0.30mm snel en sterk - Nuptune @PS3D";;
interface_shells = 0
ironing = 0
ironing_flowrate = 15%
ironing_spacing = 0.1
ironing_speed = 15
ironing_type = top
layer_gcode = ;AFTER_LAYER_CHANGE\n;[layer_z]
layer_height = 0.3
machine_limits_usage = time_estimate_only
machine_max_acceleration_e = 5000
machine_max_acceleration_extruding = 500
machine_max_acceleration_retracting = 1000
machine_max_acceleration_travel = 1500,1250
machine_max_acceleration_x = 500
machine_max_acceleration_y = 500
machine_max_acceleration_z = 100
machine_max_feedrate_e = 60
machine_max_feedrate_x = 500
machine_max_feedrate_y = 500
machine_max_feedrate_z = 10
machine_max_jerk_e = 5
machine_max_jerk_x = 8
machine_max_jerk_y = 8
machine_max_jerk_z = 0.4
machine_min_extruding_rate = 0
machine_min_travel_rate = 0
max_fan_speed = 100
max_layer_height = 0.3
max_print_height = 250
max_print_speed = 100
max_volumetric_extrusion_rate_slope_negative = 0
max_volumetric_extrusion_rate_slope_positive = 0
max_volumetric_speed = 8
min_bead_width = 85%
min_fan_speed = 100
min_feature_size = 25%
min_layer_height = 0.05
min_print_speed = 15
min_skirt_length = 4
mmu_segmented_region_max_width = 0
notes =
nozzle_diameter = 0.4
only_retract_when_crossing_perimeters = 0
ooze_prevention = 0
output_filename_format = {input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode
overhangs = 0
parking_pos_retraction = 92
pause_print_gcode =
perimeter_acceleration = 0
perimeter_extruder = 1
perimeter_extrusion_width = 0.65
perimeter_generator = arachne
perimeter_speed = 70
perimeters = 2
physical_printer_settings_id =
post_process =
print_host =
print_settings_id = bakje
printer_model = NEPTUNE2
printer_notes = \n\ncompatible printer parameters:\nPRINTER_VENDOR_PS3D\nPRINTER_MODEL_NEPTUNE2\nPRINTER_HAS_BOWDEN
printer_settings_id = Mats zijn Neptune 2
printer_technology = FFF
printer_variant = 0.4
printer_vendor =
printhost_apikey =
printhost_cafile =
raft_contact_distance = 0.1
raft_expansion = 1.5
raft_first_layer_density = 90%
raft_first_layer_expansion = 3
raft_layers = 0
remaining_times = 0
resolution = 0
retract_before_travel = 2
retract_before_wipe = 70%
retract_layer_change = 0
retract_length = 5
retract_length_toolchange = 1
retract_lift = 0
retract_lift_above = 0
retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 70
seam_position = nearest
silent_mode = 0
single_extruder_multi_material = 0
single_extruder_multi_material_priming = 1
skirt_distance = 6
skirt_height = 1
skirts = 0
slice_closing_radius = 0.049
slicing_mode = regular
slowdown_below_layer_time = 10
small_perimeter_speed = 35
solid_infill_below_area = 0
solid_infill_every_layers = 0
solid_infill_extruder = 1
solid_infill_extrusion_width = 0.65
solid_infill_speed = 80
spiral_vase = 0
standby_temperature_delta = -5
start_filament_gcode = "; Filament gcode\n"
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 ; home all\nG1 Z2 F240\nG1 X2 Y10 F3000\nG1 Z1 F240\nG92 E0\nG1 Y20 E15 F1500 ; intro line\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E15 F1200 ; intro line\nG92 E0
support_material = 0
support_material_angle = 0
support_material_auto = 1
support_material_bottom_contact_distance = 0
support_material_bottom_interface_layers = -1
support_material_buildplate_only = 0
support_material_closing_radius = 2
support_material_contact_distance = 0.15
support_material_enforce_layers = 0
support_material_extruder = 0
support_material_extrusion_width = 0.38
support_material_interface_contact_loops = 0
support_material_interface_extruder = 0
support_material_interface_layers = 2
support_material_interface_pattern = rectilinear
support_material_interface_spacing = 0.2
support_material_interface_speed = 100%
support_material_pattern = rectilinear
support_material_spacing = 2
support_material_speed = 60
support_material_style = grid
support_material_synchronize_layers = 0
support_material_threshold = 45
support_material_with_sheath = 0
support_material_xy_spacing = 60%
temperature = 205
template_custom_gcode =
thick_bridges = 1
thin_walls = 0
threads = 4
thumbnails =
thumbnails_format = PNG
toolchange_gcode =
top_fill_pattern = monotonic
top_infill_extrusion_width = 0.65
top_solid_infill_speed = 40
top_solid_layers = 1
top_solid_min_thickness = 0
travel_speed = 150
travel_speed_z = 0
use_firmware_retraction = 0
use_relative_e_distances = 1
use_volumetric_e = 0
variable_layer_height = 1
wall_distribution_count = 1
wall_transition_angle = 10
wall_transition_filter_deviation = 25%
wall_transition_length = 100%
wipe = 1
wipe_into_infill = 0
wipe_into_objects = 0
wipe_tower = 0
wipe_tower_bridging = 10
wipe_tower_brim_width = 2
wipe_tower_no_sparse_layers = 0
wipe_tower_rotation_angle = 0
wipe_tower_width = 60
wipe_tower_x = 170
wipe_tower_y = 140
wiping_volumes_extruders = 70,70
wiping_volumes_matrix = 0
xy_size_compensation = 0
z_offset = 0

193
bakje.scad Normal file
View File

@ -0,0 +1,193 @@
/*[bakje famili]*/
CHAMFER = 5.0; // mm
UNIT = 50.0; // mm
HIEGHT = 1.0; // units
/*[andere dingen]*/
OUTER_TOLLERANCE = 0.2; // [0.05:0.05:0.5]
WALL_THIKNESS = 1.2; // [0.5:0.1:5]
WIDTH = 1; // [1:1:10]
DEPTH = 1; // [1:1:10]
LABLE_HIEGHT = 10.0; // [1.0:0.125:20.0]
//LABLE_WIDTH = floor(0.25*WIDTH) + 0.8; // [0.1:0.1:3.0]
LABLE_WIDTH = max(0.08, 0.9 - 0.1*WIDTH) * WIDTH; // [0.1:0.1:3.0]
RENDER = "bakje"; // [bakje: bakje, grid: grid, all: all]
if (RENDER == "bakje" || RENDER == "all")
bakje();
if (RENDER == "grid" || RENDER == "all")
grid();
module grid(){
intersection(){
union(){
for (x = [ -(WIDTH)/2 : 1.0 : (WIDTH)/2 ]){
translate([x*UNIT, 0, 0])
rotate([0, 45, 0])
cube([
CHAMFER*sqrt(2),
UNIT*DEPTH,
CHAMFER*sqrt(2)
], center=true);
}
for (y = [ -(DEPTH)/2 : 1.0 : (DEPTH)/2 ]){
translate([0, y*UNIT, 0])
rotate([45, 0, 0])
cube([
UNIT*WIDTH,
CHAMFER*sqrt(2),
CHAMFER*sqrt(2)
], center=true);
}
}
translate([0, 0, 5*CHAMFER])
cube([
UNIT*WIDTH - 2*OUTER_TOLLERANCE,
UNIT*DEPTH - 2*OUTER_TOLLERANCE,
10*CHAMFER
], center=true);
}
}
module bakje(){
difference(){
union(){
for (x = [-(WIDTH-1)/2:1.0:(WIDTH-1)/2])
for (y = [-(DEPTH-1)/2:1.0:(DEPTH-1)/2]){
translate([
x*UNIT,
y*UNIT,
0
])
floor();
}
walls();
lable();
}
walls(true);
}
}
module walls(cut=false){
union(){
thinkness = (cut ? 50 : 1) * WALL_THIKNESS;
for (side = [-1,1])
translate([
0,
side*(0.5*UNIT*DEPTH - ((cut) ? -0.5 : 0.5)*thinkness - OUTER_TOLLERANCE),
0.5*UNIT*HIEGHT + (cut ? 0 : 0.5*CHAMFER)
])
union(){
cube([
UNIT*WIDTH - 2*CHAMFER - 2*OUTER_TOLLERANCE,
(cut ? 1 : 1.001) * thinkness,
UNIT*HIEGHT - (cut ? -CHAMFER : CHAMFER)
], center=true);
for (edge = [-1,1])
translate([
edge*(0.5*UNIT*WIDTH - 0.5*CHAMFER),
-side*(0.5*CHAMFER - (cut ? -0.5 : 0.5)*thinkness),
(cut ? 0 : -0.5*CHAMFER)
])
intersection(){
translate([
edge*(-OUTER_TOLLERANCE - (cut ? -0.5 : 0.5) * thinkness/sqrt(2)),
-side*((cut ? -0.5 : 0.5) * thinkness/sqrt(2)),
0
])
rotate([0, 0, side*edge*-45])
cube([
((cut) ? 15 : 1) * CHAMFER * sqrt(2),
(cut ? 1 : 1.001) * thinkness,
UNIT*HIEGHT + (cut ? 0.5*CHAMFER : 0)
], center=true);
if(!cut)
translate([
-edge*0.5*CHAMFER,
-side*(0.5*CHAMFER - OUTER_TOLLERANCE),
CHAMFER - 0.5*UNIT*HIEGHT])
union(){
translate([0, 0, 0.5*UNIT])
cube([2*CHAMFER, 2*CHAMFER, UNIT*HIEGHT], center=true);
intersection(){
rotate([45, 0, 0])
cube([UNIT*HIEGHT, CHAMFER*sqrt(2), CHAMFER*sqrt(2)], center=true);
rotate([0, 45, 0])
cube([CHAMFER*sqrt(2), UNIT*HIEGHT, CHAMFER*sqrt(2)], center=true);
}
}
}
}
for (side = [-1,1])
translate([
side*(0.5*UNIT*WIDTH - ((cut) ? -0.5 : 0.5)*thinkness - OUTER_TOLLERANCE),
0,
0.5*UNIT*HIEGHT + (cut ? 0 : 0.5*CHAMFER)
])
cube([
(cut ? 1 : 1.001) * thinkness,
UNIT*DEPTH - 2*CHAMFER - 2*OUTER_TOLLERANCE,
UNIT*HIEGHT - (cut ? -CHAMFER : CHAMFER)
], center=true);
}
}
module floor() {
module chamfer(cut=false){
thinkness = (cut) ? 5.0 : WALL_THIKNESS;
translate([
0,
0.5*UNIT - 0.5*CHAMFER,
0.5*CHAMFER + WALL_THIKNESS/sqrt(2)
])
rotate([45, 0, 0])
translate([
0,
0,
(cut) ? -0.5*(WALL_THIKNESS+thinkness) + 0.001 : 0,
])
cube([
UNIT,
CHAMFER * sqrt(2) + WALL_THIKNESS - 0.001,
thinkness
], center=true);
}
union(){
translate([0, 0, 0.5*WALL_THIKNESS])
cube([
UNIT - 2*CHAMFER,
UNIT - 2*CHAMFER,
WALL_THIKNESS
], center=true);
difference(){
union(){
for (d = [0:90:360])
rotate([0, 0, d])
chamfer();
}
for (d = [0:90:360])
rotate([0, 0, d])
chamfer(true);
}
}
}
module lable(){
translate([
-0.5*WIDTH*UNIT,
0.5*DEPTH*UNIT - OUTER_TOLLERANCE - WALL_THIKNESS,
HIEGHT*UNIT - LABLE_HIEGHT*sqrt(2)
])
difference(){
rotate([45, 0, 0])
cube([LABLE_WIDTH*UNIT, LABLE_HIEGHT, LABLE_HIEGHT]);
translate([-WALL_THIKNESS, -1*LABLE_HIEGHT, -WALL_THIKNESS])
cube([LABLE_WIDTH*UNIT, 2*LABLE_HIEGHT, 0.5*LABLE_HIEGHT*sqrt(2)]);
}
}

22765
gcode/1x1/1-bakje-37m.gcode Normal file

File diff suppressed because it is too large Load Diff

5162
gcode/1x1/1-grid-7m.gcode Normal file

File diff suppressed because it is too large Load Diff

420195
gcode/1x1/16-bakje-9h46m.gcode Normal file

File diff suppressed because it is too large Load Diff

78199
gcode/1x1/16-grid-1h55m.gcode Normal file

File diff suppressed because it is too large Load Diff

53299
gcode/1x1/2-bakje-1h12m.gcode Normal file

File diff suppressed because it is too large Load Diff

10092
gcode/1x1/2-grid-14m.gcode Normal file

File diff suppressed because it is too large Load Diff

105745
gcode/1x1/4-bakje-2h24m.gcode Normal file

File diff suppressed because it is too large Load Diff

19868
gcode/1x1/4-grid-29m.gcode Normal file

File diff suppressed because it is too large Load Diff

236113
gcode/1x1/9-bakje-5h29m.gcode Normal file

File diff suppressed because it is too large Load Diff

44159
gcode/1x1/9-grid-1h5m.gcode Normal file

File diff suppressed because it is too large Load Diff

31304
gcode/1x2/1-bakje-56m.gcode Normal file

File diff suppressed because it is too large Load Diff

9621
gcode/1x2/1-grid-14m.gcode Normal file

File diff suppressed because it is too large Load Diff

62107
gcode/1x2/2-bakje-1h55m.gcode Normal file

File diff suppressed because it is too large Load Diff

18989
gcode/1x2/2-grid-28m.gcode Normal file

File diff suppressed because it is too large Load Diff

122966
gcode/1x2/4-bakje-3h51m.gcode Normal file

File diff suppressed because it is too large Load Diff

37607
gcode/1x2/4-grid-56m.gcode Normal file

File diff suppressed because it is too large Load Diff

184104
gcode/1x2/6-bakje-5h49m.gcode Normal file

File diff suppressed because it is too large Load Diff

56253
gcode/1x2/6-grid-1h24m.gcode Normal file

File diff suppressed because it is too large Load Diff

244988
gcode/1x2/8-bakje-7h45m.gcode Normal file

File diff suppressed because it is too large Load Diff

74969
gcode/1x2/8-grid-1h52m.gcode Normal file

File diff suppressed because it is too large Load Diff

35376
gcode/1x3/1-bakje-1h17m.gcode Normal file

File diff suppressed because it is too large Load Diff

14032
gcode/1x3/1-grid-21m.gcode Normal file

File diff suppressed because it is too large Load Diff

70231
gcode/1x3/2-bakje-2h37m.gcode Normal file

File diff suppressed because it is too large Load Diff

27708
gcode/1x3/2-grid-42m.gcode Normal file

File diff suppressed because it is too large Load Diff

139482
gcode/1x3/4-bakje-5h19m.gcode Normal file

File diff suppressed because it is too large Load Diff

54996
gcode/1x3/4-grid-1h23m.gcode Normal file

File diff suppressed because it is too large Load Diff

39640
gcode/1x4/1-bakje-1h39m.gcode Normal file

File diff suppressed because it is too large Load Diff

18705
gcode/1x4/1-grid-28m.gcode Normal file

File diff suppressed because it is too large Load Diff

79156
gcode/1x4/2-bakje-3h21m.gcode Normal file

File diff suppressed because it is too large Load Diff

37043
gcode/1x4/2-grid-55m.gcode Normal file

File diff suppressed because it is too large Load Diff

155944
gcode/1x4/4-bakje-6h45m.gcode Normal file

File diff suppressed because it is too large Load Diff

73709
gcode/1x4/4-grid-1h51m.gcode Normal file

File diff suppressed because it is too large Load Diff

33274
gcode/2x1/1-bakje-58m.gcode Normal file

File diff suppressed because it is too large Load Diff

9599
gcode/2x1/1-grid-14m.gcode Normal file

File diff suppressed because it is too large Load Diff

66093
gcode/2x1/2-bakje-1h59m.gcode Normal file

File diff suppressed because it is too large Load Diff

18935
gcode/2x1/2-grid-28m.gcode Normal file

File diff suppressed because it is too large Load Diff

130920
gcode/2x1/4-bakje-3h59m.gcode Normal file

File diff suppressed because it is too large Load Diff

37507
gcode/2x1/4-grid-56m.gcode Normal file

File diff suppressed because it is too large Load Diff

195621
gcode/2x1/6-bakje-6h1m.gcode Normal file

File diff suppressed because it is too large Load Diff

56071
gcode/2x1/6-grid-1h23m.gcode Normal file

File diff suppressed because it is too large Load Diff

260343
gcode/2x1/8-bakje-8h1m.gcode Normal file

File diff suppressed because it is too large Load Diff

74633
gcode/2x1/8-grid-1h51m.gcode Normal file

File diff suppressed because it is too large Load Diff

42714
gcode/2x2/1-bakje-1h32m.gcode Normal file

File diff suppressed because it is too large Load Diff

18552
gcode/2x2/1-grid-27m.gcode Normal file

File diff suppressed because it is too large Load Diff

84868
gcode/2x2/2-bakje-3h6m.gcode Normal file

File diff suppressed because it is too large Load Diff

36799
gcode/2x2/2-grid-54m.gcode Normal file

File diff suppressed because it is too large Load Diff

168419
gcode/2x2/4-bakje-6h13m.gcode Normal file

File diff suppressed because it is too large Load Diff

73147
gcode/2x2/4-grid-1h47m.gcode Normal file

File diff suppressed because it is too large Load Diff

51141
gcode/2x3/1-bakje-2h4m.gcode Normal file

File diff suppressed because it is too large Load Diff

27472
gcode/2x3/1-grid-40m.gcode Normal file

File diff suppressed because it is too large Load Diff

101681
gcode/2x3/2-bakje-4h10m.gcode Normal file

File diff suppressed because it is too large Load Diff

54563
gcode/2x3/2-grid-1h19m.gcode Normal file

File diff suppressed because it is too large Load Diff

60723
gcode/2x4/1-bakje-2h37m.gcode Normal file

File diff suppressed because it is too large Load Diff

36859
gcode/2x4/1-grid-53m.gcode Normal file

File diff suppressed because it is too large Load Diff

121200
gcode/2x4/2-bakje-5h17m.gcode Normal file

File diff suppressed because it is too large Load Diff

73353
gcode/2x4/2-grid-1h45m.gcode Normal file

File diff suppressed because it is too large Load Diff

38521
gcode/3x1/1-bakje-1h21m.gcode Normal file

File diff suppressed because it is too large Load Diff

14034
gcode/3x1/1-grid-21m.gcode Normal file

File diff suppressed because it is too large Load Diff

76376
gcode/3x1/2-bakje-2h44m.gcode Normal file

File diff suppressed because it is too large Load Diff

27744
gcode/3x1/2-grid-41m.gcode Normal file

File diff suppressed because it is too large Load Diff

151365
gcode/3x1/4-bakje-5h34m.gcode Normal file

File diff suppressed because it is too large Load Diff

55091
gcode/3x1/4-grid-1h22m.gcode Normal file

File diff suppressed because it is too large Load Diff

52801
gcode/3x2/1-bakje-2h5m.gcode Normal file

File diff suppressed because it is too large Load Diff

27426
gcode/3x2/1-grid-40m.gcode Normal file

File diff suppressed because it is too large Load Diff

105100
gcode/3x2/2-bakje-4h14m.gcode Normal file

File diff suppressed because it is too large Load Diff

54535
gcode/3x2/2-grid-1h19m.gcode Normal file

File diff suppressed because it is too large Load Diff

65669
gcode/3x3/1-bakje-2h49m.gcode Normal file

File diff suppressed because it is too large Load Diff

40905
gcode/3x3/1-grid-59m.gcode Normal file

File diff suppressed because it is too large Load Diff

79532
gcode/3x4/1-bakje-3h33m.gcode Normal file

File diff suppressed because it is too large Load Diff

55094
gcode/3x4/1-grid-1h18m.gcode Normal file

File diff suppressed because it is too large Load Diff

43581
gcode/4x1/1-bakje-1h43m.gcode Normal file

File diff suppressed because it is too large Load Diff

18500
gcode/4x1/1-grid-27m.gcode Normal file

File diff suppressed because it is too large Load Diff

86780
gcode/4x1/2-bakje-3h29m.gcode Normal file

File diff suppressed because it is too large Load Diff

36680
gcode/4x1/2-grid-55m.gcode Normal file

File diff suppressed because it is too large Load Diff

171796
gcode/4x1/4-bakje-7h3m.gcode Normal file

File diff suppressed because it is too large Load Diff

73145
gcode/4x1/4-grid-1h50m.gcode Normal file

File diff suppressed because it is too large Load Diff

62703
gcode/4x2/1-bakje-2h39m.gcode Normal file

File diff suppressed because it is too large Load Diff

36450
gcode/4x2/1-grid-53m.gcode Normal file

File diff suppressed because it is too large Load Diff

124799
gcode/4x2/2-bakje-5h21m.gcode Normal file

File diff suppressed because it is too large Load Diff

72521
gcode/4x2/2-grid-1h45m.gcode Normal file

File diff suppressed because it is too large Load Diff

79849
gcode/4x3/1-bakje-3h33m.gcode Normal file

File diff suppressed because it is too large Load Diff

54467
gcode/4x3/1-grid-1h18m.gcode Normal file

File diff suppressed because it is too large Load Diff

98523
gcode/4x4/1-bakje-4h29m.gcode Normal file

File diff suppressed because it is too large Load Diff

73599
gcode/4x4/1-grid-1h43m.gcode Normal file

File diff suppressed because it is too large Load Diff

235
koffer.scad Normal file
View File

@ -0,0 +1,235 @@
/*[bakje famili]*/
CHAMFER = 5.0; // mm
UNIT = 50.0; // mm
HIEGHT = 1.0; // units
/*[andere dingen]*/
INNER_TOLLERANCE = 0.0; // [0.0:0.05:0.5]
MATT_THIKNESS = 10.0; // [2.0:0.1:15.0]
WIDTH = 7; // [1:1:10]
DEPTH = 5; // [1:1:10]
DIMENTION = "2d"; // [2d: 2d export view, 3d: 3d render]
POSITION = "inplace"; // [inplace: in place, origin: at the origin]
RENDER = "all"; // [bot: bottom, lid: lid, front: front, back: back, left: left, right: right, all: all]
LAYOUT_SEPERATION = 15; // [1:1:50]
function finger(flip=[1,0], dir="y") = [
[
0, 0
],[
(dir=="y") ? 0 : flip[0]*0.25*UNIT,
(dir=="x") ? 0 : flip[1]*0.25*UNIT,
],[
(dir=="y") ? flip[0]*MATT_THIKNESS : flip[0]*0.25*UNIT,
(dir=="x") ? flip[1]*MATT_THIKNESS : flip[1]*0.25*UNIT,
],[
(dir=="y") ? flip[0]*MATT_THIKNESS : flip[0]*0.75*UNIT,
(dir=="x") ? flip[1]*MATT_THIKNESS : flip[1]*0.75*UNIT,
],[
(dir=="y") ? 0 : flip[0]*0.75*UNIT,
(dir=="x") ? 0 : flip[1]*0.75*UNIT,
],[
(dir=="y") ? 0 : flip[0]*UNIT,
(dir=="x") ? 0 : flip[1]*UNIT,
],
];
module fingers(flip=[1,1], dir="y", number=2, nub=true){
flipG = [
(nub || dir == "x") ? flip[0] : -flip[0],
(nub || dir == "y") ? flip[1] : -flip[1]
];
for (f = [0:1:number-1])
translate([
(dir=="x") ? f*UNIT : ((nub) ? 0 : flip[0]*MATT_THIKNESS),
(dir=="y") ? f*UNIT : ((nub) ? 0 : flip[1]*MATT_THIKNESS)
])
polygon(
points = concat(
finger(flip=flipG, dir=dir),
[
[
(dir=="y") ? flip[0]*((nub) ? -0.01 : -MATT_THIKNESS - 0.01) : flip[0]*UNIT,
(dir=="x") ? flip[1]*((nub) ? -0.01 : -MATT_THIKNESS - 0.01) : flip[1]*UNIT
],[
(dir=="y") ? flip[0]*((nub) ? -0.01 : -MATT_THIKNESS - 0.01) : 0,
(dir=="x") ? flip[1]*((nub) ? -0.01 : -MATT_THIKNESS - 0.01) : 0
]
]
)
);
}
module render(3dPos, 3dRotation, 2dPos){
if (DIMENTION == "2d"){
if (POSITION == "inplace")
translate(2dPos)
children();
if (POSITION == "origin")
children();
}
if (DIMENTION == "3d"){
if (POSITION == "inplace")
translate(3dPos)
rotate(3dRotation)
linear_extrude(MATT_THIKNESS)
children();
if (POSITION == "origin")
linear_extrude(MATT_THIKNESS)
children();
}
}
if (RENDER == "bot" || RENDER == "all")
render(
2dPos = [0, 0],
3dPos = [0, 0, 0],
3dRotation = [0, 0, 0]
)
bottom();
if (RENDER == "front" || RENDER == "all")
render(
2dPos = [-(WIDTH*UNIT + 2*MATT_THIKNESS + LAYOUT_SEPERATION), 0],
3dPos = [0, MATT_THIKNESS, 0],
3dRotation = [90, 0, 0]
)
front();
if (RENDER == "back" || RENDER == "all")
render(
2dPos = [
-(WIDTH*UNIT + 2*MATT_THIKNESS + LAYOUT_SEPERATION),
HIEGHT*UNIT + MATT_THIKNESS + LAYOUT_SEPERATION
],
3dPos = [0, DEPTH*UNIT + 2*MATT_THIKNESS, 0],
3dRotation = [90, 0, 0]
)
back();
if (RENDER == "left" || RENDER == "all")
render(
2dPos = [
-(DEPTH*UNIT + 2*MATT_THIKNESS + LAYOUT_SEPERATION),
2*HIEGHT*UNIT + 2*MATT_THIKNESS + 2*LAYOUT_SEPERATION
],
3dPos = [0, 0, 0],
3dRotation = [90, 0, 90]
)
side();
if (RENDER == "right" || RENDER == "all")
render(
2dPos = [
-(DEPTH*UNIT + 2*MATT_THIKNESS + LAYOUT_SEPERATION),
3*HIEGHT*UNIT + 4*MATT_THIKNESS + 3*LAYOUT_SEPERATION
],
3dPos = [WIDTH*UNIT + MATT_THIKNESS, 0, 0],
3dRotation = [90, 0, 90]
)
side();
if (RENDER == "lid" || RENDER == "all")
render(
2dPos = [
WIDTH*UNIT + 2*MATT_THIKNESS + LAYOUT_SEPERATION,
0
],
3dPos = [MATT_THIKNESS, 0, HIEGHT*UNIT + MATT_THIKNESS],
3dRotation = [90, 0, 90]
)
lid();
// if (RENDER == "lid" || RENDER == "all"){
// if (DIMENTION == "2d"){
// lid();
// }
// if (DIMENTION == "3d"){
// if (POSITION == "inplace")
// translate([MATT_THIKNESS, 0, HIEGHT*UNIT + MATT_THIKNESS])
// linear_extrude(MATT_THIKNESS)
// lid();
// if (POSITION == "origin")
// linear_extrude(MATT_THIKNESS)
// lid();
// }
// }
module bottom(){
translate([MATT_THIKNESS, MATT_THIKNESS])
union(){
translate([0.005, 0.005])
square(size=[WIDTH*UNIT-0.01, DEPTH*UNIT-0.01]);
fingers(flip=[-1,1], dir="y", number=DEPTH, nub=true);
translate([WIDTH*UNIT, 0])
fingers(flip=[1,1], dir="y", number=DEPTH, nub=true);
fingers(flip=[1,-1], dir="x", number=WIDTH, nub=true);
translate([0, DEPTH*UNIT])
fingers(flip=[1,1], dir="x", number=WIDTH, nub=true);
}
}
module front(){
translate([MATT_THIKNESS, MATT_THIKNESS])
difference(){
union(){
translate([0.005, 0.005])
square(size=[WIDTH*UNIT-0.01, HIEGHT*UNIT-0.005]);
fingers(flip=[-1,1], dir="y", number=HIEGHT, nub=true);
translate([WIDTH*UNIT, 0])
fingers(flip=[1,1], dir="y", number=HIEGHT, nub=true);
fingers(flip=[1,-1], dir="x", number=WIDTH, nub=false);
}
translate([52, HIEGHT*UNIT-10])
circle(d=3);
translate([77, HIEGHT*UNIT-10])
circle(d=3);
translate([WIDTH*UNIT-52, HIEGHT*UNIT-10])
circle(d=3);
translate([WIDTH*UNIT-77, HIEGHT*UNIT-10])
circle(d=3);
}
}
module back(){
translate([MATT_THIKNESS, MATT_THIKNESS])
union(){
translate([0.005, 0.005])
square(size=[WIDTH*UNIT-0.01, HIEGHT*UNIT-0.005]);
fingers(flip=[-1,1], dir="y", number=HIEGHT, nub=true);
translate([WIDTH*UNIT, 0])
fingers(flip=[1,1], dir="y", number=HIEGHT, nub=true);
fingers(flip=[1,-1], dir="x", number=WIDTH, nub=false);
}
}
module side(){
translate([MATT_THIKNESS, MATT_THIKNESS])
union(){
translate([0.005, 0.005])
square(size=[DEPTH*UNIT-0.01, HIEGHT*UNIT-0.005 + MATT_THIKNESS]);
translate([-MATT_THIKNESS, -MATT_THIKNESS])
square(size=[MATT_THIKNESS+0.01, MATT_THIKNESS+0.01]);
translate([DEPTH*UNIT-0.01, -MATT_THIKNESS])
square(size=[MATT_THIKNESS+0.01, MATT_THIKNESS+0.01]);
translate([-MATT_THIKNESS, HIEGHT*UNIT-0.01])
square(size=[MATT_THIKNESS+0.01, MATT_THIKNESS+0.01]);
translate([DEPTH*UNIT-0.01, HIEGHT*UNIT-0.01])
square(size=[MATT_THIKNESS+0.01, MATT_THIKNESS+0.01]);
fingers(flip=[-1,1], dir="y", number=HIEGHT, nub=false);
translate([DEPTH*UNIT, 0])
fingers(flip=[1,1], dir="y", number=HIEGHT, nub=false);
fingers(flip=[1,-1], dir="x", number=DEPTH, nub=false);
}
}
module lid(){
square([WIDTH*UNIT, DEPTH*UNIT + 2*MATT_THIKNESS]);
}

107
render.sh Normal file
View File

@ -0,0 +1,107 @@
OPENSCAD=openscad
PRUSASLICER="flatpak run com.prusa3d.PrusaSlicer"
SLICER_CONFIG=bakje.ini
SCAD_FILE=bakje.scad
function slice(){
part=$1
size=$2
count=$3
fileName="${size}/${count}-${part}-{print_time}.gcode"
mkdir -p gcode/${size}
${PRUSASLICER} \
--slice \
--load \"$SLICER_CONFIG\" \
--duplicate ${count} \
--output gcode/${fileName} \
stl/${part}-${x}x${y}.stl || exit 1
}
mkdir -p stl gcode
rm stl/*
rm -r gcode/*
nl="
"
for part in bakje grid ;
do
for x in {1..4}
do
for y in {1..4}
do
${OPENSCAD} -o stl/"${part}-${x}x${y}.stl" \
-D "RENDER=\"${part}\"" \
-D WIDTH=${x} \
-D DEPTH=${y} \
"${SCAD_FILE}" || exit 1
fitX=$(expr 4 / $x)
fitY=$(expr 4 / $y)
# echo "size = $x x $y"
# echo "fit = $fitX x $fitY"
dubs="1\n2\n4\n6\n9"
max=$(echo "$x$nl$y" | sort --numeric-sort --reverse | head --lines 1)
min=$(echo "$x$nl$y" | sort --numeric-sort | head --lines 1)
echo "${x}x${y}: ${max}x${min}"
if [ "$max" == "$min" ]
then
if [ "${x}" == "1" ]
then
dubs=(1 2 4 9 16)
elif [ "${x}" == "2" ]
then
dubs=(1 2 4)
else
dubs=(1)
fi
elif [ "${min}" == "1" ]
then
if [ "${max}" == "2" ]
then
dubs=(1 2 4 6 8)
elif [ "${max}" == "3" ]
then
dubs=(1 2 4 5)
elif [ "${max}" == "4" ]
then
dubs=(1 2 4)
fi
elif [ "${min}" == "2" ]
then
dubs=(1 2)
else
dubs=(1)
fi
echo "${x}x${y}: ${dubs[*]}"
for dub in ${dubs[*]}
do
slice ${part} ${x}x${y} ${dub}
done
# for X in $(seq 1 $fitX)
# do
# for Y in $(seq 1 $fitY)
# do
# count=$(expr $X \* $Y)
# if [ $(expr $X - $Y) -lt 2 ] && [ $(expr $Y - $X) -lt 2 ]
# then
# slice ${part} ${x}x${y} ${count}
# fi
# echo -n
# done
# done
done
done
done

1822
stl/bakje-1x1.stl Normal file

File diff suppressed because it is too large Load Diff

2564
stl/bakje-1x2.stl Normal file

File diff suppressed because it is too large Load Diff

3278
stl/bakje-1x3.stl Normal file

File diff suppressed because it is too large Load Diff

4034
stl/bakje-1x4.stl Normal file

File diff suppressed because it is too large Load Diff

2550
stl/bakje-2x1.stl Normal file

File diff suppressed because it is too large Load Diff

3922
stl/bakje-2x2.stl Normal file

File diff suppressed because it is too large Load Diff

5070
stl/bakje-2x3.stl Normal file

File diff suppressed because it is too large Load Diff

6512
stl/bakje-2x4.stl Normal file

File diff suppressed because it is too large Load Diff

3278
stl/bakje-3x1.stl Normal file

File diff suppressed because it is too large Load Diff

5112
stl/bakje-3x2.stl Normal file

File diff suppressed because it is too large Load Diff

6862
stl/bakje-3x3.stl Normal file

File diff suppressed because it is too large Load Diff

8738
stl/bakje-3x4.stl Normal file

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More