/// <summary> /// 添加单独数据(三小路) /// </summary> /// <param name="it"></param> /// <param name="bigRoad"></param> /// <returns></returns> public bool AddSingleItem(RoadNode it, RoadNodeTable bigRoad) { bool returnState = false; //满足此两项条件 方可产生节点 if (it.X > Nstep || (it.X == Nstep && it.Y > 1)) { //看整齐 if (it.Y == 1) { returnState = InsertNode(bigRoad.GetRolCount(it.X - 2) == bigRoad.GetRolCount(it.X + 1 - Nstep)); } else { //看有无 int nTempX = it.X + 1 - Nstep; returnState = bigRoad.CheckHasNode(nTempX, it.Y) ? InsertNode(true) : InsertNode(!bigRoad.CheckHasNode(nTempX, it.Y - 1)); } } return(returnState); }