using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Drawing2D; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace OTSIncAReportGraph { #region 基类,抽像类 /// /// 绘制的基本类,下面的画布,多边形,线都要从这里派生 /// public abstract class BaseObject : ICloneable { //自动生成的ID public abstract Guid guid { get; set; } //画布的坐标 public abstract RectangleF Rect { get; set; } //OTS的坐标 public abstract PointF OTSPointF { get; set; } //画布是否被选择 public abstract bool IsSelect { get; set; } //画布是否被拖动 public abstract bool IsDragging { get; set; } //画布被拖动到的位置 public abstract PointF DraggingPoint { get; set; } //线的颜色 public abstract Color Color { get; set; } //画布的背景色 public abstract Color BackColor { get; set; } //绘制函数 public abstract void OnPaint(PaintEventArgs e); //多边形路径 public abstract GraphicsPath GPath { get; set; } //克隆 public virtual object Clone() { return null; } } #endregion }