public void Add(LearningPlane p) { _Data.Add(p); }
public void SetPlane(int h, int w, LearningPlane p) { Array.Copy(p.Data, 0, Data, (Width * h + w) * Plane, Plane); }
public void Add(int h, int w, LearningPlane p) { if (h < 0 || h >= Height || w < 0 || w >= Width) { return; } _Data[Width * h + w].Add(p); }
public LearningPlane GetPlane(double h, double w) { int h0 = (int)h; int h1 = (int)h + 1; int w0 = (int)w; int w1 = (int)w + 1; var p00 = GetPlane(h0, w0); var p10 = GetPlane(h1, w0); var p01 = GetPlane(h0, w1); var p11 = GetPlane(h1, w1); double w00 = ((h1 - h) + (w1 - w)) * 0.25; double w10 = ((h - h0) + (w1 - w)) * 0.25; double w01 = ((h1 - h) + (w - w0)) * 0.25; double w11 = ((h - h0) + (w - w0)) * 0.25; LearningPlane p = new LearningPlane(Plane); p.Add(p00.Scale(w00), p10.Scale(w10), p01.Scale(w01), p11.Scale(w11)); return p; }