internal override void Mirror(Geometry2D target, Line2D mirrorLine) { if (target is OSBGeometry) { OSBGeometry osb = (target as OSBGeometry); this.PPoints = new List <Vector2D>(); osb.pPoints.ForEach(x => { this.PPoints.Add(TransformUtil.Mirror(x, mirrorLine)); }); } }
/// <summary> /// 当前线的拷贝 /// </summary> /// <param name="v"></param> public override Geometry2D Copy(bool isclone) { List <Vector2D> pps = new List <Vector2D>(); pPoints.ForEach(x => { pps.Add(Vector2D.Create(x.X, x.Y)); }); OSBGeometry osbGeometry = new OSBGeometry(); osbGeometry.pPoints = pps; if (isclone) { } else { osbGeometry.Element = this.Element; } osbGeometry.PenColor = this.PenColor; osbGeometry.FillColor = this.FillColor; osbGeometry.Opacity = this.Opacity; return(osbGeometry); }