Merge branch 'master' of github.com:Ultimaker/Cura

This commit is contained in:
Jaime van Kessel 2020-03-05 16:06:56 +01:00
commit 74f9125b27
No known key found for this signature in database
GPG key ID: 3710727397403C91
32 changed files with 400 additions and 68 deletions

View file

@ -1,12 +1,20 @@
#!/usr/bin/env python3
# Copyright (c) 2019 Ultimaker B.V.
# Copyright (c) 2020 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
# Remove the working directory from sys.path.
# This fixes a security issue where Cura could import Python packages from the
# current working directory, and therefore be made to execute locally installed
# code (e.g. in the user's home directory where AppImages by default run from).
# See issue CURA-7081.
import sys
if "" in sys.path:
sys.path.remove("")
import argparse
import faulthandler
import os
import sys
# Workaround for a race condition on certain systems where there
# is a race condition between Arcus and PyQt. Importing Arcus

View file

@ -118,7 +118,7 @@ class AMFReader(MeshReader):
mesh.merge_vertices()
mesh.remove_unreferenced_vertices()
mesh.fix_normals()
mesh_data = self._toMeshData(mesh)
mesh_data = self._toMeshData(mesh, file_name)
new_node = CuraSceneNode()
new_node.setSelectable(True)
@ -147,7 +147,13 @@ class AMFReader(MeshReader):
return group_node
def _toMeshData(self, tri_node: trimesh.base.Trimesh) -> MeshData:
## Converts a Trimesh to Uranium's MeshData.
# \param tri_node A Trimesh containing the contents of a file that was
# just read.
# \param file_name The full original filename used to watch for changes
# \return Mesh data from the Trimesh in a way that Uranium can understand
# it.
def _toMeshData(self, tri_node: trimesh.base.Trimesh, file_name: str = "") -> MeshData:
tri_faces = tri_node.faces
tri_vertices = tri_node.vertices
@ -169,5 +175,5 @@ class AMFReader(MeshReader):
indices = numpy.asarray(indices, dtype = numpy.int32)
normals = calculateNormalsFromIndexedVertices(vertices, indices, face_count)
mesh_data = MeshData(vertices = vertices, indices = indices, normals = normals)
mesh_data = MeshData(vertices = vertices, indices = indices, normals = normals,file_name = file_name)
return mesh_data

View file

@ -108,7 +108,7 @@ class TrimeshReader(MeshReader):
mesh.merge_vertices()
mesh.remove_unreferenced_vertices()
mesh.fix_normals()
mesh_data = self._toMeshData(mesh)
mesh_data = self._toMeshData(mesh, file_name)
file_base_name = os.path.basename(file_name)
new_node = CuraSceneNode()
@ -133,9 +133,10 @@ class TrimeshReader(MeshReader):
## Converts a Trimesh to Uranium's MeshData.
# \param tri_node A Trimesh containing the contents of a file that was
# just read.
# \param file_name The full original filename used to watch for changes
# \return Mesh data from the Trimesh in a way that Uranium can understand
# it.
def _toMeshData(self, tri_node: trimesh.base.Trimesh) -> MeshData:
def _toMeshData(self, tri_node: trimesh.base.Trimesh, file_name: str = "") -> MeshData:
tri_faces = tri_node.faces
tri_vertices = tri_node.vertices
@ -157,5 +158,5 @@ class TrimeshReader(MeshReader):
indices = numpy.asarray(indices, dtype = numpy.int32)
normals = calculateNormalsFromIndexedVertices(vertices, indices, face_count)
mesh_data = MeshData(vertices = vertices, indices = indices, normals = normals)
mesh_data = MeshData(vertices = vertices, indices = indices, normals = normals, file_name = file_name)
return mesh_data

View file

@ -7,24 +7,32 @@
"author": "Dagoma",
"manufacturer": "Dagoma",
"file_formats": "text/x-gcode",
"platform": "discoeasy200.stl",
"platform_offset": [ 105, -59, 280],
"platform": "dagoma_discoeasy200.stl",
"platform_offset": [0, -57.3, -11],
"has_machine_quality": true,
"has_materials": true,
"preferred_material": "chromatik_pla",
"machine_extruder_trains":
{
"0": "dagoma_discoeasy200_extruder_0"
"0": "dagoma_discoeasy200_extruder_0",
"1": "dagoma_discoeasy200_extruder_1"
}
},
"overrides": {
"machine_extruder_count": {
"default_value": 2
},
"machine_extruders_share_heater": {
"default_value": true
},
"machine_width": {
"default_value": 211
"default_value": 205
},
"machine_height": {
"default_value": 205
},
"machine_depth": {
"default_value": 211
"default_value": 205
},
"machine_center_is_zero": {
"default_value": false
@ -66,6 +74,9 @@
},
"layer_height_0": {
"default_value": 0.26
},
"top_bottom_thickness": {
"default_value": 1
}
}
}

View file

@ -0,0 +1,82 @@
{
"name": "Dagoma DiscoUltimate",
"version": 2,
"inherits": "fdmprinter",
"metadata": {
"visible": true,
"author": "Dagoma",
"manufacturer": "Dagoma",
"file_formats": "text/x-gcode",
"platform": "dagoma_discoultimate.stl",
"platform_offset": [0, -58.5, -11],
"has_machine_quality": true,
"has_materials": true,
"preferred_material": "chromatik_pla",
"machine_extruder_trains":
{
"0": "dagoma_discoultimate_extruder_0",
"1": "dagoma_discoultimate_extruder_1"
}
},
"overrides": {
"machine_extruder_count": {
"default_value": 2
},
"machine_extruders_share_heater": {
"default_value": true
},
"machine_width": {
"default_value": 205
},
"machine_height": {
"default_value": 205
},
"machine_depth": {
"default_value": 205
},
"machine_center_is_zero": {
"default_value": false
},
"machine_head_with_fans_polygon": {
"default_value": [
[-17, -70],
[-17, 40],
[17, 40],
[17, -70]
]
},
"gantry_height": {
"value": "10"
},
"machine_start_gcode": {
"default_value": ";Gcode by Cura\nG90\nM106 S255\nG28 X Y\nG1 X50\nM109 R90\nG28\nM104 S{material_print_temperature_layer_0}\nG29\nM107\nG1 X100 Y20 F3000\nG1 Z0.5\nM109 S{material_print_temperature_layer_0}\nM82\nG92 E0\nG1 F200 E10\nG92 E0\nG1 Z3\nG1 F6000\n"
},
"machine_end_gcode": {
"default_value": "\nM104 S0\nM106 S255\nM140 S0\nG91\nG1 E-1 F300\nG1 Z+3 F3000\nG90\nG28 X Y\nM107\nM84\n"
},
"default_material_print_temperature": {
"default_value": 205
},
"speed_print": {
"default_value": 60
},
"retraction_amount": {
"default_value": 3.5
},
"retraction_speed": {
"default_value": 50
},
"adhesion_type": {
"default_value": "skirt"
},
"skirt_line_count": {
"default_value": 2
},
"layer_height_0": {
"default_value": 0.26
},
"top_bottom_thickness": {
"default_value": 1
}
}
}

View file

@ -7,10 +7,11 @@
"author": "Dagoma",
"manufacturer": "Dagoma",
"file_formats": "text/x-gcode",
"platform": "neva.stl",
"platform_offset": [ 0, 0, 0],
"platform": "dagoma_magis.stl",
"platform_offset": [0, -28, -35],
"has_machine_quality": true,
"has_materials": true,
"preferred_material": "chromatik_pla",
"machine_extruder_trains":
{
"0": "dagoma_magis_extruder_0"
@ -69,6 +70,9 @@
},
"layer_height_0": {
"default_value": 0.26
},
"top_bottom_thickness": {
"default_value": 1
}
}
}

View file

@ -7,10 +7,11 @@
"author": "Dagoma",
"manufacturer": "Dagoma",
"file_formats": "text/x-gcode",
"platform": "neva.stl",
"platform_offset": [ 0, 0, 0],
"platform": "dagoma_neva.stl",
"platform_offset": [0, -28, -35],
"has_machine_quality": true,
"has_materials": true,
"preferred_material": "chromatik_pla",
"machine_extruder_trains":
{
"0": "dagoma_neva_extruder_0"
@ -69,6 +70,9 @@
},
"layer_height_0": {
"default_value": 0.26
},
"top_bottom_thickness": {
"default_value": 1
}
}
}

View file

@ -16,6 +16,12 @@
},
"material_diameter": {
"default_value": 1.75
},
"machine_extruder_start_code": {
"default_value": "\n;Start T0\nG92 E0\nG1 E-{retraction_amount} F10000\nG92 E0G1 E1.5 F3000\nG1 E-60 F10000\nG92 E0\n"
},
"machine_extruder_end_code": {
"default_value": "\nG92 E0\nG1 E{retraction_amount} F3000\nG92 E0\nG1 E60 F3000\nG92 E0\nG1 E-{retraction_amount} F5000\n;End T0\n\n"
}
}
}

View file

@ -0,0 +1,27 @@
{
"version": 2,
"name": "Extruder 2",
"inherits": "fdmextruder",
"metadata": {
"machine": "dagoma_discoeasy200",
"position": "1"
},
"overrides": {
"extruder_nr": {
"default_value": 1
},
"machine_nozzle_size": {
"default_value": 0.4
},
"material_diameter": {
"default_value": 1.75
},
"machine_extruder_start_code": {
"default_value": "\n;Start T1\nG92 E0\nG1 E-{retraction_amount} F10000\nG92 E0G1 E1.5 F3000\nG1 E-60 F10000\nG92 E0\n"
},
"machine_extruder_end_code": {
"default_value": "\nG92 E0\nG1 E{retraction_amount} F3000\nG92 E0\nG1 E60 F3000\nG92 E0\nG1 E-{retraction_amount} F5000\n;End T1\n\n"
}
}
}

View file

@ -0,0 +1,27 @@
{
"version": 2,
"name": "Extruder 1",
"inherits": "fdmextruder",
"metadata": {
"machine": "dagoma_discoultimate",
"position": "0"
},
"overrides": {
"extruder_nr": {
"default_value": 0
},
"machine_nozzle_size": {
"default_value": 0.4
},
"material_diameter": {
"default_value": 1.75
},
"machine_extruder_start_code": {
"default_value": "\n;Start T0\nG92 E0\nG1 E-{retraction_amount} F10000\nG92 E0G1 E1.5 F3000\nG1 E-60 F10000\nG92 E0\n"
},
"machine_extruder_end_code": {
"default_value": "\nG92 E0\nG1 E{retraction_amount} F3000\nG92 E0\nG1 E60 F3000\nG92 E0\nG1 E-{retraction_amount} F5000\n;End T0\n\n"
}
}
}

View file

@ -0,0 +1,27 @@
{
"version": 2,
"name": "Extruder 2",
"inherits": "fdmextruder",
"metadata": {
"machine": "dagoma_discoultimate",
"position": "1"
},
"overrides": {
"extruder_nr": {
"default_value": 1
},
"machine_nozzle_size": {
"default_value": 0.4
},
"material_diameter": {
"default_value": 1.75
},
"machine_extruder_start_code": {
"default_value": "\n;Start T1\nG92 E0\nG1 E-{retraction_amount} F10000\nG92 E0G1 E1.5 F3000\nG1 E-60 F10000\nG92 E0\n"
},
"machine_extruder_end_code": {
"default_value": "\nG92 E0\nG1 E{retraction_amount} F3000\nG92 E0\nG1 E60 F3000\nG92 E0\nG1 E-{retraction_amount} F5000\n;End T1\n\n"
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -8,8 +8,19 @@ setting_version = 11
type = quality
quality_type = draft
weight = -2
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.2
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 10
material_bed_temperature_layer_0 = =default_material_bed_temperature + 10
speed_print = 60
speed_travel = 75
speed_layer_0 = 17
speed_infill = 60
speed_wall_0 = 50
speed_wall_x = 60
speed_topbottom = 60

View file

@ -8,6 +8,16 @@ setting_version = 11
type = quality
quality_type = normal
weight = 0
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.1
line_width = =machine_nozzle_size * 0.875
speed_print = 35
speed_travel = 50
speed_layer_0 = 15
speed_infill = 40
speed_wall_0 = 25
speed_wall_x = 35
speed_topbottom = 35

View file

@ -8,8 +8,19 @@ setting_version = 11
type = quality
quality_type = fast
weight = -1
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.15
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 5
material_bed_temperature_layer_0 = =default_material_bed_temperature + 5
speed_print = 50
speed_travel = 60
speed_layer_0 = 17
speed_infill = 50
speed_wall_0 = 40
speed_wall_x = 45
speed_topbottom = 50

View file

@ -0,0 +1,26 @@
[general]
version = 4
name = Fast
definition = dagoma_discoultimate
[metadata]
setting_version = 11
type = quality
quality_type = draft
weight = -2
material = chromatik_pla
[values]
layer_height = 0.2
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 10
material_bed_temperature_layer_0 = =default_material_bed_temperature + 10
speed_print = 60
speed_travel = 75
speed_layer_0 = 17
speed_infill = 60
speed_wall_0 = 50
speed_wall_x = 60
speed_topbottom = 60

View file

@ -0,0 +1,23 @@
[general]
version = 4
name = Fine
definition = dagoma_discoultimate
[metadata]
setting_version = 11
type = quality
quality_type = normal
weight = 0
material = chromatik_pla
[values]
layer_height = 0.1
line_width = =machine_nozzle_size * 0.875
speed_print = 35
speed_travel = 50
speed_layer_0 = 15
speed_infill = 40
speed_wall_0 = 25
speed_wall_x = 35
speed_topbottom = 35

View file

@ -0,0 +1,26 @@
[general]
version = 4
name = Standard
definition = dagoma_discoultimate
[metadata]
setting_version = 11
type = quality
quality_type = fast
weight = -1
material = chromatik_pla
[values]
layer_height = 0.15
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 5
material_bed_temperature_layer_0 = =default_material_bed_temperature + 5
speed_print = 50
speed_travel = 60
speed_layer_0 = 17
speed_infill = 50
speed_wall_0 = 40
speed_wall_x = 45
speed_topbottom = 50

View file

@ -1,14 +0,0 @@
[general]
version = 4
name = Fast
definition = dagoma_discoeasy200
[metadata]
setting_version = 11
type = quality
quality_type = draft
weight = -2
global_quality = True
[values]
layer_height = 0.2

View file

@ -1,14 +0,0 @@
[general]
version = 4
name = Fine
definition = dagoma_discoeasy200
[metadata]
setting_version = 11
type = quality
quality_type = normal
weight = 0
global_quality = True
[values]
layer_height = 0.1

View file

@ -1,14 +0,0 @@
[general]
version = 4
name = Standard
definition = dagoma_discoeasy200
[metadata]
setting_version = 11
type = quality
quality_type = fast
weight = -1
global_quality = True
[values]
layer_height = 0.15

View file

@ -8,8 +8,19 @@ setting_version = 11
type = quality
quality_type = draft
weight = -2
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.2
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 10
material_bed_temperature_layer_0 = =default_material_bed_temperature + 10
speed_print = 40
speed_travel = 80
speed_layer_0 = 17
speed_infill = 40
speed_wall_0 = 30
speed_wall_x = 40
speed_topbottom = 40

View file

@ -8,6 +8,16 @@ setting_version = 11
type = quality
quality_type = normal
weight = 0
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.1
line_width = =machine_nozzle_size * 0.875
speed_print = 30
speed_travel = 80
speed_layer_0 = 17
speed_infill = 30
speed_wall_0 = 20
speed_wall_x = 30
speed_topbottom = 30

View file

@ -8,8 +8,19 @@ setting_version = 11
type = quality
quality_type = fast
weight = -1
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.15
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 5
material_bed_temperature_layer_0 = =default_material_bed_temperature + 5
speed_print = 35
speed_travel = 80
speed_layer_0 = 17
speed_infill = 35
speed_wall_0 = 25
speed_wall_x = 35
speed_topbottom = 35

View file

@ -8,8 +8,19 @@ setting_version = 11
type = quality
quality_type = draft
weight = -2
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.2
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 10
material_bed_temperature_layer_0 = =default_material_bed_temperature + 10
speed_print = 40
speed_travel = 80
speed_layer_0 = 17
speed_infill = 40
speed_wall_0 = 30
speed_wall_x = 40
speed_topbottom = 40

View file

@ -8,6 +8,16 @@ setting_version = 11
type = quality
quality_type = normal
weight = 0
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.1
line_width = =machine_nozzle_size * 0.875
speed_print = 30
speed_travel = 80
speed_layer_0 = 17
speed_infill = 30
speed_wall_0 = 20
speed_wall_x = 30
speed_topbottom = 30

View file

@ -8,8 +8,19 @@ setting_version = 11
type = quality
quality_type = fast
weight = -1
material = generic_pla
material = chromatik_pla
[values]
layer_height = 0.15
line_width = =machine_nozzle_size * 0.875
material_print_temperature = =default_material_print_temperature + 5
material_bed_temperature_layer_0 = =default_material_bed_temperature + 5
speed_print = 35
speed_travel = 80
speed_layer_0 = 17
speed_infill = 35
speed_wall_0 = 25
speed_wall_x = 35
speed_topbottom = 35