110,533
社区成员
发帖
与我相关
我的任务
分享
public class Line
{
public Point stratPoint;
pulibc Point endPoint;
public void Draw(Graphics g)
{
g.Drawline(startPoint,endPoint);
}
public Boolean IsSelected(PintF currentMousePoint)
{
//判断当前鼠标的点,是否在startPoint和endPoint之间,以判断它是否选中了
}
pulbic Boolean Select(Graphics g)
{
g.DrawRectange();//画个小矩形,以表示当前线被选中了
g.DrawLine();
g.DrawRectangle() //画个小矩形,以表示当前线被选中了
}
}
public class MyForm : Form
{
public List<Line> drawedLines;
public void OnMouseMoving(e)
{
foreach(Line line drawedLines)
{
//判断哪条线被选中了
//再重新画线,长度不变
}
}
}
class Line
{
public PointF BeginPoint { get; set; }
public PointF EndPoint { get; set; }
public void Draw(Graphics g)
{
//g.DrawLine.....
}
public bool Contains(PointF mousePt)
{
//计算点和直线的距离,判断直线是否被选中
return true;
}
}