Tri tri = node.tri(); Node ta = tri.nodeA(); Node tb = tri.nodeB();
/** * Determines whether the specified node is an inner node. * @param node a node. * @return true, if inner; false, otherwise. */ public boolean isInner(Node node) { Tri tri = node.tri(); if (tri==null || isInner(tri)) return true; Tri[] tris = getTriNabors(node); int ntri = tris.length; for (int itri=0; itri<ntri; ++itri) { if (isInner(tris[itri])) return true; } return false; }
/** * Validates the specified node. */ private void validate(Node node) { Check.state(node==node._prev._next,"node==node._prev._next"); Check.state(node==node._next._prev,"node==node._next._prev"); Tri tri = node.tri(); if (_troot!=null) { Check.state(tri!=null,"tri!=null"); Check.state(node==tri.nodeA() || node==tri.nodeB() || node==tri.nodeC(), "node is one of tri nodes"); } }