public SnapController()
        {
            paintMagnets = new List <Magnet>();
            snapMagnet   = null;

            points = new PointMagnetsCollection();
            lines  = new LineMagnetsCollection();
            area   = new AreaMagnet(PointMagnet.ZeroMagnet.Position, CommonAxes.GlobalAxes[2]);

            painter = new SnapPainter();
        }
 public void Dispose()
 {
     collection = null;
     secondaryEnumerator.Dispose();
 }
 public PointMagnetListEnumerator(PointMagnetsCollection collection)
 {
     this.collection     = collection;
     secondaryEnumerator = collection.SecondaryPoints.GetEnumerator();
 }