# Class UnitCellIterator

java.lang.Object
org.jmol.symmetry.UnitCellIterator

All Implemented Interfaces:
  `AtomIndexIterator`

public class UnitCellIterator extends Object implements AtomIndexIterator

## Constructor Summary

Constructors
Constructor
Description
`UnitCellIterator()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addAtoms(BS bsAtoms)`
`float`
`foundDistance2()`
`P3`
`getPosition()`
`boolean`
`hasNext()`
`int`
`next()`
`void`
`release()`
`UnitCellIterator`
`set(SymmetryInterface unitCell, Atom atom, Atom[] atoms, BS bsAtoms, float distance)`
`void`
`setCenter(T3 center, float distance)`
`void`
`setModel(ModelSet modelSet, int modelIndex, int zeroBase, int atomIndex, T3 center, float distance, RadiusData rd)`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### UnitCellIterator

public UnitCellIterator()

## Method Details

### set

public UnitCellIterator set(SymmetryInterface unitCell, Atom atom, Atom[] atoms, BS bsAtoms, float distance)

Parameters:
  `unitCell` -
  `atom` -
  `atoms` -
  `bsAtoms` -
  `distance` - invalid input: '<'= 0 indicates that distance will be set later, probably from a point
Returns:
  this

### setModel

public void setModel(ModelSet modelSet, int modelIndex, int zeroBase, int atomIndex, T3 center, float distance, RadiusData rd)

Specified by:
  `setModel` in interface `AtomIndexIterator`
Parameters:
  `modelSet` -
  `modelIndex` -
  `zeroBase` - an offset used in the AtomIteratorWithinSet only
  `atomIndex` -
  `center` -
  `distance` -
  `rd` -

### setCenter

public void setCenter(T3 center, float distance)

Specified by:
  `setCenter` in interface `AtomIndexIterator`

### addAtoms

public void addAtoms(BS bsAtoms)

Specified by:
  `addAtoms` in interface `AtomIndexIterator`

### hasNext

public boolean hasNext()

Specified by:
  `hasNext` in interface `AtomIndexIterator`

### next

public int next()

Specified by:
  `next` in interface `AtomIndexIterator`

### foundDistance2

public float foundDistance2()

Specified by:
  `foundDistance2` in interface `AtomIndexIterator`

### getPosition

public P3 getPosition()

Specified by:
  `getPosition` in interface `AtomIndexIterator`

### release

public void release()

Specified by:
  `release` in interface `AtomIndexIterator`