diff --git a/src/tools/qgepmaptooladdfeature.py b/src/tools/qgepmaptooladdfeature.py index 9fa2d7b4..2ca5604b 100644 --- a/src/tools/qgepmaptooladdfeature.py +++ b/src/tools/qgepmaptooladdfeature.py @@ -334,9 +334,12 @@ def right_clicked(self, _): # assign level if the match is a node or if we have 3D from snapping if match.layer() == self.node_layer: level = network_element['bottom_level'] + level = level if not math.isnan(level) else NULL f.setAttribute(level_field_index, level) elif self.rubberband.points[pt_idx].z() != 0: - f.setAttribute(level_field_index, self.rubberband.points[pt_idx].z()) + level = self.rubberband.points[pt_idx].z() + level = level if not math.isnan(level) else NULL + f.setAttribute(level_field_index, level) dlg = self.iface.getFeatureForm(self.layer, f) dlg.setMode(QgsAttributeEditorContext.AddFeatureMode)