我的图片框中有不同的线条(黄色和蓝色),例如用以下方式绘制:
imout.Draw(new LineSegment2DF(new PointF(lastEndX, lastEndY),
new PointF(lastEndX + avgX, lastEndY + avgY)),
new Bgr(Color.Yellow), 2);
imout 变量已在前面的代码中的某处定义,例如:
imout = new Image<Bgr, byte>(new Size(maxX + 90, maxY + 90));
pictureBox2.Image = imout.Bitmap;
现在,当用户从 listBox3 中选择一个点时,将在这些线上绘制一个圆圈以向用户显示他指向的位置,如以下代码所示:
private void listBox3_SelectedIndexChanged(object sender, EventArgs e)
{
var selection = listBox3.SelectedItem;
PointF selcF = (PointF)selection;
PointF RR = optFlowPonitsRawcoords.Find(p => p == selcF);
RR.Y = imout.Height - RR.Y;
imout.Draw(new CircleF(RR, 5), new Bgr(Color.Pink), 1);
pictureBox2.Image = imout.Bitmap;
}
但是当用户从 listBox 中选择另一个点时,我希望在它们被清除之前绘制上一个点,并且只在图像上显示新的选定点。
这怎么可能?