我试图想出一个好的设计来在.Net中绘制实时波形。每 x 毫秒添加一个样本,当波形位于页面末尾时,它会重置到开头并开始覆盖现有波形(如 ECG 心率监视器中)。
过去我以一种非常简单的方式做到这一点:只需以固定间隔为每个样本绘制一个像素。虽然这没问题,但当我尝试添加任何类型的背景时,我很快就遇到了麻烦,例如:网格。当样本/像素与网格重叠时,在第二次通过时清除它会变得很复杂,因为您不能只用白色像素覆盖它。
也许为此使用 WPF 而不是 Winforms 会更容易,因为我可以将波形作为一个元素,并且在我移动元素时应该自动保留/重绘背景。
你会如何解决这个问题?