优化日志显示
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
"""Local Dimming 测试逻辑(应用层)。
|
||||
"""Local Dimming 测试逻辑(应用层)。
|
||||
|
||||
整合自原 drivers/local_dimming_test.py:窗口图片生成与测试主循环
|
||||
直接落在本模块,UCD 通用操作下沉到 drivers.ucd_helpers。
|
||||
@@ -107,51 +107,51 @@ def start_local_dimming_test(self):
|
||||
|
||||
def worker():
|
||||
log = self.log_gui.log
|
||||
log("=" * 60)
|
||||
log("开始 Local Dimming 测试")
|
||||
log("=" * 60)
|
||||
log("=" * 60, level="separator")
|
||||
log("开始 Local Dimming 测试", level="info")
|
||||
log("=" * 60, level="separator")
|
||||
|
||||
width, height = get_current_resolution(self.ucd)
|
||||
total = len(DEFAULT_WINDOW_PERCENTAGES)
|
||||
log(f" 分辨率: {width}x{height}")
|
||||
log(f" 测试窗口: {DEFAULT_WINDOW_PERCENTAGES}")
|
||||
log(f" 等待时间: {wait_time} 秒")
|
||||
log(f" 分辨率: {width}x{height}", level="info")
|
||||
log(f" 测试窗口: {DEFAULT_WINDOW_PERCENTAGES}", level="info")
|
||||
log(f" 等待时间: {wait_time} 秒", level="info")
|
||||
|
||||
results = []
|
||||
for i, percentage in enumerate(DEFAULT_WINDOW_PERCENTAGES, 1):
|
||||
if stop_event.is_set():
|
||||
log("⚠️ 测试已停止")
|
||||
log("测试已停止", level="error")
|
||||
break
|
||||
|
||||
log(f"[{i}/{total}] 测试 {percentage}% 窗口...")
|
||||
log(f"[{i}/{total}] 测试 {percentage}% 窗口...", level="info")
|
||||
try:
|
||||
image_path = _ensure_window_image(width, height, percentage)
|
||||
except Exception as e:
|
||||
log(f" ❌ 图像生成失败: {e}")
|
||||
log(f" [Error] 图像生成失败: {e}", level="error")
|
||||
continue
|
||||
|
||||
if not send_image_pattern(self.ucd, image_path):
|
||||
log(f" ❌ {percentage}% 窗口发送失败,跳过")
|
||||
log(f" [Error] {percentage}% 窗口发送失败,跳过", level="error")
|
||||
continue
|
||||
|
||||
log(f" ⏳ 等待 {wait_time} 秒...")
|
||||
log(f"等待 {wait_time} 秒...", level="info")
|
||||
time.sleep(wait_time)
|
||||
|
||||
try:
|
||||
x, y, lv, _X, _Y, _Z = self.ca.readAllDisplay()
|
||||
except Exception as e:
|
||||
log(f" ❌ 采集亮度异常: {e}")
|
||||
log(f" [Error] 采集亮度异常: {e}", level="error")
|
||||
continue
|
||||
if lv is None:
|
||||
log(f" ❌ {percentage}% 窗口采集失败")
|
||||
log(f" [Error] {percentage}% 窗口采集失败", level="error")
|
||||
continue
|
||||
|
||||
log(f" ✓ 采集亮度: {lv:.2f} cd/m²")
|
||||
log(f"采集亮度: {lv:.2f} cd/m²", level="info")
|
||||
results.append((percentage, x, y, lv, _X, _Y, _Z))
|
||||
|
||||
log("=" * 60)
|
||||
log(f"✅ Local Dimming 测试完成 ({len(results)}/{total})")
|
||||
log("=" * 60)
|
||||
log("=" * 60, level="separator")
|
||||
log(f"Local Dimming 测试完成 ({len(results)}/{total})", level="success")
|
||||
log("=" * 60, level="separator")
|
||||
|
||||
self.ld_test_results = results
|
||||
self._dispatch_ui(self.update_ld_results, results)
|
||||
@@ -184,7 +184,7 @@ def send_ld_window(self, percentage):
|
||||
messagebox.showwarning("警告", "请先连接 UCD323 设备")
|
||||
return
|
||||
|
||||
self.log_gui.log(f"🔆 发送 {percentage}% 窗口...")
|
||||
self.log_gui.log(f"🔆 发送 {percentage}% 窗口...", level="info")
|
||||
self.current_ld_percentage = percentage
|
||||
|
||||
def send():
|
||||
@@ -192,12 +192,12 @@ def send_ld_window(self, percentage):
|
||||
try:
|
||||
image_path = _ensure_window_image(width, height, percentage)
|
||||
except Exception as e:
|
||||
self._dispatch_ui(self.log_gui.log, f"❌ 图像生成失败: {e}")
|
||||
self._dispatch_ui(self.log_gui.log, f"[Error] 图像生成失败: {e}")
|
||||
return
|
||||
ok = send_image_pattern(self.ucd, image_path)
|
||||
msg = (
|
||||
f"✅ {percentage}% 窗口已发送" if ok
|
||||
else f"❌ {percentage}% 窗口发送失败"
|
||||
f"{percentage}% 窗口已发送" if ok
|
||||
else f"[Error] {percentage}% 窗口发送失败"
|
||||
)
|
||||
self._dispatch_ui(self.log_gui.log, msg)
|
||||
|
||||
@@ -213,16 +213,16 @@ def measure_ld_luminance(self):
|
||||
messagebox.showinfo("提示", "请先发送一个窗口图案")
|
||||
return
|
||||
|
||||
self.log_gui.log("📏 正在采集亮度...")
|
||||
self.log_gui.log("📏 正在采集亮度...", level="info")
|
||||
|
||||
def measure():
|
||||
try:
|
||||
x, y, lv, _X, _Y, _Z = self.ca.readAllDisplay()
|
||||
except Exception as e:
|
||||
self._dispatch_ui(self.log_gui.log, f"❌ 采集异常: {str(e)}")
|
||||
self._dispatch_ui(self.log_gui.log, f"[Error] 采集异常: {str(e)}")
|
||||
return
|
||||
if lv is None:
|
||||
self._dispatch_ui(self.log_gui.log, "❌ 采集失败")
|
||||
self._dispatch_ui(self.log_gui.log, "[Error] 采集失败")
|
||||
return
|
||||
timestamp = datetime.datetime.now().strftime("%H:%M:%S")
|
||||
self._dispatch_ui(
|
||||
@@ -236,7 +236,7 @@ def measure_ld_luminance(self):
|
||||
f"{lv:.2f}", f"{x:.4f}", f"{y:.4f}", timestamp,
|
||||
),
|
||||
)
|
||||
self._dispatch_ui(self.log_gui.log, f"✅ 采集完成: {lv:.2f} cd/m²")
|
||||
self._dispatch_ui(self.log_gui.log, f"采集完成: {lv:.2f} cd/m²")
|
||||
|
||||
threading.Thread(target=measure, daemon=True).start()
|
||||
|
||||
@@ -247,7 +247,7 @@ def clear_ld_records(self):
|
||||
self.ld_tree.delete(item)
|
||||
self.ld_result_label.config(text="亮度: -- cd/m² | x: -- | y: --")
|
||||
self.current_ld_percentage = None
|
||||
self.log_gui.log("🗑️ 测试记录已清空")
|
||||
self.log_gui.log("测试记录已清空", level="info")
|
||||
|
||||
|
||||
def save_local_dimming_results(self):
|
||||
@@ -274,8 +274,8 @@ def save_local_dimming_results(self):
|
||||
writer.writerow(["窗口百分比", "亮度 (cd/m²)", "x", "y", "时间"])
|
||||
for item in self.ld_tree.get_children():
|
||||
writer.writerow(self.ld_tree.item(item, "values"))
|
||||
self.log_gui.log(f"✓ 测试结果已保存: {save_path}")
|
||||
self.log_gui.log(f"测试结果已保存: {save_path}", level="success")
|
||||
messagebox.showinfo("成功", f"测试结果已保存到:\n{save_path}")
|
||||
except Exception as e:
|
||||
self.log_gui.log(f"❌ 保存失败: {str(e)}")
|
||||
self.log_gui.log(f"[Error] 保存失败: {str(e)}", level="error")
|
||||
messagebox.showerror("错误", f"保存失败: {str(e)}")
|
||||
|
||||
Reference in New Issue
Block a user