BitWaferMap 1.0.6.7

FastWaferPanel 使用说明

FastWaferPanel 是一个高性能的 WPF 自定义控件,用于显示和交互式操作 Wafer / Die Map
适用于大规模 Die 数据的可视化场景,支持流畅的缩放、平移、选择和颜色管理。


功能特性

  • 高性能绘制(DrawingVisual)
  • 支持十万级以上 Die 显示
  • 鼠标缩放 / 平移
  • 单选 / 多选 / 框选
  • 右键上下文菜单
  • 选中 Die 颜色修改
  • Hover 提示
  • MVVM 友好(支持绑定)

一、核心概念

1. Die 数据接口(IDieInfo)

所有 Die 数据必须实现 IDieInfo 接口:

public interface IDieInfo
{
    int X { get; set; }
    int Y { get; set; }
    object? Tag { get; set; }
    Brush Brush { get; set; }
}
X / Y:Die 的逻辑坐标

Tag:附加信息(如 Bin、测试结果等)

Brush:Die 显示颜色

2. 默认实现(DieInfo)
csharp
复制代码
public class DieInfo : IDieInfo
{
    public int X { get; set; }
    public int Y { get; set; }
    public object? Tag { get; set; }
    public Brush Brush { get; set; } = DefaultBrush;

    public const double DefaultDieSize = 12;
    public static readonly Brush DefaultBrush = Brushes.LightGray;
}
二、基本使用
1. XAML 中使用
xml
复制代码
<local:FastWaferPanel
    x:Name="WaferPanel"
    Dies="{Binding Dies}"
    DieWidth="12"
    DieHeight="12" />
推荐 将 Dies 绑定到:

csharp
复制代码
ObservableCollection<IDieInfo>
2. ViewModel 示例
csharp
复制代码
public class MainViewModel
{
    public ObservableCollection<IDieInfo> Dies { get; }
        = new ObservableCollection<IDieInfo>();

    public MainViewModel()
    {
        for (int x = 0; x < 100; x++)
        {
            for (int y = 0; y < 100; y++)
            {
                Dies.Add(new DieInfo
                {
                    X = x,
                    Y = y,
                    Tag = $"({x},{y})"
                });
            }
        }
    }
}
三、鼠标交互
操作	功能
鼠标滚轮	缩放
鼠标中键拖动	平移
左键单击	选择单个 Die
Ctrl + 左键	多选
左键拖拽	框选
右键	上下文菜单

四、事件说明
1. SelectionChanged
csharp
复制代码
WaferPanel.SelectionChanged += (s, e) =>
{
    var selected = e.SelectedDies;
};
2. DieClicked
csharp
复制代码
WaferPanel.DieClicked += (s, die) =>
{
    Console.WriteLine($"{die.X}, {die.Y}");
};
3. RequestColorForSelected
csharp
复制代码
WaferPanel.RequestColorForSelected += (s, e) =>
{
    WaferPanel.ApplyColorToSelected(Brushes.Red);
};
4. HoverChanged
csharp
复制代码
WaferPanel.HoverChanged += (s, die) =>
{
    if (die != null)
    {
        // hover die
    }
};
五、常用 API
csharp
复制代码
WaferPanel.AddDie(die);
WaferPanel.AddDies(dies);

WaferPanel.ApplyColorToSelected(Brushes.Green);
WaferPanel.ResetSelectedToDefault();

WaferPanel.FitToWindow(Dies);
WaferPanel.CenterViewOnDies(Dies);
六、可绑定属性
属性	说明
Dies	Die 数据源
SelectedDies	当前选中 Die 集合
SelectedDie	当前选中 Die
DieWidth	Die 宽度
DieHeight	Die 高度
Mode	面板模式

七、适用场景
Wafer Map / Bin Map

芯片测试结果可视化

大规模二维网格展示

半导体 / 工业 WPF 应用

八、注意事项
推荐使用 ObservableCollection<IDieInfo>

Die 使用逻辑坐标 (X, Y)

颜色修改后需刷新渲染

支持大数据量高性能显示

No packages depend on BitWaferMap.

用于显示和操作晶圆图(Wafer Map)

.NET Framework 4.8

  • No dependencies.

Version Downloads Last updated
2.3.0.29 3 09/19/2026
2.3.0.28 8 09/01/2026
2.3.0.27 9 08/26/2026
2.3.0.26 10 08/21/2026
2.3.0.25 8 08/21/2026
2.3.0.24 14 08/04/2026
2.3.0.23 17 07/18/2026
2.3.0.22 18 06/30/2026
2.3.0.21 22 06/26/2026
2.3.0.20 22 06/26/2026
2.3.0.19 22 06/24/2026
2.3.0.18 17 06/24/2026
2.3.0.17 16 06/24/2026
2.3.0.16 21 06/24/2026
2.3.0.15 18 06/24/2026
2.3.0.14 20 06/16/2026
2.3.0.13 29 06/04/2026
2.3.0.12 20 06/04/2026
2.3.0.11 23 06/04/2026
2.3.0.10 20 06/04/2026
2.3.0.9 20 06/04/2026
2.3.0.8 20 06/03/2026
2.3.0.7 20 06/03/2026
2.3.0.6 21 05/28/2026
2.3.0.5 20 05/28/2026
2.3.0.4 22 05/28/2026
2.3.0.3 19 05/28/2026
2.3.0.2 23 05/27/2026
2.3.0.1 24 05/13/2026
2.3.0 21 05/13/2026
2.2.0 20 05/06/2026
2.1.2.9 19 04/28/2026
2.1.2.8 19 04/28/2026
2.1.2.7 19 04/27/2026
2.1.2.6 18 04/27/2026
2.1.2.5 19 04/27/2026
2.1.2.4 19 04/27/2026
2.1.2.1 19 04/26/2026
2.1.2 21 04/25/2026
2.1.1 23 04/17/2026
2.1.0.9 18 04/14/2026
2.1.0.8 16 04/14/2026
2.1.0.7 20 04/14/2026
2.1.0.6 20 04/09/2026
2.1.0.5 21 04/08/2026
2.1.0.4 22 04/08/2026
2.1.0.3 20 04/08/2026
2.1.0.2 21 04/08/2026
2.1.0.1 18 04/08/2026
2.1.0 24 04/01/2026
2.0.0.8 22 03/27/2026
2.0.0.7 25 03/17/2026
2.0.0.6 26 03/11/2026
2.0.0.5 24 03/11/2026
2.0.0.4 28 03/11/2026
2.0.0.3 23 03/11/2026
2.0.0.2 29 03/02/2026
2.0.0.1 26 03/02/2026
2.0.0 33 02/18/2026
1.0.7.4 31 02/02/2026
1.0.7.3 32 01/06/2026
1.0.7.1 30 12/31/2025
1.0.7 30 12/31/2025
1.0.6.13 17 07/03/2026
1.0.6.12 17 07/03/2026
1.0.6.11 18 06/15/2026
1.0.6.10 22 05/19/2026
1.0.6.9 21 05/18/2026
1.0.6.8 20 05/18/2026
1.0.6.7 46 12/22/2025
1.0.6.4 37 12/22/2025
1.0.6.3 39 12/18/2025
1.0.6.2 32 12/18/2025
1.0.6.1 31 12/18/2025
1.0.6 31 12/18/2025
1.0.5 32 12/18/2025