def getInfillDictionary(arounds, aroundWidth, infillInset, infillWidth, pixelTable, rotatedLoops, testLoops=None):
 slightlyGreaterThanInfillInset = (intercircle.globalIntercircleMultiplier * infillInset)
 allPoints = intercircle.getPointsFromLoops(rotatedLoops, infillInset, 0.7)
 centers = intercircle.getCentersFromPoints(allPoints, slightlyGreaterThanInfillInset)
 infillDictionary = {}
 for center in centers:
  insetCenter = intercircle.getSimplifiedInsetFromClockwiseLoop(center, infillInset)
  insetPoint = insetCenter[0]
  if ((len(insetCenter) > 2) and intercircle.getIsLarge(insetCenter, infillInset) and euclidean.getIsInFilledRegion(rotatedLoops, insetPoint)):
   around = euclidean.getSimplifiedLoop(center, infillInset)
   euclidean.addLoopToPixelTable(around, pixelTable, aroundWidth)
   arounds.append(around)
   insetLoop = intercircle.getSimplifiedInsetFromClockwiseLoop(center, infillInset)
   euclidean.addXIntersectionsFromLoopForTable(insetLoop, infillDictionary, infillWidth)
   if (testLoops != None):
    testLoops.append(insetLoop)
 return infillDictionary

def getInfillDictionary ( arounds , aroundWidth , infillInset , infillWidth , pixelTable , rotatedLoops , testLoops = None ) : slightlyGreaterThanInfillInset = ( intercircle . globalIntercircleMultiplier * infillInset ) allPoints = intercircle . getPointsFromLoops ( rotatedLoops , infillInset , 0.7 ) centers = intercircle . getCentersFromPoints ( allPoints , slightlyGreaterThanInfillInset ) infillDictionary = { } for center in centers : insetCenter = intercircle . getSimplifiedInsetFromClockwiseLoop ( center , infillInset ) insetPoint = insetCenter [ 0 ] if ( ( len ( insetCenter ) > 2 ) and intercircle . getIsLarge ( insetCenter , infillInset ) and euclidean . getIsInFilledRegion ( rotatedLoops , insetPoint ) ) : around = euclidean . getSimplifiedLoop ( center , infillInset ) euclidean . addLoopToPixelTable ( around , pixelTable , aroundWidth ) arounds . append ( around ) insetLoop = intercircle . getSimplifiedInsetFromClockwiseLoop ( center , infillInset ) euclidean . addXIntersectionsFromLoopForTable ( insetLoop , infillDictionary , infillWidth ) if ( testLoops != None ) : testLoops . append ( insetLoop ) return infillDictionary
get combined fill loops which include most of the points .