Beispiel #1
0
 /// <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));
         });
     }
 }
Beispiel #2
0
        /// <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);
        }