/// <summary> /// 对当前图形进行镜像处理 /// </summary> /// <param name="mirrorLine"></param> internal override void Mirror(Geometry2D target, Line2D mirrorLine) { if (target is PolygonGeometry) { PolygonGeometry polyline = (target as PolygonGeometry); this.pPoints = new List <Vector2D>(); polyline.pPoints.ForEach(x => { pPoints.Add(TransformUtil.Mirror(x, mirrorLine)); }); } }
/// <summary> /// 当前线的拷贝 /// </summary> /// <param name="v"></param> public override Geometry2D Copy(bool isclone) { List <Vector2D> vts = new List <Vector2D>(); this.pPoints.ForEach(x => { vts.Add(Vector2D.Create(x.X, x.Y)); }); PolygonGeometry polygonGeometry = new PolygonGeometry(vts); if (isclone) { } else { polygonGeometry.Element = this.Element; } polygonGeometry.PenColor = this.PenColor; return(polygonGeometry); }