chiark / gitweb /
Set the default minimal layer time to 5 seconds. Properly scale collada files.
authordaid303 <daid303@gmail.com>
Mon, 3 Dec 2012 14:29:12 +0000 (15:29 +0100)
committerdaid303 <daid303@gmail.com>
Mon, 3 Dec 2012 14:29:12 +0000 (15:29 +0100)
Cura/cura_sf/fabmetheus_utilities/fabmetheus_tools/interpret_plugins/dae.py
Cura/gui/mainWindow.py
Cura/util/dae.py
Cura/util/profile.py

index c51e026e11c9a300b68ae3d89279178428b30766..c4a44ab8c016b71d2f80088f1e68fcbb09f8432c 100644 (file)
@@ -27,6 +27,8 @@ class daeModel(triangle_mesh.TriangleMesh):
                self._idMap = {}
                self._geometryList = []
                r.ParseFile(open(filename, "r"))
+
+               self._scale = float(self._base['collada'][0]['asset'][0]['unit'][0]['_meter']) * 1000
                
                for instance_visual_scene in self._base['collada'][0]['scene'][0]['instance_visual_scene']:
                        for node in self._idMap[instance_visual_scene['_url']]['node']:
@@ -81,9 +83,9 @@ class daeModel(triangle_mesh.TriangleMesh):
 
                                                startIndex = len(self.vertexes)
                                                for idx in xrange(0, len(positionList)/3):
-                                                       x = positionList[idx*3]
-                                                       y = positionList[idx*3+1]
-                                                       z = positionList[idx*3+2]
+                                                       x = positionList[idx*3] * self._scale
+                                                       y = positionList[idx*3+1] * self._scale
+                                                       z = positionList[idx*3+2] * self._scale
                                                        if matrix != None:
                                                                self.vertexes.append(Vector3(x * matrix[0] + y * matrix[1] + z * matrix[2] + matrix[3], x * matrix[4] + y * matrix[5] + z * matrix[6] + matrix[7], x * matrix[8] + y * matrix[9] + z * matrix[10] + matrix[11]))
                                                        else:
index bd08dc983a0a2f3d5c4dddb8e2e53c08fd6f5ebe..98a57c5d77c81dd00f4e96256a3fee99a3a3bcdb 100644 (file)
@@ -150,12 +150,6 @@ class mainWindow(configBase.configWindowBase):
                c = configBase.SettingRow(left, "Fill Density (%)", 'fill_density', '20', 'This controls how densily filled the insides of your print will be. For a solid part use 100%, for an empty part use 0%. A value around 20% is usually enough')
                validators.validFloat(c, 0.0, 100.0)
                
-               configBase.TitleRow(left, "Skirt")
-               c = configBase.SettingRow(left, "Line count", 'skirt_line_count', '1', 'The skirt is a line drawn around the object at the first layer. This helps to prime your extruder, and to see if the object fits on your platform.\nSetting this to 0 will disable the skirt. Multiple skirt lines can help priming your extruder better for small objects.')
-               validators.validInt(c, 0, 10)
-               c = configBase.SettingRow(left, "Start distance (mm)", 'skirt_gap', '6.0', 'The distance between the skirt and the first layer.\nThis is the minimal distance, multiple skirt lines will be put outwards from this distance.')
-               validators.validFloat(c, 0.0)
-
                configBase.TitleRow(right, "Speed && Temperature")
                c = configBase.SettingRow(right, "Print speed (mm/s)", 'print_speed', '50', 'Speed at which printing happens. A well adjusted Ultimaker can reach 150mm/s, but for good quality prints you want to print slower. Printing speed depends on a lot of factors. So you will be experimenting with optimal settings for this.')
                validators.validFloat(c, 1.0)
@@ -195,6 +189,12 @@ class mainWindow(configBase.configWindowBase):
                validators.validInt(c, 10)
                configBase.settingNotify(c, self.preview3d.updateCenterY)
 
+               configBase.TitleRow(left, "Skirt")
+               c = configBase.SettingRow(left, "Line count", 'skirt_line_count', '1', 'The skirt is a line drawn around the object at the first layer. This helps to prime your extruder, and to see if the object fits on your platform.\nSetting this to 0 will disable the skirt. Multiple skirt lines can help priming your extruder better for small objects.')
+               validators.validInt(c, 0, 10)
+               c = configBase.SettingRow(left, "Start distance (mm)", 'skirt_gap', '6.0', 'The distance between the skirt and the first layer.\nThis is the minimal distance, multiple skirt lines will be put outwards from this distance.')
+               validators.validFloat(c, 0.0)
+
                configBase.TitleRow(left, "Retraction")
                c = configBase.SettingRow(left, "Minimum travel (mm)", 'retraction_min_travel', '5.0', 'Minimum amount of travel needed for a retraction to happen at all. To make sure you do not get a lot of retractions in a small area')
                validators.validFloat(c, 0.0)
index d694b46505f506af6b925634fc5ba91fff7f2dad..deae1a8072af20c667ee4a0b571b1ff2244c2473 100644 (file)
@@ -27,6 +27,9 @@ class daeModel(mesh.mesh):
                for instance_visual_scene in self._base['collada'][0]['scene'][0]['instance_visual_scene']:
                        for node in self._idMap[instance_visual_scene['_url']]['node']:
                                self._ProcessNode2(node)
+
+               scale = float(self._base['collada'][0]['asset'][0]['unit'][0]['_meter']) * 1000
+               self.origonalVertexes *= scale
                
                self._base = None
                self._cur = None
index e48c53d0cad82acf12aae138e2d0469b2831e8d2..142df2ee89f38e1d143281ad240fad3acb47403e 100644 (file)
@@ -42,7 +42,7 @@ profileDefaultSettings = {
        'travel_speed': '150',\r
        'max_z_speed': '3.0',\r
        'bottom_layer_speed': '20',\r
-       'cool_min_layer_time': '10',\r
+       'cool_min_layer_time': '5',\r
        'fan_enabled': 'True',\r
        'fan_layer': '1',\r
        'fan_speed': '100',\r