public Perspective load_from(double[] m) { sx = m[0]; shy = m[1]; w0 = m[2]; shx = m[3]; sy = m[4]; w1 = m[5]; tx = m[6]; ty = m[7]; w2 = m[8]; return this; }