示例#1
0
        public void Draw(LetterView from, LetterView to, SignalDirection direction)
        {
            Point start       = DrawerHelper.GetLocation(from, _grid, _xOffset, _yOffset);
            Point end         = DrawerHelper.GetLocation(to, _grid, _xOffset, _yOffset);
            Point middlePoint = DrawerHelper.GetMiddlePoint(start, end);

            DrawerHelper.SetLine(_mainLineIn, start, middlePoint);

            DrawerHelper.SetLine(_mainLineOut, middlePoint, end);

            DrawerHelper.SetHorizontalLine(_firstLine, start, 5);

            DrawerHelper.SetHorizontalLine(_secondLine, end, 5);

            var v = new Vector(from.Width + 4, 0);

            DrawerHelper.SetHorizontalLine(_outFirstLine, start + v, 50);

            DrawerHelper.SetHorizontalLine(_outSecondLine, end + v, 50);
        }
示例#2
0
        public void DrawFirst(LetterView from, LetterView to)
        {
            Point start = DrawerHelper.GetLocation(from, _grid, _xOffset, _yOffset);
            Point end   = DrawerHelper.GetLocation(to, _grid, to.Width + 2 + _xOffset + 7, _yOffset);

            DrawerHelper.SetLine(_mainLineIn, start, end);

            DrawerHelper.SetHorizontalLine(_firstLineIn, start, 5);

            DrawerHelper.SetHorizontalLine(_secondLineIn, end, -5);

            var v = new Vector(from.Width + 4, 0);

            Point outerStart = Point.Add(start, v);

            DrawerHelper.SetHorizontalLine(_startOuterLineIn, outerStart, 50);

            Point outerEnd = Point.Add(end, -v);

            DrawerHelper.SetHorizontalLine(_endOuterLineIn, outerEnd, -50);
        }