|
@@ -159,7 +159,7 @@ class Canvas(QtWidgets.QWidget):
|
|
if len(self.shapesBackups) > self.num_backups:
|
|
if len(self.shapesBackups) > self.num_backups:
|
|
self.shapesBackups = self.shapesBackups[-self.num_backups - 1 :]
|
|
self.shapesBackups = self.shapesBackups[-self.num_backups - 1 :]
|
|
self.shapesBackups.append(shapesBackup)
|
|
self.shapesBackups.append(shapesBackup)
|
|
-
|
|
|
|
|
|
+
|
|
@property
|
|
@property
|
|
def isShapeRestorable(self):
|
|
def isShapeRestorable(self):
|
|
# We save the state AFTER each edit (not before) so for an
|
|
# We save the state AFTER each edit (not before) so for an
|
|
@@ -175,7 +175,6 @@ class Canvas(QtWidgets.QWidget):
|
|
# and app.py::loadShapes and our own Canvas::loadShapes function.
|
|
# and app.py::loadShapes and our own Canvas::loadShapes function.
|
|
if not self.isShapeRestorable:
|
|
if not self.isShapeRestorable:
|
|
return
|
|
return
|
|
- print(f"shape is restorable")
|
|
|
|
self.shapesBackups.pop() # latest
|
|
self.shapesBackups.pop() # latest
|
|
|
|
|
|
# The application will eventually call Canvas.loadShapes which will
|
|
# The application will eventually call Canvas.loadShapes which will
|
|
@@ -364,7 +363,7 @@ class Canvas(QtWidgets.QWidget):
|
|
self.setStatusTip(self.toolTip())
|
|
self.setStatusTip(self.toolTip())
|
|
self.update()
|
|
self.update()
|
|
break
|
|
break
|
|
- elif len(shape.points)!=0 and shape.containsPoint(pos) :
|
|
|
|
|
|
+ elif shape.containsPoint(pos):
|
|
if self.selectedVertex():
|
|
if self.selectedVertex():
|
|
self.hShape.highlightClear()
|
|
self.hShape.highlightClear()
|
|
self.prevhVertex = self.hVertex
|
|
self.prevhVertex = self.hVertex
|
|
@@ -851,9 +850,8 @@ class Canvas(QtWidgets.QWidget):
|
|
)
|
|
)
|
|
elif self.pred_bbox_points is not None and self.draw_pred:
|
|
elif self.pred_bbox_points is not None and self.draw_pred:
|
|
print("pred mode on")
|
|
print("pred mode on")
|
|
- current_copy=self.current.copy()
|
|
|
|
for bbox_point in self.pred_bbox_points:
|
|
for bbox_point in self.pred_bbox_points:
|
|
- drawing_shape=current_copy.copy()
|
|
|
|
|
|
+ drawing_shape=self.current.copy()
|
|
drawing_shape.setShapeRefined(
|
|
drawing_shape.setShapeRefined(
|
|
shape_type="polygon",
|
|
shape_type="polygon",
|
|
points=[QtCore.QPointF(point[0], point[1]) for point in bbox_point],
|
|
points=[QtCore.QPointF(point[0], point[1]) for point in bbox_point],
|
|
@@ -864,11 +862,8 @@ class Canvas(QtWidgets.QWidget):
|
|
self.storeShapes()
|
|
self.storeShapes()
|
|
self.update()
|
|
self.update()
|
|
self.newShape.emit()
|
|
self.newShape.emit()
|
|
- current_copy.close()
|
|
|
|
- current_copy=None
|
|
|
|
- if(self.current):
|
|
|
|
- self.current.close()
|
|
|
|
- self.current = None
|
|
|
|
|
|
+ self.current.close()
|
|
|
|
+ self.current = None
|
|
self.setHiding(False)
|
|
self.setHiding(False)
|
|
self.draw_pred=False
|
|
self.draw_pred=False
|
|
return
|
|
return
|
|
@@ -1041,8 +1036,6 @@ class Canvas(QtWidgets.QWidget):
|
|
|
|
|
|
def setLastLabel(self, text, flags):
|
|
def setLastLabel(self, text, flags):
|
|
assert text
|
|
assert text
|
|
- if(self.shapes is None or len(self.shapes)==0):
|
|
|
|
- return
|
|
|
|
self.shapes[-1].label = text
|
|
self.shapes[-1].label = text
|
|
self.shapes[-1].flags = flags
|
|
self.shapes[-1].flags = flags
|
|
self.shapesBackups.pop()
|
|
self.shapesBackups.pop()
|
|
@@ -1050,8 +1043,7 @@ class Canvas(QtWidgets.QWidget):
|
|
return self.shapes[-1]
|
|
return self.shapes[-1]
|
|
|
|
|
|
def undoLastLine(self):
|
|
def undoLastLine(self):
|
|
- if(self.shapes is None or len(self.shapes)==0):
|
|
|
|
- return
|
|
|
|
|
|
+ assert self.shapes
|
|
self.current = self.shapes.pop()
|
|
self.current = self.shapes.pop()
|
|
self.current.setOpen()
|
|
self.current.setOpen()
|
|
self.current.restoreShapeRaw()
|
|
self.current.restoreShapeRaw()
|