Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNino van Hooff <ninovanhooff@gmail.com>2020-05-07 15:29:30 +0300
committerNino van Hooff <ninovanhooff@gmail.com>2020-05-07 15:29:30 +0300
commit5a3bcb6161c03260c477d9fc3eb0be8750aef0b4 (patch)
treee91c9df5df8db3af7114492ce432cb3b4d8eb476 /plugins/ImageReader
parent2ecd30d6a9846bcec111043e7778f7df0ea461d6 (diff)
Fix image reader peak height
CURA-7429
Diffstat (limited to 'plugins/ImageReader')
-rw-r--r--plugins/ImageReader/ConfigUI.qml2
-rw-r--r--plugins/ImageReader/ImageReader.py6
-rw-r--r--plugins/ImageReader/ImageReaderUI.py4
3 files changed, 8 insertions, 4 deletions
diff --git a/plugins/ImageReader/ConfigUI.qml b/plugins/ImageReader/ConfigUI.qml
index 0429fae4e1..a7dbc5f748 100644
--- a/plugins/ImageReader/ConfigUI.qml
+++ b/plugins/ImageReader/ConfigUI.qml
@@ -43,7 +43,7 @@ UM.Dialog
TextField {
id: peak_height
objectName: "Peak_Height"
- validator: RegExpValidator {regExp: /^-?\d{1,3}([\,|\.]\d*)?$/}
+ validator: RegExpValidator {regExp: /^\d{1,3}([\,|\.]\d*)?$/}
width: 180 * screenScaleFactor
onTextChanged: { manager.onPeakHeightChanged(text) }
}
diff --git a/plugins/ImageReader/ImageReader.py b/plugins/ImageReader/ImageReader.py
index 1852e7becc..1bab15e9d6 100644
--- a/plugins/ImageReader/ImageReader.py
+++ b/plugins/ImageReader/ImageReader.py
@@ -50,7 +50,7 @@ class ImageReader(MeshReader):
size = max(self._ui.getWidth(), self._ui.getDepth())
return self._generateSceneNode(file_name, size, self._ui.peak_height, self._ui.base_height, self._ui.smoothing, 512, self._ui.lighter_is_higher, self._ui.use_transparency_model, self._ui.transmittance_1mm)
- def _generateSceneNode(self, file_name, xz_size, peak_height, base_height, blur_iterations, max_size, lighter_is_higher, use_transparency_model, transmittance_1mm):
+ def _generateSceneNode(self, file_name, xz_size, height_from_base, base_height, blur_iterations, max_size, lighter_is_higher, use_transparency_model, transmittance_1mm):
scene_node = SceneNode()
mesh = MeshBuilder()
@@ -68,8 +68,10 @@ class ImageReader(MeshReader):
if img.width() < 2 or img.height() < 2:
img = img.scaled(width, height, Qt.IgnoreAspectRatio)
+ height_from_base = max(height_from_base, 0)
base_height = max(base_height, 0)
- peak_height = max(peak_height, -base_height)
+ peak_height = base_height + height_from_base
+
xz_size = max(xz_size, 1)
scale_vector = Vector(xz_size, peak_height, xz_size)
diff --git a/plugins/ImageReader/ImageReaderUI.py b/plugins/ImageReader/ImageReaderUI.py
index bae818f822..f4732c2843 100644
--- a/plugins/ImageReader/ImageReaderUI.py
+++ b/plugins/ImageReader/ImageReaderUI.py
@@ -155,8 +155,10 @@ class ImageReaderUI(QObject):
if len(value) > 0:
try:
self.peak_height = float(value.replace(",", "."))
+ if self.peak_height < 0:
+ self.peak_height = 2.5
except ValueError: # Can happen with incomplete numbers, such as "-".
- self._width = 0
+ self.peak_height = 2.5 # restore default
else:
self.peak_height = 0