@classmethod
def subnodes(cls, n):
    tcon = TriShapeSubDiv.subnodes(n).reshape((- 1), 3)
    loff = (((n + 1) * (n + 2)) // 2)
    lcon = [[(tcon + (i * loff)), (tcon + ((i + 1) * loff))] for i in range(n)]
    return np.hstack((np.hstack(l).flat for l in lcon))
@classmethod
def subnodes(cls, n):
    tcon = TriShapeSubDiv.subnodes(n).reshape((- 1), 3)
    loff = (((n + 1) * (n + 2)) // 2)
    lcon = [[(tcon + (i * loff)), (tcon + ((i + 1) * loff))] for i in range(n)]
    return np.hstack((np.hstack(l).flat for l in lcon))