override public void Prepare() { TArrowLine Line, Lnb; Point P1 = new Point(), P2 = new Point(); int tmp_x; TTfeRectShape Rct; TTfeRhombShape Rhmb; Rct = (TTfeRectShape)(GetWorkShape(0)); Rhmb = (TTfeRhombShape)(GetWorkShape(1)); Rct.GetTailPoint(0, ref P1); Line = (TArrowLine)(GetWorkLine(0)); Line.xStart = StartPoint.X; Line.yStart = StartPoint.Y; Line.xEnd = P1.X - 2 * F_Step; Line.yEnd = P1.Y; Line.Bend = CalcBend(Line.xStart, Line.xEnd); Lnb = Line; Line = (TArrowLine)(GetWorkLine(1)); Line.xStart = Lnb.xEnd; Line.yStart = Lnb.yEnd; Line.xEnd = P1.X; Line.yEnd = P1.Y; Rct.GetTailPoint(1, ref P1); Rhmb.GetTailPoint(0, ref P2); Line = (TArrowLine)(GetWorkLine(2)); Line.xStart = P1.X; Line.yStart = P1.Y; Line.xEnd = P2.X; Line.yEnd = P2.Y; Rct.GetTailPoint(0, ref P1); Rhmb.GetTailPoint(1, ref P2); Line = (TArrowLine)(GetWorkLine(3)); Line.xStart = P1.X; Line.yStart = P1.Y; Line.xEnd = P2.X; Line.yEnd = P2.Y; Rhmb.GetTailPoint(2, ref P2); Line = (TArrowLine)(GetWorkLine(4)); Line.xStart = P2.X; Line.yStart = P2.Y; Line.xEnd = P2.X + 2 * F_Step; Line.yEnd = P2.Y; base.Prepare(); }
void CreateLines() { TArrowLine Line, Lnb; Point P1 = new Point(), P2 = new Point(); int tmp_x; TTfeRectShape Rct; TTfeRhombShape Rhmb; FreeWorkLines(); F_LastLineId = F_NumberLineId; Rct = (TTfeRectShape)(GetWorkShape(0)); Rhmb = (TTfeRhombShape)(GetWorkShape(1)); Rct.GetTailPoint(0, ref P1); F_LastLineId++; Line = new TArrowLine(F_Step, F_LastLineId); Line.xStart = StartPoint.X; Line.yStart = StartPoint.Y; Line.xEnd = P1.X - 2 * F_Step; Line.yEnd = P1.Y; Line.Bend = CalcBend(Line.xStart, Line.xEnd); AddLine(Line); Lnb = Line; F_LastLineId++; //2 Line = new TArrowLine(F_Step, F_LastLineId); Line.xStart = Lnb.xEnd; Line.yStart = Lnb.yEnd; Line.xEnd = P1.X; Line.yEnd = P1.Y; AddLine(Line); Rct.GetTailPoint(1, ref P1); Rhmb.GetTailPoint(0, ref P2); F_LastLineId++; //3 Line = new TArrowLine(F_Step, F_LastLineId); Line.xStart = P1.X; Line.yStart = P1.Y; Line.xEnd = P2.X; Line.yEnd = P2.Y; AddLine(Line); Rct.GetTailPoint(0, ref P1); Rhmb.GetTailPoint(1, ref P2); F_LastLineId++; //4 Line = new TArrowLine(F_Step, F_LastLineId); Line.xStart = P1.X; Line.yStart = P1.Y; Line.xEnd = P2.X; Line.yEnd = P2.Y; AddLine(Line); Rhmb.GetTailPoint(2, ref P2); F_LastLineId++; //5 Line = new TArrowLine(F_Step, F_LastLineId); Line.xStart = P2.X; Line.yStart = P2.Y; Line.xEnd = P2.X + 2 * F_Step; Line.yEnd = P2.Y; AddLine(Line); }