当画一个节点的时候样传入的是坐标X,Y和父节点的就可以了
MiddleHead(TreeNode node, int x1, int y1, int x2, int y2, double alpha)
node:表示当前的节点,
x1, y1 当前节点的父节点的坐标(父节点不存在的时候可以设为负数,然后在后面判断)
x2, y2 当前节点的坐标
alpha表示父节点和当前节点连线的倾角(不能使用相同的角度,否则会出现2个节点重合的现象)
下面是我在用的画图的方法,可以参考一下。
public void MiddleHead(AVLTreeNode node, int x1, int y1, int x2, int y2, double alpha)//中根遍历并输出图形
{
if (node == null)
return;
int x3 = x2 - (int)(myDraw.LineLength * Math.Sin(alpha));
int y3 = y2 + (int)(myDraw.LineLength * Math.Cos(alpha));