From 9f91ea8e5672d6f1bce7e2068fcf31afdcea0436 Mon Sep 17 00:00:00 2001 From: Jeffreytsai1004 Date: Mon, 10 Feb 2025 04:08:00 +0800 Subject: [PATCH] Update --- README.md | 14 ++++----- scripts/ui/behaviour.py | 68 ++++++++++++++++++++++++----------------- 2 files changed, 47 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 7ce3976..82ecc45 100644 --- a/README.md +++ b/README.md @@ -323,7 +323,7 @@ Reference\UI\17_Definitions.jpg - 搜索过滤 - BlendShape列表 -- 恢复表情按钮;- 混合筛选按钮 +- 恢复表情按钮(icons\restore.png);- 混合筛选按钮(icons\blendRaw.png) - 全部按钮,2按钮,3按钮,4按钮,5按钮,6按钮 - 范围控制(0.010),滑块,勾选框(未勾选), 文字"全部" - 范围+按钮,范围-按钮 @@ -332,18 +332,18 @@ Reference\UI\17_Definitions.jpg - 关联BlendShape列表 - 范围控制(0.000),滑块,勾选框(未勾选), 文字"全部" -- 翻转目标 - 镜像目标 - 查找翻转目标 -- 添加混合目标 - 删除混合目标 - 批量混合目标 -- 重建混合目标 - 重建所有混合目标 +- 翻转目标(icons\flip.png) - 镜像目标(icons\mirror.png) - 查找翻转目标(icons\mirrorR.png) +- 添加混合目标(:locator.png) - 删除混合目标(icons\delete.png) - 批量混合目标(icons\batch.png) +- 重建混合目标(:locator.png) - 重建所有混合目标(icons\rebuildAll.png) - 范围控制(0.010),滑块,勾选框(未勾选), 文字"全部" - 范围+按钮,范围-按钮 -####### 功能按钮 +####### 功能按钮(在行为视图的底部) - 第一行 :PSD - BSE - KEY - MIR - ARK - CTR - 第二行 :范围控制(0.000),滑块,"+"按钮, 勾选框(未勾选), 文字"全部" -- 第三行 按钮:还原默认表情;查找选择表情;写入当前表情 -- 第四行 按钮:控制面板查找;选择关联关节;写入镜像表情 +- 第三行 按钮:还原默认表情(icons\rest.png);查找选择表情(icons\expressions_current.png);写入当前表情(icons\expression.png) +- 第四行 按钮:控制面板查找(icons\controller.png);选择关联关节(icons\kinjoint.png);写入镜像表情(icons\ctrl_hide.png) ###### 4. 定义视图 (Definition) diff --git a/scripts/ui/behaviour.py b/scripts/ui/behaviour.py index a2a789d..6bb8a9e 100644 --- a/scripts/ui/behaviour.py +++ b/scripts/ui/behaviour.py @@ -242,28 +242,24 @@ class BehaviourTab(QtWidgets.QWidget): # === 底部功能区域 === self.bottom_widget = QtWidgets.QWidget() self.bottom_layout = QtWidgets.QVBoxLayout(self.bottom_widget) - self.bottom_layout.setContentsMargins(4, 0, 4, 0) - self.bottom_layout.setSpacing(0) + self.bottom_layout.setContentsMargins(4, 6, 4, 6) + self.bottom_layout.setSpacing(4) # 设置底部功能区的固定高度 - self.bottom_widget.setFixedHeight(88) + self.bottom_widget.setFixedHeight(140) # 继续增加高度 - # 先创建所有控件 - # 创建SpinBox + # 先创建第二行需要的控件 self.bottom_spin = QtWidgets.QDoubleSpinBox() self.bottom_spin.setValue(0.000) self.bottom_spin.setDecimals(3) self.bottom_spin.setFixedWidth(60) - self.bottom_spin.setFixedHeight(20) + self.bottom_spin.setFixedHeight(24) - # 创建Slider self.bottom_slider = QtWidgets.QSlider(QtCore.Qt.Horizontal) self.bottom_slider.setRange(0, 100) self.bottom_slider.setValue(0) self.bottom_slider.setFixedHeight(16) - - # 设置滑块样式 - slider_style = """ + self.bottom_slider.setStyleSheet(""" QSlider::groove:horizontal { height: 3px; margin: 0px; @@ -273,31 +269,38 @@ class BehaviourTab(QtWidgets.QWidget): height: 8px; margin: -3px 0; } - """ - self.bottom_slider.setStyleSheet(slider_style) + """) - # 然后创建功能按钮区域 + # 然后创建四行的容器 for i in range(1, 5): widget_name = f'func_widget{i}' layout_name = f'func_layout{i}' widget = QtWidgets.QWidget() - widget.setFixedHeight(22) + widget.setFixedHeight(28) # 继续增加每行高度 layout = QtWidgets.QHBoxLayout(widget) layout.setContentsMargins(0, 0, 0, 0) - layout.setSpacing(2) + layout.setSpacing(4) setattr(self, widget_name, widget) setattr(self, layout_name, layout) - # 调整所有按钮的高度 + # 调整按钮高度 for btn in self.findChildren(QtWidgets.QPushButton): - btn.setFixedHeight(20) + btn.setFixedHeight(24) # 增加按钮高度 # 功能按钮 - 第一行 - for text in ["PSD", "BSE", "KEY", "MIR", "ARK", "CTR"]: + for text, icon in [ + ("PSD", ":positionConstraint.png"), + ("BSE", ":blendShape.png"), + ("KEY", ":key.png"), + ("MIR", ":mirrorCurve.png"), + ("ARK", ":arcLengthDimension.png"), + ("CTR", ":control.png") + ]: btn = QtWidgets.QPushButton(text) + btn.setIcon(QtGui.QIcon(icon)) btn.setFixedWidth(40) self.func_layout1.addWidget(btn) self.func_layout1.addStretch() @@ -315,22 +318,31 @@ class BehaviourTab(QtWidgets.QWidget): self.func_layout2.addWidget(bottom_check) self.func_layout2.addWidget(bottom_label) - # 功能按钮 - 第三行和第四行使用更紧凑的布局 + # 功能按钮 - 第三行 self.restore_default_btn = QtWidgets.QPushButton("还原默认表情") + self.restore_default_btn.setIcon(QtGui.QIcon(":reset.png")) + self.func_layout3.addWidget(self.restore_default_btn) + self.find_select_btn = QtWidgets.QPushButton("查找选择表情") + self.find_select_btn.setIcon(QtGui.QIcon(":find.png")) + self.func_layout3.addWidget(self.find_select_btn) + self.write_current_btn = QtWidgets.QPushButton("写入当前表情") + self.write_current_btn.setIcon(QtGui.QIcon(":save.png")) + self.func_layout3.addWidget(self.write_current_btn) - for btn in [self.restore_default_btn, self.find_select_btn, self.write_current_btn]: - btn.setFixedHeight(24) - self.func_layout3.addWidget(btn) - + # 功能按钮 - 第四行 self.find_panel_btn = QtWidgets.QPushButton("控制面板查找") - self.select_joint_btn = QtWidgets.QPushButton("选择关联关节") - self.write_mirror_btn = QtWidgets.QPushButton("写入镜像表情") + self.find_panel_btn.setIcon(QtGui.QIcon(":menuIconWindow.png")) + self.func_layout4.addWidget(self.find_panel_btn) - for btn in [self.find_panel_btn, self.select_joint_btn, self.write_mirror_btn]: - btn.setFixedHeight(24) - self.func_layout4.addWidget(btn) + self.select_joint_btn = QtWidgets.QPushButton("选择关联关节") + self.select_joint_btn.setIcon(QtGui.QIcon(":kinJoint.png")) + self.func_layout4.addWidget(self.select_joint_btn) + + self.write_mirror_btn = QtWidgets.QPushButton("写入镜像表情") + self.write_mirror_btn.setIcon(QtGui.QIcon(":mirrorSkinWeight.png")) + self.func_layout4.addWidget(self.write_mirror_btn) # 添加到底部布局 self.bottom_layout.addWidget(self.func_widget1)