public void updateOvlpForIPOGs() {
   int i, len = IPOGNode.IPOGs.size();
   for (i = 0; i < len; i++) {
     IPOGNode.IPOGs.get(i).setOverlappingInfo(preOvlp, preRid, postOvlp, postRid);
     if (cContourShape == null) IPOGNode.setArea(getRegionArea());
   }
 }
  public void updateGaussianNodeGroup(
      ArrayList<IPOGaussianNode> IPOGGs,
      int r,
      int[][] pixels0,
      int w,
      int h,
      int index,
      int trackingLength) {
    IPOGNode = new IPOGaussianNodeComplex(IPOGGs);
    int i, j, ix;
    ix = 0;
    IPOGaussianNode IPOG;

    pixels = pixels0;
    cx = IPOGNode.xcr;
    cy = IPOGNode.ycr;
    cz = IPOGNode.getZ();
    this.w = w;
    this.h = h;
    this.t = t;
    radius = r;
    int xi = cx - r, xf = cx + r, yi = cy - r, yf = cy + r;
    if (xi < 0) xi = 0;
    if (yi < 0) yi = 0;
    if (xf > w - 1) xf = w - 1;
    if (yf > h - 1) yf = h - 1;
    ave = 0.;
    size = 0;
    for (i = yi; i <= yf; i++) {
      for (j = xi; j <= xf; j++) {
        size++;
        ave += pixels[i][j];
      }
    }
    ave /= size;
    background = false;
    //        this.index=index;
    pixelHeight = 0;

    pixelHeight = IPOGNode.dTotalSignal; // old definition of pixelHeigth.

    this.trackingLength = trackingLength;
    preIPO = null;
    postIPO = null;
    preIPOs = null;
    postIPOs = null;
    IPOsWithinContour = new ArrayList<IntensityPeakObject>();
  }
 public void setPeak3(double pixel) {
   peak3 = pixel;
   IPOGNode.setPeak3(pixel);
 }
 public void setPeak1(double pixel) {
   peak1 = pixel;
   IPOGNode.setPeak1(pixel);
 }
 public void setBackground(double bkg) {
   IPOGNode.setBackground(bkg);
 }
 public void setTotalSignal(double signal) {
   dTotalSignal = signal;
   IPOGNode.setTotalSignal(signal);
 }
 public void setBundleTotalSignal(double signal) {
   dTotalBundleSignal = signal;
   IPOGNode.setBundleTotalSignal(signal);
 }
 public void setArea(int area) {
   this.area = area;
   IPOGNode.setArea(area);
 }