public void compose(CvMat H1, boolean inverse1, CvMat H2, boolean inverse2) { if (inverse1 && inverse2) { cvMatMul(H2, H1, H); cvInvert(H, H); } else if (inverse1) { cvInvert(H1, H); cvMatMul(H, H2, H); } else if (inverse2) { cvInvert(H2, H); cvMatMul(H1, H, H); } else { cvMatMul(H1, H2, H); } set(H, false); }
public void set(double ... p) { for (int i = 0; i < p.length; i++) { set(i, p[i]); } } public void set(int i, double p) {
@Override public void set(int i, double p) { int s = super.size(); if (i < s) { super.set(i, p); } else { if (colorParameters[i-s] != p) { colorParameters[i-s] = p; setUpdateNeeded(true); } } } @Override public void reset(boolean asIdentity) {
public void set(ImageTransformer.Parameters p) { set(p.get()); fakeIdentity = ((Parameters)p).fakeIdentity; } public void reset(boolean asIdentity) {
@Override public Parameters clone() { Parameters p = new Parameters(); p.set(this); return p; }