private NearestNeighbourModel(NearestNeighbourModel original, Cloner cloner)
      : base(original, cloner) {
      kdTree = new alglib.nearestneighbor.kdtree();
      kdTree.approxf = original.kdTree.approxf;
      kdTree.boxmax = (double[])original.kdTree.boxmax.Clone();
      kdTree.boxmin = (double[])original.kdTree.boxmin.Clone();
      kdTree.buf = (double[])original.kdTree.buf.Clone();
      kdTree.curboxmax = (double[])original.kdTree.curboxmax.Clone();
      kdTree.curboxmin = (double[])original.kdTree.curboxmin.Clone();
      kdTree.curdist = original.kdTree.curdist;
      kdTree.debugcounter = original.kdTree.debugcounter;
      kdTree.idx = (int[])original.kdTree.idx.Clone();
      kdTree.kcur = original.kdTree.kcur;
      kdTree.kneeded = original.kdTree.kneeded;
      kdTree.n = original.kdTree.n;
      kdTree.nodes = (int[])original.kdTree.nodes.Clone();
      kdTree.normtype = original.kdTree.normtype;
      kdTree.nx = original.kdTree.nx;
      kdTree.ny = original.kdTree.ny;
      kdTree.r = (double[])original.kdTree.r.Clone();
      kdTree.rneeded = original.kdTree.rneeded;
      kdTree.selfmatch = original.kdTree.selfmatch;
      kdTree.splits = (double[])original.kdTree.splits.Clone();
      kdTree.tags = (int[])original.kdTree.tags.Clone();
      kdTree.x = (double[])original.kdTree.x.Clone();
      kdTree.xy = (double[,])original.kdTree.xy.Clone();

      k = original.k;
      targetVariable = original.targetVariable;
      allowedInputVariables = (string[])original.allowedInputVariables.Clone();
      if (original.classValues != null)
        this.classValues = (double[])original.classValues.Clone();
    }
        private NearestNeighbourModel(NearestNeighbourModel original, Cloner cloner)
            : base(original, cloner)
        {
            kdTree              = new alglib.nearestneighbor.kdtree();
            kdTree.approxf      = original.kdTree.approxf;
            kdTree.boxmax       = (double[])original.kdTree.boxmax.Clone();
            kdTree.boxmin       = (double[])original.kdTree.boxmin.Clone();
            kdTree.buf          = (double[])original.kdTree.buf.Clone();
            kdTree.curboxmax    = (double[])original.kdTree.curboxmax.Clone();
            kdTree.curboxmin    = (double[])original.kdTree.curboxmin.Clone();
            kdTree.curdist      = original.kdTree.curdist;
            kdTree.debugcounter = original.kdTree.debugcounter;
            kdTree.idx          = (int[])original.kdTree.idx.Clone();
            kdTree.kcur         = original.kdTree.kcur;
            kdTree.kneeded      = original.kdTree.kneeded;
            kdTree.n            = original.kdTree.n;
            kdTree.nodes        = (int[])original.kdTree.nodes.Clone();
            kdTree.normtype     = original.kdTree.normtype;
            kdTree.nx           = original.kdTree.nx;
            kdTree.ny           = original.kdTree.ny;
            kdTree.r            = (double[])original.kdTree.r.Clone();
            kdTree.rneeded      = original.kdTree.rneeded;
            kdTree.selfmatch    = original.kdTree.selfmatch;
            kdTree.splits       = (double[])original.kdTree.splits.Clone();
            kdTree.tags         = (int[])original.kdTree.tags.Clone();
            kdTree.x            = (double[])original.kdTree.x.Clone();
            kdTree.xy           = (double[, ])original.kdTree.xy.Clone();

            k = original.k;
            allowedInputVariables = (string[])original.allowedInputVariables.Clone();
            if (original.classValues != null)
            {
                this.classValues = (double[])original.classValues.Clone();
            }
        }
Пример #3
0
 private NearestNeighbourModel(NearestNeighbourModel original, Cloner cloner)
     : base(original, cloner)
 {
     kdTree              = new alglib.nearestneighbor.kdtree();
     kdTree.approxf      = original.kdTree.approxf;
     kdTree.boxmax       = (double[])original.kdTree.boxmax.Clone();
     kdTree.boxmin       = (double[])original.kdTree.boxmin.Clone();
     kdTree.buf          = (double[])original.kdTree.buf.Clone();
     kdTree.curboxmax    = (double[])original.kdTree.curboxmax.Clone();
     kdTree.curboxmin    = (double[])original.kdTree.curboxmin.Clone();
     kdTree.curdist      = original.kdTree.curdist;
     kdTree.debugcounter = original.kdTree.debugcounter;
     kdTree.idx          = (int[])original.kdTree.idx.Clone();
     kdTree.kcur         = original.kdTree.kcur;
     kdTree.kneeded      = original.kdTree.kneeded;
     kdTree.n            = original.kdTree.n;
     kdTree.nodes        = (int[])original.kdTree.nodes.Clone();
     kdTree.normtype     = original.kdTree.normtype;
     kdTree.nx           = original.kdTree.nx;
     kdTree.ny           = original.kdTree.ny;
     kdTree.r            = (double[])original.kdTree.r.Clone();
     kdTree.rneeded      = original.kdTree.rneeded;
     kdTree.selfmatch    = original.kdTree.selfmatch;
     kdTree.splits       = (double[])original.kdTree.splits.Clone();
     kdTree.tags         = (int[])original.kdTree.tags.Clone();
     kdTree.x            = (double[])original.kdTree.x.Clone();
     kdTree.xy           = (double[, ])original.kdTree.xy.Clone();
     selfMatch           = original.selfMatch;
     k = original.k;
     isCompatibilityLoaded = original.IsCompatibilityLoaded;
     if (!IsCompatibilityLoaded)
     {
         weights = new double[original.weights.Length];
         Array.Copy(original.weights, weights, weights.Length);
         offsets = new double[original.offsets.Length];
         Array.Copy(original.offsets, this.offsets, this.offsets.Length);
     }
     allowedInputVariables = (string[])original.allowedInputVariables.Clone();
     if (original.classValues != null)
     {
         this.classValues = (double[])original.classValues.Clone();
     }
 }