コード例 #1
0
ファイル: Line.cs プロジェクト: lcfcosta/Draw2DDemoTest
        public override IEnumerable <Point> GetSnapPoints()
        {
            if (SnapTargets.HasFlag(SnapTargets.Vertices))
            {
                yield return(StartPoint);

                yield return(EndPoint);
            }
        }
コード例 #2
0
ファイル: PolyLine.cs プロジェクト: lcfcosta/Draw2DDemoTest
 public override IEnumerable <Point> GetSnapPoints()
 {
     if (SnapTargets.HasFlag(SnapTargets.Vertices))
     {
         foreach (var point in Points)
         {
             yield return(point);
         }
     }
 }
コード例 #3
0
ファイル: Figure.cs プロジェクト: lcfcosta/Draw2DDemoTest
        public virtual IEnumerable <Point> GetSnapPoints()
        {
            if (SnapTargets.HasFlag(SnapTargets.Vertices))
            {
                foreach (var vertex in BoundingBox.GetVertices())
                {
                    yield return(vertex);
                }
            }
            if (SnapTargets.HasFlag(SnapTargets.MidPoints))
            {
                yield return(BoundingBox.TopCenter.Clone());

                yield return(BoundingBox.RightCenter.Clone());

                yield return(BoundingBox.BottomCenter.Clone());

                yield return(BoundingBox.LeftCenter.Clone());
            }
            if (SnapTargets.HasFlag(SnapTargets.Center))
            {
                yield return(BoundingBox.Center);
            }
        }