void join ( Curve_set const& aOther ) { if ( is_circular() && aOther.is_circular() ) { get_circular_rep()->join( *aOther.get_circular_rep() ) ; } else if ( is_bezier() && aOther.is_bezier() ) { get_bezier_rep()->join( *aOther.get_bezier_rep() ) ; } }
void symmetric_difference( Curve_set const& aOther ) { if ( is_circular() && aOther.is_circular() ) { get_circular_rep()->symmetric_difference( *aOther.get_circular_rep() ) ; } else if ( is_bezier() && aOther.is_bezier() ) { get_bezier_rep()->symmetric_difference( *aOther.get_bezier_rep() ) ; } }
void intersect( Curve_set const& aOther ) { if ( is_circular() && aOther.is_circular() ) { get_circular_rep()->intersect( *aOther.get_circular_rep() ) ; } else if ( is_bezier() && aOther.is_bezier() ) { get_bezier_rep()->intersect( *aOther.get_bezier_rep() ) ; } }
unsigned count_circular() { char primes[LIMIT]; unsigned counter = 0; int i; sieve(primes, LIMIT); for (i = 0; i < LIMIT; ++i) { if (primes[i] && is_circular(primes, i)) { ++counter; } } return counter; }