(aBorder, temp, nNook, nAligned, nDel, nIns)
| 244 | return subs |
| 245 | |
| 246 | def AlterBorder(aBorder, temp, nNook, nAligned, nDel, nIns): |
| 247 | cnr1 = nNook |
| 248 | cnr2 = nAligned |
| 249 | if nDel < 3: |
| 250 | # replacement |
| 251 | ang1 = aBorder[cnr1].angle |
| 252 | aBorder[cnr1]= NodeObject(temp, cnr2) |
| 253 | aBorder[cnr1].angle = ang1 |
| 254 | aBorder[cnr1].prioritise() |
| 255 | if cnr1 == len(aBorder) - 1: |
| 256 | lClocked = True |
| 257 | else: |
| 258 | lClocked = False |
| 259 | # deletion |
| 260 | cnr3 =(cnr1 + 1) % len(aBorder) |
| 261 | nAdjust = 1 |
| 262 | for z in range(nDel): |
| 263 | if cnr3 < len(aBorder) - 1: |
| 264 | aBorder = aBorder[:cnr3] + aBorder[cnr3 + 1:] |
| 265 | elif cnr3 == len(aBorder): # delete first element |
| 266 | aBorder = aBorder[1:] |
| 267 | else: # around the clock |
| 268 | aBorder = aBorder[:cnr3] |
| 269 | # insertion |
| 270 | for nD in range(nIns): |
| 271 | cnr4 = (cnr1 + nD + nAdjust) % len(aBorder) |
| 272 | if lClocked: |
| 273 | cnr4 = nD |
| 274 | node = NodeObject(temp, (cnr2 + nD + 1) % 4) |
| 275 | aBorder.insert(cnr4, node) |
| 276 | return aBorder |
| 277 | |
| 278 | def FitsBorder(aBorder, nNook, aV, temp): |
| 279 | nAligned = aV[1] |
no test coverage detected