if (this.intersectionProcessors == null)
throw new IllegalStateException( "Illegal call to compute limbs when the intersection processor has not been set." );
if (this.limbRefiners == null)
throw new IllegalStateException( "Illegal call to compute limbs when the limb refiner has not been set." );
IIntersectionGenerator intersectionGenerator = this.intersectionGeneratorClass.newInstance();
intersectionGenerator.setOptions( options );
intersectionGenerator.setShape( view );
List<Limb> limbs = new ArrayList<Limb>();
while (features.hasNext())
{
Feature feature = features.next();
// Generate the intersections for this feature.
Geometry intersections = intersectionGenerator.generateIntersections( feature );
if (intersections != null)
{
int numOfIntersections = intersections.getNumGeometries();
for (int i=0; i<numOfIntersections; i++)
{