Given two loops whose boundaries do not cross (see CompareBoundary),
return true if A contains the boundary of B. If "reverse_b" is true, the
boundary of B is reversed first (which only affects the result when there
are shared edges). This method is cheaper than CompareBoundary() because
it does not test for edge intersections.
REQUIRES: neither loop is empty.
REQUIRES: if b->is_full(), then reverse_b == false.
Given two loops whose boundaries do not cross (see CompareBoundary), return true if A contains the boundary of B. If "reverse_b" is true, the boundary of B is reversed first (which only affects the result when there are shared edges). This method is cheaper than CompareBoundary() because it does not test for edge intersections.
REQUIRES: neither loop is empty. REQUIRES: if b->is_full(), then reverse_b == false.