From a2fa6da6f78f35e10406c7ca0af8518ba3b8c2c2 Mon Sep 17 00:00:00 2001 From: ZMY051025 <2725944509@qq.com> Date: Thu, 16 Oct 2025 22:38:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=BAscene.py=E6=B7=BB=E5=8A=A0=E4=B8=AD?= =?UTF-8?q?=E6=96=87=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- beeref/scene.py | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/beeref/scene.py b/beeref/scene.py index 798d20d..229549b 100644 --- a/beeref/scene.py +++ b/beeref/scene.py @@ -29,31 +29,31 @@ from beeref.items import item_registry, BeeErrorItem, sort_by_filename # 导入 from beeref.selection import MultiSelectItem, RubberbandItem # 导入选择相关类:多选项和橡皮筋选择框 -logger = logging.getLogger(__name__) +logger = logging.getLogger(__name__) # 创建当前模块的日志记录器 -class BeeGraphicsScene(QtWidgets.QGraphicsScene): - cursor_changed = QtCore.pyqtSignal(QtGui.QCursor) - cursor_cleared = QtCore.pyqtSignal() +class BeeGraphicsScene(QtWidgets.QGraphicsScene): # 定义场景类,继承自QGraphicsScene + cursor_changed = QtCore.pyqtSignal(QtGui.QCursor) # 定义光标变化信号 + cursor_cleared = QtCore.pyqtSignal() # 定义光标清除信号 - MOVE_MODE = 1 - RUBBERBAND_MODE = 2 + MOVE_MODE = 1 # 定义移动模式常量 + RUBBERBAND_MODE = 2 # 定义橡皮筋选择模式常量 - def __init__(self, undo_stack): - super().__init__() - self.active_mode = None - self.undo_stack = undo_stack - self.max_z = 0 - self.min_z = 0 - self.Z_STEP = 0.001 - self.selectionChanged.connect(self.on_selection_change) - self.changed.connect(self.on_change) - self.items_to_add = Queue() - self.edit_item = None - self.crop_item = None - self.settings = BeeSettings() - self.clear() - self._clear_ongoing = False + def __init__(self, undo_stack): # 初始化方法,接收撤销栈参数 + super().__init__() # 调用父类的初始化方法 + self.active_mode = None # 初始化当前活动模式为None + self.undo_stack = undo_stack # 保存撤销栈引用 + self.max_z = 0 # 初始化最大Z轴值 + self.min_z = 0 # 初始化最小Z轴值 + self.Z_STEP = 0.001 # 设置Z轴步长 + self.selectionChanged.connect(self.on_selection_change) # 连接选择变化信号到处理函数 + self.changed.connect(self.on_change) # 连接场景变化信号到处理函数 + self.items_to_add = Queue() # 初始化待添加项目队列 + self.edit_item = None # 初始化当前编辑项目为None + self.crop_item = None # 初始化裁剪项目为None + self.settings = BeeSettings() # 初始化设置对象 + self.clear() # 清除场景内容 + self._clear_ongoing = False # 初始化清除操作标志为False def clear(self): self._clear_ongoing = True