Ejemplo n.º 1
0
 /// <summary>
 /// Функция определяет необходимость рисования и сдвига начального и конечного квадратика сегмента.
 /// </summary>
 internal void DesideAboutBounds(Segment parSeg, Constants.numSide side)
 {
     if (side == Constants.numSide.sLeft || side == Constants.numSide.sBoth)
     {
         var leftPt = segVertList.FirstOrDefault(e => e.side == Constants.numSide.sLeft);
         if (leftPt != null)
         {
             DrawStartBox  = this.NS != parSeg.NS;
             ShiftStartBox = DrawStartBox && this.StartColumn == parSeg.StartColumn;
         }
     }
     if (side == Constants.numSide.sRight || side == Constants.numSide.sBoth)
     {
         var rightPt = segVertList.FirstOrDefault(e => e.side == Constants.numSide.sRight);
         if (rightPt != null)
         {
             DrawFinishBox  = this.KS != parSeg.KS;
             ShiftFinishBox = DrawFinishBox && this.FinishColumn == parSeg.FinishColumn;
         }
     }
 }
Ejemplo n.º 2
0
 internal VertPoint(int _row2connect, int _segID, Constants.numSide _side)
 {
     row2connect = _row2connect;
     segID       = _segID;
     side        = _side;
 }
Ejemplo n.º 3
0
 internal VertPoint GetPoint(Constants.numSide side)
 {
     return(segVertList.FirstOrDefault(e => e.side == side));
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Добавление точки сопряжения с родительским сегментом
 /// </summary>
 /// <param name="row2connect">строка, в которой находится родительский сегмент</param>
 /// <param name="segID">ID родительскоого сегмента</param>
 /// <param name="side">положение точки</param>
 internal void AddVertPoint(int row2connect, int segID, Constants.numSide side)
 {
     segVertList.Add(new VertPoint(row2connect, segID, side));
 }