diff --git a/resources/profiles/ArchiveRepositoryManifest.json b/resources/profiles/ArchiveRepositoryManifest.json index 930cf04019..bc95ba17c7 100644 --- a/resources/profiles/ArchiveRepositoryManifest.json +++ b/resources/profiles/ArchiveRepositoryManifest.json @@ -1,9 +1,17 @@ [{ - "name": "Production", - "description": "Production repository", + "name": "Prusa FFF", + "description": "Prusa FFF printers", "visibility": "", - "id": "prod", - "url": "http://10.24.3.3:8001/v1/repos/prod/", - "index_url": "http://10.24.3.3:8001/v1/repos/prod/vendor_indices.zip", + "id": "prusa-fff", + "url": "http://10.24.3.3:8001/v1/repos/prusa-fff", + "index_url": "http://10.24.3.3:8001/v1/repos/prusa-fff/vendor_indices.zip", + "selected" : 1 +}, { + "name": "Prusa SLA", + "description": "Prusa SLA printers", + "visibility": "", + "id": "prusa-sla", + "url": "http://10.24.3.3:8001/v1/repos/prusa-sla", + "index_url": "http://10.24.3.3:8001/v1/repos/prusa-sla/vendor_indices.zip", "selected" : 1 }] \ No newline at end of file diff --git a/resources/profiles/PrusaResearch.idx b/resources/profiles/PrusaResearch.idx index f1053366cb..072d0d40d0 100644 --- a/resources/profiles/PrusaResearch.idx +++ b/resources/profiles/PrusaResearch.idx @@ -1,5 +1,7 @@ min_slic3r_version = 2.7.5-rc 1.14.0 Added new settings for SLA material profiles. +2.0.0-alpha0 Initial bundle for PS2.8.0-alpha. +min_slic3r_version = 2.8.0-alpha0 min_slic3r_version = 2.7.3-beta1 1.13.4 Updated FW version notification (6.0.1). Added ROSA3D filaments. Updated print profiles for 0.6 nozzle. Updated perimeter speeds in "0.10mm FAST DETAIL" profile (MK4/XL). Slightly increased nozzle temperature for Generic PETG/Prusa PETG/Prusament PETG (0.6n). 1.13.3 Updated FW version notification. diff --git a/resources/profiles/PrusaResearch.ini b/resources/profiles/PrusaResearch.ini index 5e3a8e9570..fef8f5725e 100644 --- a/resources/profiles/PrusaResearch.ini +++ b/resources/profiles/PrusaResearch.ini @@ -1,19 +1,21 @@ # Print profiles for Prusa Research printers. [vendor] +repo_id = prusa-fff # Vendor name will be shown by the Config Wizard. name = Prusa Research # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the PrusaSlicer configuration to be downgraded. -config_version = 1.14.0 +config_version = 2.0.0-alpha0 # Where to get the updates from? -config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/PrusaResearch/ +# config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/PrusaResearch/ changelog_url = https://files.prusa3d.com/?latest=slicer-profiles&lng=%1% # The printer models will be shown by the Configuration Wizard in this order, # also the first model installed & the first nozzle installed will be activated after install. # Printer model name will be shown by the installation wizard. +config_url = http://10.24.3.3:8001/v1/repos/prusa-fff/PrusaResearch/ [printer_model:MK4IS] name = Original Prusa MK4 Input Shaper variants = 0.4; 0.25; 0.3; 0.5; 0.6; 0.8 @@ -43,6 +45,7 @@ bed_model = mk4_bed.stl bed_texture = mk4.svg default_materials = Generic PLA @PG; Generic ABS @MK4; Generic PETG @PG; Prusament PLA @PG; Prusament rPLA @PG; Prusament PETG @PG; Prusament ASA @MK4; Prusament PC Blend @MK4; Prusament PC Blend Carbon Fiber @MK4; Prusament PVB @PG; Prusament PA11 Carbon Fiber @PG +thumbnail = MK4_thumbnail.png [printer_model:MK3.9] name = Original Prusa MK3.9 Input Shaper variants = 0.4; 0.25; 0.3; 0.5; 0.6; 0.8 @@ -102,6 +105,7 @@ bed_model = mini_bed.stl bed_texture = mini.svg default_materials = Generic PLA; Generic ABS @MINI; Generic PETG @MINI; Prusament PLA; Prusament rPLA; Prusament PETG @MINI; Prusament ASA @MINI; Prusament PC Blend @MINI; Prusament PC Blend Carbon Fiber @MINI; Prusament PVB +thumbnail = MINI_thumbnail.png [printer_model:MK3S] name = Original Prusa i3 MK3S && MK3S+ variants = 0.4; 0.25; 0.6; 0.8 @@ -111,6 +115,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA; Prusament rPLA; Prusament PETG; Prusament ASA; Prusament PC Blend; Prusament PC Blend Carbon Fiber; Prusament PVB; Prusament PA11 Carbon Fiber +thumbnail = MK3S_thumbnail.png [printer_model:MK3] name = Original Prusa i3 MK3 variants = 0.4; 0.25; 0.6; 0.8 @@ -120,6 +125,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA; Prusament rPLA; Prusament PETG; Prusament ASA; Prusament PC Blend; Prusament PC Blend Carbon Fiber; Prusament PVB; Prusament PA11 Carbon Fiber +thumbnail = MK3_thumbnail.png [printer_model:MK3SMMU3] name = Original Prusa i3 MK3S && MK3S+ MMU3 variants = 0.4; 0.25; 0.6; 0.8 @@ -129,6 +135,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA @MMU; Prusament PETG @MMU; Prusament ASA @MMU; Verbatim BVOH @MMU; Prusament PC Blend @MMU; Prusament PC Blend Carbon Fiber @MMU; Prusament PVB @MMU +thumbnail = MK3SMMU3_thumbnail.png [printer_model:MK3SMMU2S] name = Original Prusa i3 MK3S && MK3S+ MMU2S variants = 0.4; 0.25; 0.6; 0.8 @@ -138,6 +145,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA @MMU; Prusament PETG @MMU; Prusament ASA @MMU; Verbatim BVOH @MMU; Prusament PC Blend @MMU; Prusament PC Blend Carbon Fiber @MMU; Prusament PVB @MMU +thumbnail = MK3SMMU2S_thumbnail.png [printer_model:MK3MMU2] name = Original Prusa i3 MK3 MMU2 variants = 0.4; 0.25; 0.6; 0.8 @@ -147,6 +155,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA @MMU; Prusament PETG @MMU; Prusament ASA @MMU; Verbatim BVOH @MMU; Prusament PC Blend @MMU; Prusament PC Blend Carbon Fiber @MMU; Prusament PVB @MMU +thumbnail = MK3MMU2_thumbnail.png [printer_model:XLIS] name = Original Prusa XL Input Shaper variants = 0.4; 0.25; 0.3; 0.5; 0.6; 0.8 @@ -166,6 +175,7 @@ bed_model = xl_bed.stl bed_texture = xl.svg default_materials = Generic PLA @XL; Generic ABS @XL; Generic PETG @XL; Prusament PLA @XL; Prusament rPLA @XL; Prusament PETG @XL; Prusament ASA @XL; Prusament PC Blend @XL; Prusament PC Blend Carbon Fiber @XL; Prusament PVB @XL; Prusament PA11 Carbon Fiber @XL +thumbnail = XL_thumbnail.png [printer_model:XL2IS] name = Original Prusa XL - 2T Input Shaper variants = 0.4; 0.25; 0.3; 0.5; 0.6; 0.8 @@ -185,6 +195,7 @@ bed_model = xl_bed.stl bed_texture = xl.svg default_materials = Generic PLA @XL; Generic ABS @XL; Generic PETG @XL; Prusament PLA @XL; Prusament rPLA @XL; Prusament PETG @XL; Prusament ASA @XL; Prusament PC Blend @XL; Prusament PC Blend Carbon Fiber @XL; Prusament PVB @XL; Prusament PA11 Carbon Fiber @XL; Verbatim BVOH @XL +thumbnail = XL2_thumbnail.png [printer_model:XL5IS] name = Original Prusa XL - 5T Input Shaper variants = 0.4; 0.25; 0.3; 0.5; 0.6; 0.8 @@ -204,6 +215,7 @@ bed_model = xl_bed.stl bed_texture = xl.svg default_materials = Generic PLA @XL; Generic ABS @XL; Generic PETG @XL; Prusament PLA @XL; Prusament rPLA @XL; Prusament PETG @XL; Prusament ASA @XL; Prusament PC Blend @XL; Prusament PC Blend Carbon Fiber @XL; Prusament PVB @XL; Prusament PA11 Carbon Fiber @XL; Verbatim BVOH @XL +thumbnail = XL5_thumbnail.png [printer_model:MK2.5S] name = Original Prusa i3 MK2.5S variants = 0.4; 0.25; 0.6; 0.8 @@ -213,6 +225,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA; Prusament rPLA; Prusament PETG; Prusament ASA; Prusament PC Blend; Prusament PC Blend Carbon Fiber; Prusament PVB; Prusament PA11 Carbon Fiber @MK2 +thumbnail = MK2.5S_thumbnail.png [printer_model:MK2.5] name = Original Prusa i3 MK2.5 variants = 0.4; 0.25; 0.6; 0.8 @@ -222,6 +235,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA; Prusament rPLA; Prusament PETG; Prusament ASA; Prusament PC Blend; Prusament PC Blend Carbon Fiber; Prusament PVB; Prusament PA11 Carbon Fiber @MK2 +thumbnail = MK2.5_thumbnail.png [printer_model:MK2.5SMMU2S] name = Original Prusa i3 MK2.5S MMU2S variants = 0.4; 0.25; 0.6; 0.8 @@ -231,6 +245,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA @MMU; Prusament PETG @MMU; Prusament ASA @MMU; Verbatim BVOH @MMU; Prusament PC Blend @MMU; Prusament PC Blend Carbon Fiber @MMU; Prusament PVB @MMU +thumbnail = MK2.5SMMU2S_thumbnail.png [printer_model:MK2.5MMU2] name = Original Prusa i3 MK2.5 MMU2 variants = 0.4; 0.25; 0.6; 0.8 @@ -240,6 +255,7 @@ bed_model = mk3_bed.stl bed_texture = mk3.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA @MMU; Prusament PETG @MMU; Prusament ASA @MMU; Verbatim BVOH @MMU; Prusament PC Blend @MMU; Prusament PC Blend Carbon Fiber @MMU; Prusament PVB @MMU +thumbnail = MK2.5MMU2_thumbnail.png [printer_model:MK2S] name = Original Prusa i3 MK2S variants = 0.4; 0.25; 0.6 @@ -249,6 +265,7 @@ bed_model = mk2_bed.stl bed_texture = mk2.svg default_materials = Generic PLA; Generic ABS; Generic PETG; Prusament PLA; Prusament rPLA; Prusament PETG; Prusament ASA; Prusament PC Blend; Prusament PC Blend Carbon Fiber; Prusament PVB; Prusament PA11 Carbon Fiber @MK2 +thumbnail = MK2S_thumbnail.png [printer_model:MK2SMM] name = Original Prusa i3 MK2S MMU1 variants = 0.4; 0.6 @@ -281,6 +298,7 @@ default_materials = Prusament Resin Tough Prusa Orange @0.05 SL1S # Common print presets +thumbnail = MK2SMM_thumbnail.png [print:*common*] avoid_crossing_perimeters = 0 thick_bridges = 0 diff --git a/resources/profiles/PrusaResearchSLA.idx b/resources/profiles/PrusaResearchSLA.idx new file mode 100644 index 0000000000..2630465daf --- /dev/null +++ b/resources/profiles/PrusaResearchSLA.idx @@ -0,0 +1,3 @@ +min_slic3r_version = 2.8.0-alpha0 +1.0.0-alpha0 Initial bundle for PS2.8.0-alpha. +max_slic3r_version = 2.7.4 \ No newline at end of file diff --git a/resources/profiles/PrusaResearchSLA.ini b/resources/profiles/PrusaResearchSLA.ini new file mode 100644 index 0000000000..ecb7d56de6 --- /dev/null +++ b/resources/profiles/PrusaResearchSLA.ini @@ -0,0 +1,3558 @@ +# Print profiles for Prusa Research printers. + +[vendor] +repo_id = prusa-sla +# Vendor name will be shown by the Config Wizard. +name = Prusa Research SLA +# Configuration version of this file. Config file will only be installed, if the config_version differs. +# This means, the server may force the PrusaSlicer configuration to be downgraded. +config_version = 1.0.0-alpha0 + +# changelog_url = https://files.prusa3d.com/?latest=slicer-profiles&lng=%1% + +config_url = http://10.24.3.3:8001/v1/repos/prusa-sla/PrusaResearchSLA/ +[printer_model:SL1S] +name = Original Prusa SL1S SPEED +variants = default +technology = SLA +family = SL1 +bed_model = sl1s_bed.stl +bed_texture = sl1s.svg +default_materials = Prusament Resin Tough Prusa Orange @0.05 SL1S + +thumbnail = SL1S_thumbnail.png +[printer_model:SL1] +name = Original Prusa SL1 +variants = default +technology = SLA +family = SL1 +bed_model = sl1_bed.stl +bed_texture = sl1.svg +default_materials = Prusament Resin Tough Prusa Orange @0.05 + +# All presets starting with asterisk, for example *common*, are intermediate and they will +# not make it into the user interface. + +# Common print presets + +thumbnail = SL1_thumbnail.png +[sla_print:*common*] +compatible_printers_condition = printer_model=="SL1" +layer_height = 0.05 +output_filename_format = [input_filename_base].sl1 +pad_edge_radius = 0.5 +pad_enable = 1 +pad_max_merge_distance = 50 +pad_wall_height = 0 +pad_wall_thickness = 1 +pad_wall_slope = 45 +slice_closing_radius = 0.005 +support_base_diameter = 3 +support_base_height = 1 +support_critical_angle = 45 +support_density_at_45 = 250 +support_density_at_horizontal = 500 +support_head_front_diameter = 0.4 +support_head_penetration = 0.4 +support_head_width = 3 +support_max_bridge_length = 10 +support_minimal_z = 0 +support_object_elevation = 5 +support_pillar_diameter = 1 +support_pillar_connection_mode = zigzag +support_pillar_widening_factor = 0 +supports_enable = 1 +support_small_pillar_diameter_percent = 60% + +[sla_print:*SL1S*] +inherits = *common* +support_head_front_diameter = 0.5 +support_head_penetration = 0.5 +support_pillar_diameter = 1 +output_filename_format = [input_filename_base].sl1s +compatible_printers_condition = printer_model=="SL1S" + +# SL1 # + +[sla_print:0.025 UltraDetail] +inherits = *common* +layer_height = 0.025 +support_head_width = 2 + +; [sla_print:0.035 Detail] +; inherits = *common* +; layer_height = 0.035 + +[sla_print:0.05 Normal] +inherits = *common* +layer_height = 0.05 + +[sla_print:0.1 Fast] +inherits = *common* +layer_height = 0.1 +support_head_front_diameter = 0.5 +support_head_penetration = 0.5 +support_pillar_diameter = 1.3 + +# SL1S # + +[sla_print:0.025 UltraDetail @SL1S] +inherits = *SL1S* +layer_height = 0.025 +support_head_width = 3 + +[sla_print:0.05 Normal @SL1S] +inherits = *SL1S* +layer_height = 0.05 + +[sla_print:0.1 Fast @SL1S] +inherits = *SL1S* +layer_height = 0.1 +support_head_front_diameter = 0.6 +support_head_penetration = 0.6 + +########### Materials + +[sla_material:*common*] +compatible_printers_condition = printer_model=="SL1" +compatible_prints_condition = layer_height == 0.05 +exposure_time = 12 +initial_exposure_time = 45 +initial_layer_height = 0.05 +material_correction = 1,1,1 +material_notes = +material_print_speed = fast + +# SL1 + +[sla_material:*common 0.025*] +inherits = *common* +compatible_prints_condition = layer_height == 0.025 +exposure_time = 10 +initial_exposure_time = 35 +initial_layer_height = 0.025 + +[sla_material:*common 0.035*] +inherits = *common* +compatible_prints_condition = layer_height == 0.035 +exposure_time = 13 +initial_exposure_time = 40 +initial_layer_height = 0.035 + +[sla_material:*common 0.05*] +inherits = *common* + +[sla_material:*common 0.1*] +inherits = *common* +compatible_prints_condition = layer_height == 0.1 +exposure_time = 20 +initial_exposure_time = 45 +initial_layer_height = 0.1 + +[sla_material:*sl1_fast*] +area_fill = 35 +delay_before_exposure = 0,1 +delay_after_exposure = 0,0 +tower_hop_height = 0,0 +tower_speed = layer22,layer22 +use_tilt = 1,1 +tilt_down_initial_speed = layer400,layer400 +tilt_down_offset_steps = 0,0 +tilt_down_offset_delay = 0,0 +tilt_down_finish_speed = layer1750,layer1500 +tilt_down_cycles = 1,1 +tilt_down_delay = 0,0 +tilt_up_initial_speed = move5120,move5120 +tilt_up_offset_steps = 400,400 +tilt_up_offset_delay = 0,0 +tilt_up_finish_speed = layer400,layer400 +tilt_up_cycles = 1,1 +tilt_up_delay = 0,0 +# For legacy slicer versions +material_print_speed = fast + +# SL1S + +[sla_material:*0.025_sl1s*] +inherits = *common* +compatible_prints_condition = layer_height == 0.025 +compatible_printers_condition = printer_model=="SL1S" +exposure_time = 1.3 +initial_exposure_time = 25 +initial_layer_height = 0.025 + +[sla_material:*0.05_sl1s*] +inherits = *common* +compatible_printers_condition = printer_model=="SL1S" +exposure_time = 1.7 +initial_exposure_time = 25 + +[sla_material:*0.1_sl1s*] +inherits = *common* +compatible_prints_condition = layer_height == 0.1 +compatible_printers_condition = printer_model=="SL1S" +exposure_time = 2.6 +initial_exposure_time = 25 +initial_layer_height = 0.1 + +[sla_material:*sl1s_slow*] +area_fill = 35 +delay_before_exposure = 3,3 +delay_after_exposure = 0,0 +tower_hop_height = 0,0 +tower_speed = layer22,layer22 +use_tilt = 1,1 +tilt_down_initial_speed = layer1750,layer1750 +tilt_down_offset_steps = 0,0 +tilt_down_offset_delay = 0,0 +tilt_down_finish_speed = layer1750,layer1750 +tilt_down_cycles = 1,1 +tilt_down_delay = 0,0 +tilt_up_initial_speed = move8000,move8000 +tilt_up_offset_steps = 1200,1200 +tilt_up_offset_delay = 0,0 +tilt_up_finish_speed = layer1750,layer1750 +tilt_up_cycles = 1,1 +tilt_up_delay = 0,0 +# For legacy slicer versions +material_print_speed = slow + +[sla_material:*sl1s_fast*] +area_fill = 35 +delay_before_exposure = 0,1 +delay_after_exposure = 0,0 +tower_hop_height = 0,0 +tower_speed = layer22,layer22 +use_tilt = 1,1 +tilt_down_initial_speed = layer1750,layer1750 +tilt_down_offset_steps = 0,0 +tilt_down_offset_delay = 0,0 +tilt_down_finish_speed = move8000,layer1750 +tilt_down_cycles = 1,1 +tilt_down_delay = 0,0 +tilt_up_initial_speed = move8000,move8000 +tilt_up_offset_steps = 600,600 +tilt_up_offset_delay = 0,0 +tilt_up_finish_speed = layer1750,layer1750 +tilt_up_cycles = 1,1 +tilt_up_delay = 0,0 +# For legacy slicer versions +material_print_speed = slow + +[sla_material:*sl1s_hv*] +area_fill = 35 +delay_before_exposure = 3.5,3.5 +delay_after_exposure = 0,0 +tower_hop_height = 5,5 +tower_speed = layer2,layer2 +use_tilt = 1,1 +tilt_down_initial_speed = layer800,layer800 +tilt_down_offset_steps = 2200,2200 +tilt_down_offset_delay = 0,0 +tilt_down_finish_speed = layer1750,layer1750 +tilt_down_cycles = 1,1 +tilt_down_delay = 0,0 +tilt_up_initial_speed = layer1750,layer1750 +tilt_up_offset_steps = 2200,2200 +tilt_up_offset_delay = 0,0 +tilt_up_finish_speed = layer800,layer800 +tilt_up_cycles = 1,1 +tilt_up_delay = 0,0 +# For legacy slicer versions +material_print_speed = slow + +[sla_material:*legacy_fast*] +# For legacy slicer versions +material_print_speed = fast + +########### Materials 0.025 + +[sla_material:3DM-ABS @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DM +material_colour = #FF8040 + +[sla_material:3DM-Vulcan Gold @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 30 +material_type = Casting +material_vendor = 3DM +material_colour = #B0B000 + +[sla_material:3DM-TOUGH Clear @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 30 +material_type = Tough +material_vendor = 3DM +material_colour = #F8F8F8 + +[sla_material:3DM-HR Red Wine @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 14 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DM +material_colour = #EC0000 + +[sla_material:BlueCast Phrozen Wax @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 50 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast Castable Wax @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Casting +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast EcoGray @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 40 +material_type = Tough +material_vendor = BlueCast +material_colour = #808080 + +[sla_material:BlueCast Kera Master Dental @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 45 +material_type = Medical +material_vendor = BlueCast +material_colour = #B0B000 + +[sla_material:BlueCast Model Dental Gray @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Medical +material_vendor = BlueCast +material_colour = #C0C0C0 + +[sla_material:BlueCast X10 @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 100 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast X-One @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 25 +initial_exposure_time = 35 +material_type = Casting +material_vendor = BlueCast +material_colour = #C0C0C0 + +[sla_material:DruckWege Type D High Temp @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 20 +material_type = Tough +material_vendor = DruckWege +material_colour = #E800E8 + +[sla_material:Esun Bio-Photopolymer Resin White @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Esun +material_colour = #FFFFFF + +[sla_material:FunToDo Castable Blend Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Casting +material_vendor = FunToDo +material_colour = #EC0000 + +[sla_material:FunToDo Snow White @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = FunToDo +material_colour = #FFFFFF + +[sla_material:Harz Labs Basic Resin Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Harz Labs Model Resin Cherry @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Harz Labs Model Resin Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Harz Labs +material_colour = #595959 + +[sla_material:Harz Labs Dental Cast Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Esun Standard Resin Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Esun +material_colour = #595959 + +[sla_material:Photocentric Ash Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Photocentric +material_colour = #C0C0C0 + +[sla_material:Resinworks 3D Violet @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #E800E8 + +[sla_material:Resinworks 3D Green @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 17 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #00B900 + +[sla_material:Monocure 3D Black Rapid Resin @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Monocure +material_colour = #595959 + +[sla_material:Monocure 3D Blue Rapid Resin @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Monocure +material_colour = #007EFD + +## Prusa Polymers 0.025 + +[sla_material:Prusament Resin Tough Prusa Orange @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FF8040 + +[sla_material:Prusament Resin Tough Rich Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Tough Anthracite Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #808080 + +[sla_material:Prusament Resin Tough Sandstone Model @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EEA061 + +[sla_material:Prusament Resin Tough Terra Brown @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #7A5C45 + +[sla_material:Prusament Resin Tough Brick Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #B46056 + +[sla_material:Prusament Resin Tough Grass Green @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #37823F + +[sla_material:Prusament Resin Tough Bright Yellow @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F9DB4C + +[sla_material:Prusament Resin Tough Transparent Green @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #1DAf5E + +[sla_material:Prusament Resin Tough Transparent Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D21B31 + +[sla_material:Prusament Resin Tough Transparent Amber @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FCB30E + +[sla_material:Prusament Resin Tough Classic Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 3 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EC0000 + +[sla_material:Prusament Resin Model Solid Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #9C9D9D + +[sla_material:Prusament Resin Model Alabaster White @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4.5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D6D7D8 + +[sla_material:Prusament Resin Model Neutral Beige @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4.8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #BF9C87 + +[sla_material:Prusament Resin Model Ultra Violet @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #413A7A + +[sla_material:Prusament Resin BioBased60 Herbal Green @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #3AD200 + +[sla_material:Prusament Resin BioBased60 Magma Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D20202 + +[sla_material:Prusament Resin BioBased60 Natural Yellow @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #ECDE05 + +[sla_material:Prusament Resin BioBased60 Obsidian Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #232323 + +[sla_material:Prusament Resin BioBased60 Sapphire Blue @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7.7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #2196F3 + +[sla_material:Prusament Resin BioBased60 Ivory White @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #E3D99F + +[sla_material:Prusament Resin Flex80 Transparent Clear @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #F3F6F4 + +[sla_material:Prusament Resin Flex80 Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Flex80 White @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5.5 +initial_exposure_time = 35 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #E2D3DB + +[sla_material:Ameralabs TGM-7 LED @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Ameralabs +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Light Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Clear @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Tough White @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #FFFFFF + +[sla_material:PrimaCreator Flex Clear @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4.5 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Simple Clear @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Blu Clear V2 @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Blu Blue @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #007EFD + +[sla_material:Siraya Tech Fast Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #C0C0C0 + +[sla_material:Siraya Tech Tenacious @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Easy @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 11 +initial_exposure_time = 15 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Sculpt @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #C0C0C0 + +[sla_material:Siraya Tech Fast Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #007EFD + +[sla_material:NextDent Model 2.0 Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 14 +initial_exposure_time = 35 +material_type = Medical +material_vendor = NextDent +material_colour = #808080 + +[sla_material:NextDent Surgical Guide @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Medical +material_vendor = NextDent +material_colour = #FF8040 + +[sla_material:NextDent Cast Purple @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 20 +material_type = Casting +material_vendor = NextDent +material_colour = #E800E8 + +[sla_material:MakerJuice Labs Standard Red @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 35 +material_type = Tough +material_vendor = MakerJuice Labs +material_colour = #EC0000 + +[sla_material:3DJake High Precision Grey @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 8.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DJake +material_colour = #C0C0C0 + +[sla_material:3DJake High Precision Blue @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 6.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DJake +material_colour = #007EFD + +[sla_material:Zortrax Black @0.025] +inherits = *common 0.025*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Zortrax +material_colour = #595959 + +########### Materials 0.05 + +[sla_material:Asiga Denta Model @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 30 +material_type = Medical +material_vendor = Asiga +material_colour = #FFEEE6 + +[sla_material:Asiga PlasGRAY @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 29 +initial_exposure_time = 60 +material_type = Tough +material_vendor = Asiga +material_colour = #C0C0C0 + +[sla_material:Ameralabs TGM-7 LED @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Ameralabs +material_colour = #C0C0C0 + +[sla_material:Ameralabs AMD 3 LED @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Ameralabs +material_colour = #808080 + +[sla_material:BlueCast EcoGray @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = BlueCast +material_colour = #808080 + +[sla_material:BlueCast Kera Master Dental @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 50 +material_type = Medical +material_vendor = BlueCast +material_colour = #FFEEE6 + +[sla_material:BlueCast Model Dental Gray @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Medical +material_vendor = BlueCast +material_colour = #C0C0C0 + +[sla_material:BlueCast LCD-DLP Original @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 60 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast Phrozen Wax @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 16 +initial_exposure_time = 50 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast Castable Wax @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 11 +initial_exposure_time = 35 +material_type = Casting +material_vendor = BlueCast +material_colour = #E800E8 + +[sla_material:BlueCast S+ @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 45 +material_type = Tough +material_vendor = BlueCast +material_colour = #00B900 + +[sla_material:BlueCast X5 @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 100 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast X10 @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 100 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast 23LS @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 50 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast X-One @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 27 +initial_exposure_time = 35 +material_type = Casting +material_vendor = BlueCast +material_colour = #C0C0C0 + +[sla_material:DruckWege Type D High Temp @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 20 +material_type = Tough +material_vendor = DruckWege +material_colour = #E800E8 + +[sla_material:Monocure 3D Black Rapid Resin @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Monocure +material_colour = #595959 + +[sla_material:Monocure 3D Blue Rapid Resin @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Monocure +material_colour = #007EFD + +[sla_material:Monocure 3D Clear Rapid Resin @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Monocure +material_colour = #F8F8F8 + +[sla_material:Monocure 3D Grey Rapid Resin @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Monocure +material_colour = #C0C0C0 + +[sla_material:Monocure 3D White Rapid Resin @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Monocure +material_colour = #FFFFFF + +[sla_material:3DM-HTR140 (high temperature) @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 45 +material_type = Tough +material_vendor = 3DM +material_colour = #EC0000 + +[sla_material:Esun Bio-Photopolymer Resin White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Esun +material_colour = #FFFFFF + +[sla_material:Esun Standard Resin Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Esun +material_colour = #595959 + +[sla_material:FunToDo Castable Blend Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 35 +material_type = Casting +material_vendor = FunToDo +material_colour = #EC0000 + +[sla_material:FunToDo Industrial Blend Unpigmented @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = FunToDo +material_colour = #F8F8F8 + +[sla_material:FunToDo Snow White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = FunToDo +material_colour = #FFFFFF + +[sla_material:3DM-ABS @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #FF8040 + +[sla_material:3DM-BLACK @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 20 +initial_exposure_time = 40 +material_type = Tough +material_vendor = 3DM +material_colour = #595959 + +[sla_material:3DM-DENT @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 45 +material_type = Medical +material_vendor = 3DM +material_colour = #FFEEE6 + +[sla_material:3DM-HR Green @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 40 +material_type = Tough +material_vendor = 3DM +material_colour = #00B900 + +[sla_material:3DM-HR Red Wine @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 18 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DM +material_colour = #EC0000 + +[sla_material:3DM-XPRO White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DM +material_colour = #FFFFFF + +[sla_material:3DM-Vulcan Gold @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 30 +material_type = Tough +material_vendor = 3DM +material_colour = #B0B000 + +[sla_material:3DM-TOUGH Clear @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 30 +material_type = Tough +material_vendor = 3DM +material_colour = #F8F8F8 + +[sla_material:FunToDo Ash Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 40 +material_type = Tough +material_vendor = FunToDo +material_colour = #808080 + +[sla_material:Harz Labs Model Resin Cherry @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Harz Labs Basic Resin Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Harz Labs Model Resin Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Harz Labs +material_colour = #595959 + +[sla_material:Harz Labs Dental Cast Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Resinworks 3D Violet @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 17 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #E800E8 + +[sla_material:Resinworks 3D Green @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 21 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #00B900 + +[sla_material:Photocentric Hard Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Photocentric +material_colour = #808080 + +[sla_material:Photocentric Ash Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Photocentric +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Light Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Clear @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Tough White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #FFFFFF + +[sla_material:PrimaCreator Flex Clear @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6.5 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Simple Clear @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Blu Clear V2 @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Blu Blue @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #007EFD + +[sla_material:Siraya Tech Fast Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #C0C0C0 + +[sla_material:Siraya Tech Tenacious @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Easy @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 15 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Sculpt @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #C0C0C0 + +[sla_material:Siraya Tech Fast Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #595959 + +[sla_material:NextDent Model 2.0 Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 35 +material_type = Medical +material_vendor = NextDent +material_colour = #C0C0C0 + +[sla_material:NextDent Surgical Guide @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Medical +material_vendor = NextDent +material_colour = #FFEEE6 + +[sla_material:NextDent Cast Purple @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 20 +material_type = Casting +material_vendor = NextDent +material_colour = #E800E8 + +[sla_material:NextDent Crown Bridge @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 11 +initial_exposure_time = 35 +material_type = Medical +material_vendor = NextDent +material_colour = #FFFFFF + +[sla_material:MakerJuice Labs Standard Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = MakerJuice Labs +material_colour = #EC0000 + +[sla_material:3DJake High Precision Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DJake +material_colour = #C0C0C0 + +[sla_material:3DJake High Precision Blue @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = 3DJake +material_colour = #007EFD + +[sla_material:Dragon Resin Metalshine Metal Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 30 +initial_exposure_time = 50 +material_type = Tough +material_vendor = Dragon Resin +material_colour = #808080 + +[sla_material:Dragon Resin Metalshine Dark Brass @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 30 +initial_exposure_time = 50 +material_type = Tough +material_vendor = Dragon Resin +material_colour = #B0B000 + +[sla_material:Dragon Resin Metalshine Brass @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 30 +initial_exposure_time = 50 +material_type = Tough +material_vendor = Dragon Resin +material_colour = #B0B000 + +[sla_material:Zortrax Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Zortrax +material_colour = #595959 + +## Prusa Polymers 0.05 + +[sla_material:Prusament Resin Tough Prusa Orange @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FF8040 + +[sla_material:Prusament Resin Tough Rich Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Tough Anthracite Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #C0C0C0 + +[sla_material:Prusament Resin Tough Sandstone Model @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EEA061 + +[sla_material:Prusament Resin Tough Terra Brown @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #7A5C45 + +[sla_material:Prusament Resin Tough Brick Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #B46056 + +[sla_material:Prusament Resin Tough Grass Green @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #37823F + +[sla_material:Prusament Resin Tough Bright Yellow @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F9DB4C + +[sla_material:Prusament Resin Tough Transparent Green @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #1DAf5E + +[sla_material:Prusament Resin Tough Transparent Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D21B31 + +[sla_material:Prusament Resin Tough Transparent Amber @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FCB30E + +[sla_material:Prusament Resin Tough Classic Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 4 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EC0000 + +[sla_material:Prusament Resin Model Solid Grey @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #9C9D9D + +[sla_material:Prusament Resin Model Alabaster White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D6D7D8 + +[sla_material:Prusament Resin Model Neutral Beige @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 5.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #BF9C87 + +[sla_material:Prusament Resin Model Ultra Violet @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #413A7A + +[sla_material:Prusament Resin BioBased60 Herbal Green @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #3AD200 + +[sla_material:Prusament Resin BioBased60 Magma Red @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D20202 + +[sla_material:Prusament Resin BioBased60 Natural Yellow @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #ECDE05 + +[sla_material:Prusament Resin BioBased60 Obsidian Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #232323 + +[sla_material:Prusament Resin BioBased60 Sapphire Blue @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #2196F3 + +[sla_material:Prusament Resin BioBased60 Ivory White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 9.5 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #E3D99F + +[sla_material:Prusament Resin Flex80 Transparent Clear @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 15 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #F3F6F4 + +[sla_material:Prusament Resin Flex80 Black @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Flex80 White @0.05] +inherits = *common 0.05*; *sl1_fast* +exposure_time = 6.5 +initial_exposure_time = 35 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #E2D3DB + +########### Materials 0.1 + +[sla_material:BlueCast EcoGray @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 35 +material_type = Tough +material_vendor = BlueCast +material_colour = #C0C0C0 + +[sla_material:BlueCast Kera Master Dental @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 50 +material_type = Tough +material_vendor = BlueCast +material_colour = #FFEEE6 + +[sla_material:BlueCast X-One @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 30 +initial_exposure_time = 45 +material_type = Casting +material_vendor = BlueCast +material_colour = #C0C0C0 + +[sla_material:Ameralabs TGM-7 LED @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 10 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Ameralabs +material_colour = #C0C0C0 + +## Prusa Polymers 0.1 + +[sla_material:Prusament Resin Tough Prusa Orange @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FF8040 + +[sla_material:Prusament Resin Tough Rich Black @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Tough Anthracite Grey @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 14 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #808080 + +[sla_material:Prusament Resin Tough Classic Red @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 6 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EC0000 + +[sla_material:Prusament Resin Tough Sandstone Model @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EEA061 + +[sla_material:Prusament Resin Tough Terra Brown @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #7A5C45 + +[sla_material:Prusament Resin Tough Brick Red @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #B46056 + +[sla_material:Prusament Resin Tough Grass Green @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #37823F + +[sla_material:Prusament Resin Tough Bright Yellow @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F9DB4C + +[sla_material:Prusament Resin Tough Transparent Green @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #1DAf5E + +[sla_material:Prusament Resin Tough Transparent Red @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D21B31 + +[sla_material:Prusament Resin Tough Transparent Amber @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FCB30E + +[sla_material:Prusament Resin BioBased60 Herbal Green @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #3AD200 + +[sla_material:Prusament Resin Model Solid Grey @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #9C9D9D + +[sla_material:Prusament Resin Model Alabaster White @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D6D7D8 + +[sla_material:Prusament Resin Model Neutral Beige @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #BF9C87 + +[sla_material:Prusament Resin Model Ultra Violet @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 7 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #413A7A + +[sla_material:Prusament Resin BioBased60 Magma Red @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D20202 + +[sla_material:Prusament Resin BioBased60 Natural Yellow @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 8 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #ECDE05 + +[sla_material:Prusament Resin BioBased60 Obsidian Black @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 16 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #232323 + +[sla_material:Prusament Resin BioBased60 Sapphire Blue @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 9 +initial_exposure_time = 35 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #2196F3 + +[sla_material:Prusament Resin BioBased60 Ivory White @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 45 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #E3D99F + +[sla_material:Prusament Resin Flex80 Transparent Clear @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 20 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #F3F6F4 + +[sla_material:Prusament Resin Flex80 Black @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 30 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Flex80 White @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 7.5 +initial_exposure_time = 45 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #E2D3DB + +[sla_material:PrimaCreator Tough Light Grey @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 14 +initial_exposure_time = 45 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Clear @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Tough White @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 13 +initial_exposure_time = 45 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #FFFFFF + +[sla_material:PrimaCreator Flex Clear @0.1] +inherits = *common 0.1*; *sl1_fast* +exposure_time = 12 +initial_exposure_time = 35 +material_type = Flexible +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +## SL1S materials ## + +## 0.025 SL1S + +## Prusa Polymers 0.025 + +[sla_material:Prusament Resin Tough Prusa Orange @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FF8040 + +[sla_material:Prusament Resin Tough Rich Black @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Tough Anthracite Grey @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #808080 + +[sla_material:Prusament Resin Tough Sandstone Model @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EEA061 + +[sla_material:Prusament Resin Tough Terra Brown @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #7A5C45 + +[sla_material:Prusament Resin Tough Brick Red @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #B46056 + +[sla_material:Prusament Resin Tough Grass Green @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #37823F + +[sla_material:Prusament Resin Tough Bright Yellow @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F9DB4C + +[sla_material:Prusament Resin Tough Transparent Green @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #1DAf5E + +[sla_material:Prusament Resin Tough Transparent Red @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D21B31 + +[sla_material:Prusament Resin Tough Transparent Amber @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FCB30E + +[sla_material:Prusament Resin Tough Classic Red @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EC0000 + +[sla_material:Prusament Resin Model Solid Grey @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #9C9D9D + +[sla_material:Prusament Resin Model Alabaster White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D6D7D8 + +[sla_material:Prusament Resin Model Neutral Beige @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #BF9C87 + +[sla_material:Prusament Resin Model Ultra Violet @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #413A7A + +[sla_material:Prusament Resin Model Transparent Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.2 +initial_exposure_time = 10 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F3F6F4 + +[sla_material:Prusament Resin BioBased60 Herbal Green @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #3AD200 + +[sla_material:Prusament Resin BioBased60 Magma Red @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D20202 + +[sla_material:Prusament Resin BioBased60 Natural Yellow @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 2.8 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #ECDE05 +material_print_speed = slow + +[sla_material:Prusament Resin BioBased60 Obsidian Black @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #232323 + +[sla_material:Prusament Resin BioBased60 Sapphire Blue @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #2196F3 + +[sla_material:Prusament Resin BioBased60 Ivory White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 50 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #E3D99F + +[sla_material:Prusament Resin Flex80 Transparent Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 4 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #F3F6F4 +material_print_speed = slow + +[sla_material:Prusament Resin Flex80 Black @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #595959 +material_print_speed = slow + +[sla_material:Prusament Resin Flex80 White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 17 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #E2D3DB + +[sla_material:Prusament Resin Flex Anatomic Red @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 2.6 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Prusa Polymers +material_colour = #AD4F54 + +[sla_material:Prusament Resin Flex Gingiva Mask @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 2.6 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Prusa Polymers +material_colour = #DB7F80 + +[sla_material:Ameralabs TGM-7 LED @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Ameralabs +material_colour = #C0C0C0 +material_print_speed = slow + +[sla_material:BASF Ultracur3D RG 35 @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFEEE6 + +[sla_material:BASF Ultracur3D ST 45 @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D ST 45 M @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D ST 80 @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFEEE6 + +[sla_material:BASF Ultracur3D ST 80 White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFFFFF + +[sla_material:BASF Ultracur3D ST 80 Black @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D EL 150 Black @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D FL 300 Black @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = BASF +material_colour = #595959 + +[sla_material:BlueCast X-One @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 6 +initial_exposure_time = 25 +material_type = Casting +material_vendor = BlueCast +material_colour = #C0C0C0 +material_print_speed = slow + +[sla_material:PrimaCreator Tough Light Grey @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Tough White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #FFFFFF + +[sla_material:PrimaCreator Flex Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Water Washable Transparent @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:DruckWege Type D Dental Model @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 1.2 +initial_exposure_time = 15 +material_type = Medical +material_vendor = DruckWege +material_colour = #FFEEE6 +material_print_speed = slow + +[sla_material:DruckWege Type D Standard White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 1.6 +initial_exposure_time = 15 +material_type = Tough +material_vendor = DruckWege +material_colour = #FFFFFF +material_print_speed = slow + +[sla_material:DruckWege Type D Standard Pigmentfrei Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_slow* +exposure_time = 1.8 +initial_exposure_time = 15 +material_type = Tough +material_vendor = DruckWege +material_colour = #F8F8F8 +material_print_speed = slow + +[sla_material:3DM-ABS Orange @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #FF8040 + +[sla_material:3DM-TOUGH Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #F8F8F8 + +[sla_material:Peopoly Deft White @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Peopoly +material_colour = #FFFFFF + +[sla_material:Peopoly Neo Clear @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Peopoly +material_colour = #F8F8F8 + +[sla_material:Liqcreate Clear Impact @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 7 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Liqcreate +material_colour = #F8F8F8 + +[sla_material:Liqcreate Strong X @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 7 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Liqcreate +material_colour = #C0C0C0 + +[sla_material:Resinworks 3D Green @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #00B900 + +[sla_material:3DJake Blue @0.025 SL1S] +inherits = *0.025_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DJake +material_colour = #007EFD + +## 0.05 SL1S + +## Prusa Polymers 0.05 + +[sla_material:Prusament Resin Tough Prusa Orange @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FF8040 + +[sla_material:Prusament Resin Tough Rich Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Tough Anthracite Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.4 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #808080 + +[sla_material:Prusament Resin Tough Sandstone Model @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.4 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EEA061 + +[sla_material:Prusament Resin Tough Terra Brown @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #7A5C45 + +[sla_material:Prusament Resin Tough Brick Red @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #B46056 + +[sla_material:Prusament Resin Tough Grass Green @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #37823F + +[sla_material:Prusament Resin Tough Bright Yellow @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F9DB4C + +[sla_material:Prusament Resin Tough Transparent Green @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #1DAf5E + +[sla_material:Prusament Resin Tough Transparent Red @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D21B31 + +[sla_material:Prusament Resin Tough Transparent Amber @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FCB30E + +[sla_material:Prusament Resin Tough Classic Red @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EC0000 + +[sla_material:Prusament Resin Model Solid Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #9C9D9D + +[sla_material:Prusament Resin Model Alabaster White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.2 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D6D7D8 + +[sla_material:Prusament Resin Model Neutral Beige @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #BF9C87 + +[sla_material:Prusament Resin Model Ultra Violet @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #413A7A + +[sla_material:Prusament Resin Model Transparent Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.5 +initial_exposure_time = 10 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F3F6F4 + +[sla_material:Prusament Resin BioBased60 Herbal Green @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #3AD200 + +[sla_material:Prusament Resin BioBased60 Magma Red @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D20202 + +[sla_material:Prusament Resin BioBased60 Natural Yellow @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 3 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #ECDE05 +material_print_speed = slow + +[sla_material:Prusament Resin BioBased60 Obsidian Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #232323 + +[sla_material:Prusament Resin BioBased60 Sapphire Blue @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #2196F3 + +[sla_material:Prusament Resin BioBased60 Ivory White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.5 +initial_exposure_time = 50 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #E3D99F + +[sla_material:Prusament Resin Flex80 Transparent Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 5 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #F3F6F4 +material_print_speed = slow + +[sla_material:Prusament Resin Flex80 Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #595959 +material_print_speed = slow + +[sla_material:Prusament Resin Flex80 White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 17 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #E2D3DB + +[sla_material:Prusament Resin Flex Anatomic Red @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 3 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Prusa Polymers +material_colour = #AD4F54 + +[sla_material:Prusament Resin Flex Gingiva Mask @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 3 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Prusa Polymers +material_colour = #DB7F80 + +[sla_material:Ameralabs TGM-7 LED @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Ameralabs +material_colour = #C0C0C0 +material_print_speed = slow + +[sla_material:BASF Ultracur3D RG 35 @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFEEE6 + +[sla_material:BASF Ultracur3D ST 45 @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D ST 45 M @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D ST 80 @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFEEE6 + +[sla_material:BASF Ultracur3D ST 80 White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5.9 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFFFFF + +[sla_material:BASF Ultracur3D ST 80 Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5.9 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D EL 150 Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.8 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D FL 300 Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.8 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = BASF +material_colour = #595959 + +[sla_material:PrimaCreator Tough Light Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.4 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Tough White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #FFFFFF + +[sla_material:PrimaCreator Flex Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Water Washable Transparent @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:DruckWege Type D Dental Model @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 1.4 +initial_exposure_time = 15 +material_type = Medical +material_vendor = DruckWege +material_colour = #FFEEE6 +material_print_speed = slow + +[sla_material:DruckWege Type D Standard White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 2 +initial_exposure_time = 15 +material_type = Tough +material_vendor = DruckWege +material_colour = #FFFFFF +material_print_speed = slow + +[sla_material:DruckWege Type D Standard Pigmentfrei Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 2 +initial_exposure_time = 15 +material_type = Tough +material_vendor = DruckWege +material_colour = #F8F8F8 +material_print_speed = slow + +[sla_material:3DM-ABS Orange @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #FF8040 + +[sla_material:3DM-TOUGH Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #F8F8F8 + +[sla_material:Peopoly Deft White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Peopoly +material_colour = #FFFFFF + +[sla_material:Peopoly Neo Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Peopoly +material_colour = #F8F8F8 + +[sla_material:3DM-ABS @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #FF8040 + +[sla_material:3DM-DENT @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.3 +initial_exposure_time = 36 +material_type = Medical +material_vendor = 3DM +material_colour = #FFEEE6 + +[sla_material:3DM-HR Green @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 28 +material_type = Tough +material_vendor = 3DM +material_colour = #00B900 + +[sla_material:3DM-HR Red Wine @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 6 +initial_exposure_time = 32 +material_type = Tough +material_vendor = 3DM +material_colour = #EC0000 + +[sla_material:3DM-Vulcan Gold @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 24 +material_type = Casting +material_vendor = 3DM +material_colour = #B0B000 + +[sla_material:3DM-XPRO White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = 3DM +material_colour = #FFFFFF + +[sla_material:Asiga Denta Model @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 24 +material_type = Medical +material_vendor = Asiga +material_colour = #FFEEE6 + +[sla_material:Asiga PlasGRAY @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 9.7 +initial_exposure_time = 48 +material_type = Tough +material_vendor = Asiga +material_colour = #C0C0C0 + +[sla_material:BlueCast EcoGray @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = BlueCast +material_colour = #808080 + +[sla_material:BlueCast Phrozen Wax @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5.3 +initial_exposure_time = 40 +material_type = Tough +material_vendor = BlueCast +material_colour = #007EFD + +[sla_material:BlueCast X-One @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_slow* +exposure_time = 7 +initial_exposure_time = 25 +material_type = Casting +material_vendor = BlueCast +material_colour = #C0C0C0 +material_print_speed = slow + +[sla_material:NextDent Model 2.0 Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 28 +material_type = Medical +material_vendor = NextDent +material_colour = #C0C0C0 + +[sla_material:NextDent Cast Purple @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 16 +material_type = Casting +material_vendor = NextDent +material_colour = #E800E8 + +[sla_material:Siraya Tech Tenacious @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.7 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Blu Clear V2 @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.3 +initial_exposure_time = 24 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Blu Blue @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #007EFD + +[sla_material:Siraya Tech Fast Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #595959 + +[sla_material:Siraya Tech Fast Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #C0C0C0 + +[sla_material:Siraya Tech Simple Clear @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #F8F8F8 + +[sla_material:Siraya Tech Sculpt @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.7 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Siraya Tech +material_colour = #C0C0C0 + +[sla_material:Harz Labs Model Resin Cherry @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.3 +initial_exposure_time = 16 +material_type = Tough +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Harz Labs Model Resin Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.3 +initial_exposure_time = 16 +material_type = Tough +material_vendor = Harz Labs +material_colour = #595959 + +[sla_material:Harz Labs Basic Resin Red @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.3 +initial_exposure_time = 16 +material_type = Tough +material_vendor = Harz Labs +material_colour = #EC0000 + +[sla_material:Resinworks 3D Violet @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5.7 +initial_exposure_time = 24 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #E800E8 + +[sla_material:FunToDo Industrial Blend Unpigmented @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = FunToDo +material_colour = #F8F8F8 + +[sla_material:FunToDo Snow White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = FunToDo +material_colour = #FFFFFF + +[sla_material:FunToDo Ash Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 32 +material_type = Tough +material_vendor = FunToDo +material_colour = #808080 + +[sla_material:Ameralabs AMD 3 LED @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 1.7 +initial_exposure_time = 24 +material_type = Tough +material_vendor = Ameralabs +material_colour = #808080 + +[sla_material:Dragon Resin Metalshine Metal Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 10 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Dragon Resin +material_colour = #808080 + +[sla_material:Dragon Resin Metalshine Dark Brass @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 10 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Dragon Resin +material_colour = #B0B000 + +[sla_material:Dragon Resin Metalshine Brass @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 10 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Dragon Resin +material_colour = #B0B000 + +[sla_material:Esun Bio-Photopolymer Resin White @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.7 +initial_exposure_time = 24 +material_type = Tough +material_vendor = Esun +material_colour = #FFFFFF + +[sla_material:Esun Standard Resin Black @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.3 +initial_exposure_time = 24 +material_type = Tough +material_vendor = Esun +material_colour = #595959 + +[sla_material:Monocure 3D Black Rapid Resin @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Monocure +material_colour = #595959 + +[sla_material:Monocure 3D Blue Rapid Resin @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Monocure +material_colour = #007EFD + +[sla_material:Monocure 3D Clear Rapid Resin @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.7 +initial_exposure_time = 32 +material_type = Tough +material_vendor = Monocure +material_colour = #F8F8F8 + +[sla_material:Monocure 3D Grey Rapid Resin @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Monocure +material_colour = #C0C0C0 + +[sla_material:Monocure 3D White Rapid Resin @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.3 +initial_exposure_time = 28 +material_type = Tough +material_vendor = Monocure +material_colour = #FFFFFF + +[sla_material:Photocentric Hard Grey @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 24 +material_type = Tough +material_vendor = Photocentric +material_colour = #808080 + +[sla_material:Liqcreate Clear Impact @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 10 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Liqcreate +material_colour = #F8F8F8 + +[sla_material:Liqcreate Strong X @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 10 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Liqcreate +material_colour = #C0C0C0 + +[sla_material:Resinworks 3D Green @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 7 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #00B900 + +[sla_material:3DJake Blue @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DJake +material_colour = #007EFD + +[sla_material:LOCTITE 3D IND475 @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 15 +material_type = Flexible +material_vendor = Henkel +material_colour = #FFFFFF + +[sla_material:LOCTITE 3D PRO476 @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 7 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Henkel +material_colour = #595959 + +[sla_material:LOCTITE 3D 3843 HDT60 High Toughness @0.05 SL1S] +inherits = *0.05_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 13 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Henkel +material_colour = #595959 + +## 0.1 SL1S + +## Prusa Polymers 0.1 + +[sla_material:Prusament Resin Tough Prusa Orange @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FF8040 + +[sla_material:Prusament Resin Tough Rich Black @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #595959 + +[sla_material:Prusament Resin Tough Anthracite Grey @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #808080 + +[sla_material:Prusament Resin Tough Sandstone Model @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EEA061 + +[sla_material:Prusament Resin Tough Terra Brown @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #7A5C45 + +[sla_material:Prusament Resin Tough Brick Red @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #B46056 + +[sla_material:Prusament Resin Tough Grass Green @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #37823F + +[sla_material:Prusament Resin Tough Bright Yellow @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F9DB4C + +[sla_material:Prusament Resin Tough Transparent Green @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #1DAf5E + +[sla_material:Prusament Resin Tough Transparent Red @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D21B31 + +[sla_material:Prusament Resin Tough Transparent Amber @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #FCB30E + +[sla_material:Prusament Resin Tough Classic Red @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #EC0000 + +[sla_material:Prusament Resin Model Solid Grey @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #9C9D9D + +[sla_material:Prusament Resin Model Alabaster White @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.8 +initial_exposure_time = 20 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D6D7D8 + +[sla_material:Prusament Resin Model Neutral Beige @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.8 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #BF9C87 + +[sla_material:Prusament Resin Model Ultra Violet @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #413A7A + +[sla_material:Prusament Resin Model Transparent Clear @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 3.2 +initial_exposure_time = 10 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #F3F6F4 +material_print_speed = slow + +[sla_material:Prusament Resin BioBased60 Herbal Green @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #3AD200 + +[sla_material:Prusament Resin BioBased60 Magma Red @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #D20202 + +[sla_material:Prusament Resin BioBased60 Natural Yellow @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 4 +initial_exposure_time = 30 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #ECDE05 +material_print_speed = slow + +[sla_material:Prusament Resin BioBased60 Obsidian Black @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 7.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #232323 + +[sla_material:Prusament Resin BioBased60 Sapphire Blue @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #2196F3 + +[sla_material:Prusament Resin BioBased60 Ivory White @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 50 +material_type = Tough +material_vendor = Prusa Polymers +material_colour = #E3D99F + +[sla_material:Prusament Resin Flex80 Transparent Clear @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 6 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #F3F6F4 +material_print_speed = slow + +[sla_material:Prusament Resin Flex80 Black @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 3.5 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #595959 +material_print_speed = slow + +[sla_material:Prusament Resin Flex80 White @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3.5 +initial_exposure_time = 17 +material_type = Flexible +material_vendor = Prusa Polymers +material_colour = #E2D3DB + +[sla_material:Prusament Resin Flex Anatomic Red @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 3.5 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Prusa Polymers +material_colour = #AD4F54 + +[sla_material:Prusament Resin Flex Gingiva Mask @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 3.5 +initial_exposure_time = 20 +material_type = Medical +material_vendor = Prusa Polymers +material_colour = #DB7F80 + +[sla_material:Ameralabs TGM-7 LED @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Ameralabs +material_colour = #C0C0C0 +material_print_speed = slow + +[sla_material:BASF Ultracur3D RG 35 @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 10 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFEEE6 + +[sla_material:BASF Ultracur3D ST 45 @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 7.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D ST 45 M @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 4.5 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D ST 80 @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 9 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFEEE6 + +[sla_material:BASF Ultracur3D ST 80 White @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 9 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #FFFFFF + +[sla_material:BASF Ultracur3D ST 80 Black @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 9 +initial_exposure_time = 25 +material_type = Tough +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D EL 150 Black @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 5 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = BASF +material_colour = #595959 + +[sla_material:BASF Ultracur3D FL 300 Black @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 6 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = BASF +material_colour = #595959 + +[sla_material:BlueCast X-One @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 8.5 +initial_exposure_time = 25 +material_type = Casting +material_vendor = BlueCast +material_colour = #C0C0C0 +material_print_speed = slow + +[sla_material:PrimaCreator Tough Light Grey @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #C0C0C0 + +[sla_material:PrimaCreator Tough Clear @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Tough White @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #FFFFFF + +[sla_material:PrimaCreator Flex Clear @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Flexible +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:PrimaCreator Water Washable Transparent @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = PrimaCreator +material_colour = #F8F8F8 + +[sla_material:DruckWege Type D Dental Model @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_slow* +exposure_time = 2.6 +initial_exposure_time = 15 +material_type = Medical +material_vendor = DruckWege +material_colour = #FFEEE6 +material_print_speed = slow + +[sla_material:3DM-ABS Orange @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #FF8040 + +[sla_material:3DM-TOUGH Clear @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DM +material_colour = #F8F8F8 + +[sla_material:Peopoly Deft White @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Peopoly +material_colour = #FFFFFF + +[sla_material:Peopoly Neo Clear @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 2.6 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Peopoly +material_colour = #F8F8F8 + +[sla_material:Liqcreate Clear Impact @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 20 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Liqcreate +material_colour = #F8F8F8 + +[sla_material:Liqcreate Strong X @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 20 +initial_exposure_time = 40 +material_type = Tough +material_vendor = Liqcreate +material_colour = #C0C0C0 + +[sla_material:Resinworks 3D Green @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 13 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Resinworks 3D +material_colour = #00B900 + +[sla_material:3DJake Blue @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 3 +initial_exposure_time = 25 +material_type = Tough +material_vendor = 3DJake +material_colour = #007EFD + +[sla_material:LOCTITE 3D IND475 @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 6.5 +initial_exposure_time = 15 +material_type = Flexible +material_vendor = Henkel +material_colour = #FFFFFF + +[sla_material:LOCTITE 3D PRO476 @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 9 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Henkel +material_colour = #595959 + +[sla_material:LOCTITE 3D 3843 HDT60 High Toughness @0.1 SL1S] +inherits = *0.1_sl1s*; *sl1s_fast*; *legacy_fast* +exposure_time = 18 +initial_exposure_time = 25 +material_type = Tough +material_vendor = Henkel +material_colour = #595959 + +# Printer presets + +[printer:Original Prusa SL1] +printer_technology = SLA +printer_model = SL1 +printer_variant = default +default_sla_material_profile = Prusa Orange Tough @0.05 +default_sla_print_profile = 0.05 Normal +thumbnails = 400x400,800x480 +bed_shape = 1.48x1.02,119.48x1.02,119.48x67.02,1.48x67.02 +display_height = 68.04 +display_orientation = portrait +display_pixels_x = 2560 +display_pixels_y = 1440 +display_width = 120.96 +max_print_height = 150 +min_exposure_time = 1 +max_exposure_time = 120 +min_initial_exposure_time = 1 +max_initial_exposure_time = 300 +printer_correction = 1,1,1 +printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_SL1\n + +[printer:Original Prusa SL1S SPEED] +printer_technology = SLA +printer_model = SL1S +printer_variant = default +default_sla_material_profile = Prusa Orange Tough @0.05 SL1S +default_sla_print_profile = 0.05 Normal @SL1S +thumbnails = 400x400,800x480 +bed_shape = 0.5x0.5,127.5x0.5,127.5x80.5,0.5x80.5 +display_height = 81 +display_mirror_x = 1 +display_mirror_y = 0 +display_orientation = portrait +display_pixels_x = 2560 +display_pixels_y = 1620 +display_width = 128 +elefant_foot_compensation = 0.2 +elefant_foot_min_width = 0.2 +fast_tilt_time = 2.5 +slow_tilt_time = 5 +gamma_correction = 1 +max_print_height = 150 +min_exposure_time = 1 +max_exposure_time = 120 +min_initial_exposure_time = 1 +max_initial_exposure_time = 300 +printer_correction = 1,1,1 +relative_correction = 1,1 \ No newline at end of file diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp index 3159aacaad..512dff085f 100644 --- a/src/libslic3r/Preset.cpp +++ b/src/libslic3r/Preset.cpp @@ -161,7 +161,8 @@ VendorProfile VendorProfile::from_ini(const ptree &tree, const boost::filesystem res.repo_id = repo_id->second.data(); } else { // For backward compatibility assume all profiles without repo_id are from "prod" repo - res.repo_id = "prod"; + // DK: "No, dont!" + res.repo_id = ""; } if (! load_all) { diff --git a/src/slic3r/GUI/ConfigWizard.cpp b/src/slic3r/GUI/ConfigWizard.cpp index 06db329c06..cc7f6ab171 100644 --- a/src/slic3r/GUI/ConfigWizard.cpp +++ b/src/slic3r/GUI/ConfigWizard.cpp @@ -129,6 +129,7 @@ BundleMap BundleMap::load() { BundleMap res; + const PresetArchiveDatabase* pad = wxGetApp().plater()->get_preset_archive_database(); const auto vendor_dir = (boost::filesystem::path(Slic3r::data_dir()) / "vendor").make_preferred(); const auto archive_dir = (boost::filesystem::path(Slic3r::data_dir()) / "cache" / "vendor").make_preferred(); const auto rsrc_vendor_dir = (boost::filesystem::path(resources_dir()) / "profiles").make_preferred(); @@ -182,6 +183,96 @@ BundleMap BundleMap::load() continue; } + Slic3r::GUI::Config::Index index; + try { + index.load(idx_path); + } + catch (const std::exception& /* err */) { + BOOST_LOG_TRIVIAL(error) << format("Could not load bundle %1% due to invalid index %2%.", id, idx_path.string()); + continue; + } + const auto recommended_it = index.recommended(); + if (recommended_it == index.end()) { + BOOST_LOG_TRIVIAL(error) << format("Could not load bundle %1% due to no recommended version in index %2%.", id, idx_path.string()); + continue; + } + const auto recommended = recommended_it->config_version; + VendorProfile vp; + // Check if in selected repo. + try { + vp = VendorProfile::from_ini(dir_entry, false); + } + catch (const std::exception& e) { + BOOST_LOG_TRIVIAL(error) << format("Could not load bundle %1% due to corrupted profile file %2%. Message: %3%", id, dir_entry.path().string(), e.what()); + continue; + } + if (vp.repo_id.empty() || !pad->is_selected_repository_by_id(vp.repo_id)) { + continue; + } + // Don't load + if (vp.config_version > recommended) + continue; + // Load full VP. + try { + vp = VendorProfile::from_ini(dir_entry, true); + } + catch (const std::exception& e) { + BOOST_LOG_TRIVIAL(error) << format("Could not load bundle %1% due to corrupted profile file %2%. Message: %3%", id, dir_entry.path().string(), e.what()); + continue; + } + Bundle bundle; + if (bundle.load(dir_entry.path(), dir.second)) + res.emplace(std::move(id), std::move(bundle)); + } + } + } + + return res; +} +#if 0 +// Reload is a mockup of a function that takes existing BundleMap and reshapes it into current form. +// It would be called after calling preset_updater->sync_blocking() and preset_updater->config_update() instead of fully loading it from scratch. +// Some entries will stop existing because its repositories were unselected. +// Missing: Entries that changed location: e.g. newer ini is now ready in archive_dir, while previously it was in rsrc_vendor_dir +void BundleMap::reload(BundleMap& res) +{ + const auto vendor_dir = (boost::filesystem::path(Slic3r::data_dir()) / "vendor").make_preferred(); + const auto archive_dir = (boost::filesystem::path(Slic3r::data_dir()) / "cache" / "vendor").make_preferred(); + const auto rsrc_vendor_dir = (boost::filesystem::path(resources_dir()) / "profiles").make_preferred(); + const auto cache_dir = boost::filesystem::path(Slic3r::data_dir()) / "cache"; // for Index + + // Load the other bundles in the datadir/vendor directory + // and then additionally from datadir/cache/vendor (archive) and resources/profiles. + // Should we concider case where archive has older profiles than resources (shouldnt happen)? -> YES, it happens during re-configuration when running older PS after newer version + typedef std::pair DirData; + std::vector dir_list{ {vendor_dir, BundleLocation::IN_VENDOR}, {archive_dir, BundleLocation::IN_ARCHIVE}, {rsrc_vendor_dir, BundleLocation::IN_RESOURCES} }; + for (auto dir : dir_list) { + if (!fs::exists(dir.first)) + continue; + for (const auto& dir_entry : boost::filesystem::directory_iterator(dir.first)) { + if (Slic3r::is_ini_file(dir_entry)) { + std::string id = dir_entry.path().stem().string(); // stem() = filename() without the trailing ".ini" part + + // Don't load this bundle if we've already loaded it. + if (res.find(id) != res.end()) { continue; } + + // Fresh index should be in archive_dir, otherwise look for it in cache + // Then if not in archive or cache - it could be 3rd party profile that user just copied to vendor folder (both ini and cache) + + fs::path idx_path(archive_dir / (id + ".idx")); + if (!boost::filesystem::exists(idx_path)) { + BOOST_LOG_TRIVIAL(error) << format("Missing index %1% when loading bundle %2%. Going to search for it in cache folder.", idx_path.string(), id); + idx_path = fs::path(cache_dir / (id + ".idx")); + } + if (!boost::filesystem::exists(idx_path)) { + BOOST_LOG_TRIVIAL(error) << format("Missing index %1% when loading bundle %2%. Going to search for it in vendor folder. Is it a 3rd party profile?", idx_path.string(), id); + idx_path = fs::path(vendor_dir / (id + ".idx")); + } + if (!boost::filesystem::exists(idx_path)) { + BOOST_LOG_TRIVIAL(error) << format("Could not load bundle %1% due to missing index %2%.", id, idx_path.string()); + continue; + } + Slic3r::GUI::Config::Index index; try { index.load(idx_path); @@ -215,8 +306,32 @@ BundleMap BundleMap::load() } } - return res; + // Delete no longer existing entries and not used repos + const PresetArchiveDatabase* pad = wxGetApp().plater()->get_preset_archive_database(); + std::vector to_erease; + for (const auto& entry : res) { + fs::path ini_path; + switch (entry.second.location) { + case IN_VENDOR: ini_path = vendor_dir / (entry.first + ".ini"); break; + case IN_ARCHIVE: ini_path = archive_dir / (entry.first + ".ini"); break; + case IN_RESOURCES: ini_path = rsrc_vendor_dir / (entry.first + ".ini"); break; + default: assert(true); + } + if (!fs::exists(ini_path)) { + to_erease.emplace_back(entry.first); + continue; + } + if (entry.second.vendor_profile->repo_id.empty() || !pad->is_selected_repository_by_id(entry.second.vendor_profile->repo_id)) + { + to_erease.emplace_back(entry.first); + } + } + for (const std::string& id : to_erease) + { + res.erase(id); + } } +#endif // 0 Bundle& BundleMap::prusa_bundle() { @@ -3451,6 +3566,25 @@ bool ConfigWizard::priv::check_sla_selected() void ConfigWizard::priv::set_config_updated_from_archive(bool is_updated) { + // is updated is false if this is first call since ConfigWizard::run and RunReason is not RR_USER + if (is_updated) + { + // THIS IS NOT A MAIN THREAD! + + // This set with preset_updater used to be done in GUI_App::run_wizard before ConfigWizard::run() + GUI_App& app = wxGetApp(); + // Do blocking sync on every change of archive repos, so user is always offered recent profiles. + app.preset_updater->sync_blocking(app.preset_bundle, &app, app.plater()->get_preset_archive_database()->get_archive_repositories(), app.plater()->get_preset_archive_database()->get_selected_repositories_uuid()); + // Offer update installation. It used to be offered only when wizard run reason was RR_USER. + app.preset_updater->update_index_db(); + app.preset_updater->config_update(app.app_config->orig_version(), PresetUpdater::UpdateParams::SHOW_TEXT_BOX); + + // We have now probably changed data. We need to rebuild or database from which wizards constructs. + // DK: Im not sure if we should do full load_vendors. or only load BundleMap::load(). + // also see BundleMap::reload(). + load_vendors(); + } + is_config_from_archive = is_updated; load_pages_from_archive(); } @@ -3484,7 +3618,7 @@ static void unselect(PagePrinters* page) for (const auto& archive : archs) { if (page->get_vendor_repo_id() == archive->get_manifest().id) { - if (pad->is_selected_archive(archive->get_uuid())) + if (pad->is_selected_repository_by_uuid(archive->get_uuid())) unselect_all = false; //break; ! don't break here, because there can be several archives with same repo_id } @@ -3543,7 +3677,7 @@ void ConfigWizard::priv::load_pages_from_archive() for (const auto& archive : archs) { const auto& data = archive->get_manifest(); - const bool is_selected_arch = pad->is_selected_archive(archive->get_uuid()); + const bool is_selected_arch = pad->is_selected_repository_by_uuid(archive->get_uuid()); std::vector vendors; const bool any_installed_vendor = any_installed_vendor_for_repo(data.id, vendors); diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp index 62dcae729a..8f61b51999 100644 --- a/src/slic3r/GUI/GUI_App.cpp +++ b/src/slic3r/GUI/GUI_App.cpp @@ -834,10 +834,11 @@ void GUI_App::post_init() return; #endif CallAfter([this] { + // preset_updater->sync downloads profile updates and than via event checks updates and incompatible presets. We need to run it on startup. + // start before cw so it is canceled by cw if needed? + this->preset_updater->sync(preset_bundle, this, plater()->get_preset_archive_database()->get_archive_repositories(), plater()->get_preset_archive_database()->get_selected_repositories_uuid()); bool cw_showed = this->config_wizard_startup(); if (! cw_showed) { - // preset_updater->sync downloads profile updates on background so it must begin after config wizard finished. - this->preset_updater->sync(preset_bundle, this, plater()->get_preset_archive_database()->get_archive_repositories(), plater()->get_preset_archive_database()->get_selected_repositories_uuid()); // The CallAfter is needed as well, without it, GL extensions did not show. // Also, we only want to show this when the wizard does not, so the new user // sees something else than "we want something" on the first start. @@ -949,6 +950,71 @@ void GUI_App::init_app_config() } } +void GUI_App::legacy_app_config_vendor_check() +{ + // Expected state: + // User runs 2.8.0+ for the first time. They have Prusa SLA printers installed. + // Prusa SLA printers moved from PrusaResearch.ini to PrusaResearchSLA.ini + // We expect this is detected and fixed on the first run, when PrusaResearchSLA is not installed yet. + // Steps: + // Move the printers in appconfig to PrusaResearchSLA + // Moving the printers is not enough. The new ini PrusaResearchSLA needs to be installed. + // But we cannot install bundles without preset updater. + // So we just move it to the vendor folder. Since all profiles are named the same, it should not be a problem. + // Preset updater should be doing blocking update over PrusaResearch.ini. Then all should be ok. + + const std::vector prusaslicer_moved_to_sla = { "SL1", "SL1S" }; + const std::map>>& vendor_map = app_config->vendors(); + bool found_legacy_printers = false; + if (const auto& vendor_it = vendor_map.find("PrusaResearch"); vendor_it != vendor_map.end()) { + for (const std::string& model : prusaslicer_moved_to_sla) { + if (const auto& it = vendor_it->second.find(model); it != vendor_it->second.end()) { + BOOST_LOG_TRIVIAL(error) << "found " << model; + found_legacy_printers = true; + break; + } + } + } + if (!found_legacy_printers) { + return; + } + bool found_prusa_sla_vendor = vendor_map.find("PrusaResearchSLA") != vendor_map.end(); + // make a deep copy of vendor map with moved printers + std::map>> new_vendor_map; + for (const auto& vendor : vendor_map) { + for (const auto& model : vendor.second) { + if (vendor.first == "PrusaResearch" && std::find(prusaslicer_moved_to_sla.begin(), prusaslicer_moved_to_sla.end(), model.first) != prusaslicer_moved_to_sla.end()) { + for (const std::string& variant : model.second) { + new_vendor_map["PrusaResearchSLA"][model.first].emplace(variant); + } + } else { + for (const std::string& variant : model.second) { + new_vendor_map[vendor.first][model.first].emplace(variant); + } + } + } + } + app_config->set_vendors(new_vendor_map); + + if (found_prusa_sla_vendor) { + // The vendor was present in appconfig, we do nothing with its ini file. + return; + } + + // copy PrusaResearchSLA ini file to vendors + const boost::filesystem::path prusa_sla_in_resources = boost::filesystem::path(Slic3r::resources_dir()) / "profiles" / "PrusaResearchSLA.ini"; + assert(boost::filesystem::exists(prusa_sla_in_resources)); + const boost::filesystem::path prusa_sla_in_vendors = boost::filesystem::path(Slic3r::data_dir()) / "vendor" / "PrusaResearchSLA.ini"; + if (boost::filesystem::exists(prusa_sla_in_vendors)) { + return; + } + std::string message; + CopyFileResult cfr = copy_file(prusa_sla_in_resources.string(), prusa_sla_in_vendors.string(), message, false); + if (cfr != SUCCESS) { + BOOST_LOG_TRIVIAL(error) << "Failed to copy file " << prusa_sla_in_resources << " to " << prusa_sla_in_vendors << ": " << message; + } +} + // returns old config path to copy from if such exists, // returns an empty string if such config path does not exists or if it cannot be loaded. std::string GUI_App::check_older_app_config(Semver current_version, bool backup) @@ -1384,6 +1450,9 @@ bool GUI_App::on_init_inner() if (is_editor()) mainframe->select_tab(size_t(0)); + // Call this check only after appconfig was loaded to mainframe, otherwise there will be duplicity error. + legacy_app_config_vendor_check(); + sidebar().obj_list()->init_objects(); // propagate model objects to object list update_mode(); // mode sizer doesn't exist anymore, so we came update mode here, before load_current_presets SetTopWindow(mainframe); @@ -3156,10 +3225,6 @@ bool GUI_App::run_wizard(ConfigWizard::RunReason reason, ConfigWizard::StartPage // Destructor does not call Destroy. m_login_dialog.reset(); } - // Update archive db if login status changed, otherwise we expect to have archive db on date. - if (user_was_logged != plater()->get_user_account()->is_logged()) { - plater()->get_preset_archive_database()->sync_blocking(); - } #endif // 0 plater()->get_preset_archive_database()->set_wizard_lock(true); plater()->get_preset_archive_database()->sync_blocking(); @@ -3394,6 +3459,19 @@ void GUI_App::manage_updates() bool GUI_App::check_updates(const bool verbose) { + // verbose means - not run after startup, but by user + if (verbose) { + // do preset_updater sync so if user runs slicer for a long time, check for updates actually delivers updates. + // for preset_updater sync we need to sync archive database first + plater()->get_preset_archive_database()->sync_blocking(); + // and we can have user to select the repos they want (thats additional dialog) + manage_updates(); + // then its time for preset_updater sync + // BE CAREFUL! sync and sync_blocking sends event that calls check_updates(false) + preset_updater->sync_blocking(preset_bundle, this, plater()->get_preset_archive_database()->get_archive_repositories(), plater()->get_preset_archive_database()->get_selected_repositories_uuid()); + // and then we check updates + } + PresetUpdater::UpdateResult updater_result; try { preset_updater->update_index_db(); diff --git a/src/slic3r/GUI/GUI_App.hpp b/src/slic3r/GUI/GUI_App.hpp index 5a15bffe9b..fb47a1208c 100644 --- a/src/slic3r/GUI/GUI_App.hpp +++ b/src/slic3r/GUI/GUI_App.hpp @@ -434,6 +434,7 @@ private: // returns old config path to copy from if such exists, // returns an empty string if such config path does not exists or if it cannot be loaded. std::string check_older_app_config(Semver current_version, bool backup); + void legacy_app_config_vendor_check(); void window_pos_save(wxTopLevelWindow* window, const std::string &name); void window_pos_restore(wxTopLevelWindow* window, const std::string &name, bool default_maximized = false); void window_pos_sanitize(wxTopLevelWindow* window); diff --git a/src/slic3r/GUI/PresetArchiveDatabase.cpp b/src/slic3r/GUI/PresetArchiveDatabase.cpp index 4c47d0a816..e3cc7a1690 100644 --- a/src/slic3r/GUI/PresetArchiveDatabase.cpp +++ b/src/slic3r/GUI/PresetArchiveDatabase.cpp @@ -616,13 +616,22 @@ void PresetArchiveDatabase::read_server_manifest(const std::string& json_body) save_app_manifest_json(); } -bool PresetArchiveDatabase::is_selected_archive(const std::string& uuid) const +bool PresetArchiveDatabase::is_selected_repository_by_uuid(const std::string& uuid) const { auto selected_it = m_selected_repositories_uuid.find(uuid); assert(selected_it != m_selected_repositories_uuid.end()); return selected_it->second; } - +bool PresetArchiveDatabase::is_selected_repository_by_id(const std::string& repo_id) const +{ + assert(!repo_id.empty()); + for (const auto& repo_ptr : m_archive_repositories) { + if (repo_ptr->get_manifest().id == repo_id) { + return true; + } + } + return false; +} void PresetArchiveDatabase::consolidate_selected_uuids_map() { //std::vector> m_archive_repositories; @@ -681,6 +690,7 @@ void PresetArchiveDatabase::sync_blocking() { if (m_wizard_lock) { m_staged_sync = true; + return; } std::string manifest; if (!sync_inner(m_token, manifest)) @@ -690,7 +700,7 @@ void PresetArchiveDatabase::sync_blocking() void PresetArchiveDatabase::set_wizard_lock(bool lock) { - m_wizard_lock = lock; + m_wizard_lock = lock; if (m_staged_sync) { sync_blocking(); } diff --git a/src/slic3r/GUI/PresetArchiveDatabase.hpp b/src/slic3r/GUI/PresetArchiveDatabase.hpp index b72837ea9c..3464cdef5e 100644 --- a/src/slic3r/GUI/PresetArchiveDatabase.hpp +++ b/src/slic3r/GUI/PresetArchiveDatabase.hpp @@ -106,7 +106,8 @@ public: void sync_blocking(); //void set_local_archives(AppConfig* app_config); void read_server_manifest(const std::string& json_body); - bool is_selected_archive(const std::string& uuid) const; + bool is_selected_repository_by_uuid(const std::string& uuid) const; + bool is_selected_repository_by_id(const std::string& repo_id) const; const std::map& get_selected_repositories_uuid() const { assert(m_selected_repositories_uuid.size() == m_archive_repositories.size()); return m_selected_repositories_uuid; } bool set_selected_repositories(const std::vector& used_uuids, std::string& msg); std::string add_local_archive(const boost::filesystem::path path, std::string& msg); diff --git a/src/slic3r/GUI/UpdatesUIManager.cpp b/src/slic3r/GUI/UpdatesUIManager.cpp index 13a5dcb5b5..b5a8cfdd84 100644 --- a/src/slic3r/GUI/UpdatesUIManager.cpp +++ b/src/slic3r/GUI/UpdatesUIManager.cpp @@ -64,7 +64,7 @@ void UIManager::fill_entries(bool init_selection/* = false*/) const ArchiveRepositoryVector& archs = m_pad->get_archive_repositories(); for (const auto& archive : archs) { const std::string& uuid = archive->get_uuid(); - if (init_selection && m_pad->is_selected_archive(uuid)) + if (init_selection && m_pad->is_selected_repository_by_uuid(uuid)) m_selected_uuids.emplace(uuid); const bool is_selected = m_selected_uuids.find(uuid) != m_selected_uuids.end(); diff --git a/src/slic3r/Utils/PresetUpdater.cpp b/src/slic3r/Utils/PresetUpdater.cpp index a6d803b04b..a486b5c970 100644 --- a/src/slic3r/Utils/PresetUpdater.cpp +++ b/src/slic3r/Utils/PresetUpdater.cpp @@ -186,6 +186,7 @@ struct PresetUpdater::priv void set_download_prefs(const AppConfig *app_config); //bool get_file(const std::string &url, const fs::path &target_path) const; void prune_tmps() const; + void clear_cache_vendor() const; void sync_config(const VendorMap& vendors, const GUI::ArchiveRepository& archive); void check_install_indices() const; @@ -272,6 +273,18 @@ void PresetUpdater::priv::prune_tmps() const fs::remove(dir_entry.path()); } } +// Remove all files in cache/vendor +void PresetUpdater::priv::clear_cache_vendor() const +{ + boost::system::error_code ec; + for (auto& dir_entry : boost::filesystem::directory_iterator(cache_vendor_path)) { + fs::remove(dir_entry.path(), ec); + if (ec) { + BOOST_LOG_TRIVIAL(error) << "Failed to remove " << dir_entry << " during cache cleanup. Reason: " << ec.what(); + ec.clear(); + } + } +} // gets resource to cache// void PresetUpdater::priv::get_missing_resource(const GUI::ArchiveRepository& archive, const std::string& vendor, const std::string& filename, const std::string& repository_id_from_ini) const @@ -1148,6 +1161,7 @@ void PresetUpdater::sync(const PresetBundle *preset_bundle, wxEvtHandler* evt_ha if (!p->enabled_config_update) { return; } p->thread = std::thread([this, &vendors = preset_bundle->vendors, &repositories, &selected_repo_uuids, evt_handler]() { + this->p->clear_cache_vendor(); this->p->prune_tmps(); for(const auto& archive : repositories) { auto it = selected_repo_uuids.find(archive->get_uuid()); @@ -1177,6 +1191,7 @@ void PresetUpdater::sync_blocking(const PresetBundle* preset_bundle, wxEvtHandle p->set_download_prefs(GUI::wxGetApp().app_config); if (!p->enabled_config_update) { return; } + this->p->clear_cache_vendor(); this->p->prune_tmps(); for (const auto& archive : repositories) { auto it = selected_repo_uuids.find(archive->get_uuid());