parameters: (base_placement,
                      xvector, yvector, zvector,
                      xnum, ynum, znum)
return_statement: return placements
docstring: Determine the placements where the rectangular copies will be.
docstring_summary: Determine the placements where the rectangular copies will be.
docstring_tokens: Determine the placements where the rectangular copies will be .
function: def rect_placements(base_placement,
                      xvector, yvector, zvector,
                      xnum, ynum, znum):
      """Determine the placements where the rectangular copies will be."""
      pl = base_placement
      placements = [pl.copy()]
  
      for xcount in range(xnum):
          currentxvector = App.Vector(xvector).multiply(xcount)
          if xcount != 0:
              npl = pl.copy()
              npl.translate(currentxvector)
              placements.append(npl)
  
          for ycount in range(ynum):
              currentyvector = App.Vector(currentxvector)
              _y_shift = App.Vector(yvector).multiply(ycount)
              currentyvector = currentyvector.add(_y_shift)
              if ycount != 0:
                  npl = pl.copy()
                  npl.translate(currentyvector)
                  placements.append(npl)
  
              for zcount in range(znum):
                  currentzvector = App.Vector(currentyvector)
                  _z_shift = App.Vector(zvector).multiply(zcount)
                  currentzvector = currentzvector.add(_z_shift)
                  if zcount != 0:
                      npl = pl.copy()
                      npl.translate(currentzvector)
                      placements.append(npl)
  
      return placements
function_tokens: def rect_placements ( base_placement , xvector , yvector , zvector , xnum , ynum , znum ) : pl = base_placement placements = [ pl . copy ( ) ] for xcount in range ( xnum ) : currentxvector = App . Vector ( xvector ) . multiply ( xcount ) if xcount != 0 : npl = pl . copy ( ) npl . translate ( currentxvector ) placements . append ( npl ) for ycount in range ( ynum ) : currentyvector = App . Vector ( currentxvector ) _y_shift = App . Vector ( yvector ) . multiply ( ycount ) currentyvector = currentyvector . add ( _y_shift ) if ycount != 0 : npl = pl . copy ( ) npl . translate ( currentyvector ) placements . append ( npl ) for zcount in range ( znum ) : currentzvector = App . Vector ( currentyvector ) _z_shift = App . Vector ( zvector ) . multiply ( zcount ) currentzvector = currentzvector . add ( _z_shift ) if zcount != 0 : npl = pl . copy ( ) npl . translate ( currentzvector ) placements . append ( npl ) return placements