/** * Gets an array of node nabors of the specified node. * @param node the node for which to get nabors. * @return the array of nabors. */ public synchronized Node[] getNodeNabors(Node node) { NodeList nabors = new NodeList(); getNodeNabors(node,nabors); return nabors.trim(); }
/** * Appends the node nabors of the specified node to the specified list. * @param node the node for which to get nabors. * @param nabors the list to which nabors are appended. */ public synchronized void getNodeNabors(Node node, NodeList nabors) { Tet tet = node._tet; if (tet==null) return; clearNodeMarks(); clearTetMarks(); getNodeNabors(node,tet,nabors); }
getNodeNabors(node,step,list); for (int inabor=nnabor1; inabor<nnabor2; ++inabor) { node = naborNodes[inabor]; getNodeNabors(node,step,list);
while (inode.hasNext()) { Node na = inode.next(); Node[] nabors = getNodeNabors(na); int nnabor = nabors.length; for (int inabor=0; inabor<nnabor; ++inabor) {
getNodeNabors(node,t1,nabors); if (t2!=null && !isMarked(t2)) getNodeNabors(node,t2,nabors); if (t3!=null && !isMarked(t3)) getNodeNabors(node,t3,nabors); } else if (node==n1) { if (!isMarked(n3)) { getNodeNabors(node,t3,nabors); if (t2!=null && !isMarked(t2)) getNodeNabors(node,t2,nabors); if (t0!=null && !isMarked(t0)) getNodeNabors(node,t0,nabors); } else if (node==n2) { if (!isMarked(n3)) { getNodeNabors(node,t3,nabors); if (t0!=null && !isMarked(t0)) getNodeNabors(node,t0,nabors); if (t1!=null && !isMarked(t1)) getNodeNabors(node,t1,nabors); } else if (node==n3) { if (!isMarked(n1)) { getNodeNabors(node,t1,nabors); if (t0!=null && !isMarked(t0)) getNodeNabors(node,t0,nabors); if (t2!=null && !isMarked(t2)) getNodeNabors(node,t2,nabors);
assertEquals(3,tm.getEdgeNabors(n3).length); assertEquals(3,tm.getEdgeNabors(n4).length); assertEquals(4,tm.getNodeNabors(n0).length); assertEquals(4,tm.getNodeNabors(n1).length); assertEquals(4,tm.getNodeNabors(n2).length); assertEquals(3,tm.getNodeNabors(n3).length); assertEquals(3,tm.getNodeNabors(n4).length);