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

This commit is contained in:
Jack Ha 2016-09-26 16:06:47 +02:00
commit 962381be59
5 changed files with 28 additions and 10 deletions

View File

@ -505,10 +505,14 @@ class BuildVolume(SceneNode):
skirt_size = self._getSettingProperty("raft_margin", "value") skirt_size = self._getSettingProperty("raft_margin", "value")
if container_stack.getProperty("draft_shield_enabled", "value"): if container_stack.getProperty("draft_shield_enabled", "value"):
skirt_size += container_stack.getProperty("draft_shield_dist", "value") draft_shield_dist = container_stack.getProperty("draft_shield_dist", "value")
if skirt_size < draft_shield_dist:
skirt_size = draft_shield_dist
if container_stack.getProperty("ooze_shield_enabled", "value"): if container_stack.getProperty("ooze_shield_enabled", "value"):
skirt_size += container_stack.getProperty("ooze_shield_dist", "value") ooze_shield_dist = container_stack.getProperty("ooze_shield_dist", "value")
if skirt_size < ooze_shield_dist:
skirt_size = ooze_shield_dist
if container_stack.getProperty("xy_offset", "value"): if container_stack.getProperty("xy_offset", "value"):
skirt_size += container_stack.getProperty("xy_offset", "value") skirt_size += container_stack.getProperty("xy_offset", "value")

View File

@ -47,6 +47,7 @@ class ThreeMFReader(MeshReader):
mesh_builder = MeshBuilder() mesh_builder = MeshBuilder()
node = SceneNode() node = SceneNode()
vertex_list = [] vertex_list = []
# for vertex in entry.mesh.vertices.vertex: # for vertex in entry.mesh.vertices.vertex:
for vertex in entry.findall(".//3mf:vertex", self._namespaces): for vertex in entry.findall(".//3mf:vertex", self._namespaces):
vertex_list.append([vertex.get("x"), vertex.get("y"), vertex.get("z")]) vertex_list.append([vertex.get("x"), vertex.get("y"), vertex.get("z")])
@ -73,7 +74,12 @@ class ThreeMFReader(MeshReader):
# TODO: We currently do not check for normals and simply recalculate them. # TODO: We currently do not check for normals and simply recalculate them.
mesh_builder.calculateNormals() mesh_builder.calculateNormals()
mesh_builder.setFileName(file_name) mesh_builder.setFileName(file_name)
node.setMeshData(mesh_builder.build().getTransformed(rotation)) mesh_data = mesh_builder.build().getTransformed(rotation)
if not len(mesh_data.getVertices()):
continue # This object doesn't have data, so skip it.
node.setMeshData(mesh_data)
node.setSelectable(True) node.setSelectable(True)
transformations = root.findall("./3mf:build/3mf:item[@objectid='{0}']".format(entry.get("id")), self._namespaces) transformations = root.findall("./3mf:build/3mf:item[@objectid='{0}']".format(entry.get("id")), self._namespaces)
@ -105,6 +111,11 @@ class ThreeMFReader(MeshReader):
node.setTransformation(temp_mat) node.setTransformation(temp_mat)
try:
node.getBoundingBox() # Selftest - There might be more functions that should fail
except:
continue
result.addChild(node) result.addChild(node)
Job.yieldThread() Job.yieldThread()
@ -117,10 +128,9 @@ class ThreeMFReader(MeshReader):
result = result.getChildren()[0] # Only one object found, return that. result = result.getChildren()[0] # Only one object found, return that.
except Exception as e: except Exception as e:
Logger.log("e", "exception occured in 3mf reader: %s", e) Logger.log("e", "exception occured in 3mf reader: %s", e)
try: # Selftest - There might be more functions that should fail try: # Selftest - There might be more functions that should fail
boundingBox = result.getBoundingBox() bounding_box = result.getBoundingBox()
boundingBox.isValid() bounding_box.isValid()
except: except:
return None return None

View File

@ -81,7 +81,11 @@ UM.ManagementPage
text: catalog.i18nc("@action:button", "Activate"); text: catalog.i18nc("@action:button", "Activate");
iconName: "list-activate"; iconName: "list-activate";
enabled: base.currentItem != null ? base.currentItem.id != Cura.MachineManager.activeQualityId : false; enabled: base.currentItem != null ? base.currentItem.id != Cura.MachineManager.activeQualityId : false;
onClicked: Cura.MachineManager.setActiveQuality(base.currentItem.id) onClicked:
{
Cura.MachineManager.setActiveQuality(base.currentItem.id)
currentItem = base.model.getItem(base.objectList.currentIndex) // Refresh the current item.
}
}, },
// Create button // Create button