src/org/nutz/img/Images.java
private static int pos4twist(double rank,
                                 double phase,
                                 double period,
                                 int hOrW,
                                 int xOrY,
                                 int yOrX) {
        double dyOrX = Math.PI * rank * yOrX / hOrW + phase;
        double dxOrY = Math.sin(dyOrX);
        return xOrY + (int) (dxOrY * period);
    }
private static int pos4twist(double rank,
                                 double phase,
                                 double period,
                                 int hOrW,
                                 int xOrY,
                                 int yOrX) {
        double dyOrX = Math.PI * rank * yOrX / hOrW + phase;
        double dxOrY = Math.sin(dyOrX);
        return xOrY + (int) (dxOrY * period);
    }
private static int pos4twist ( double rank , double phase , double period , int hOrW , int xOrY , int yOrX ) { double dyOrX = Math . PI * rank * yOrX / hOrW + phase ; double dxOrY = Math . sin ( dyOrX ) ; return xOrY + ( int ) ( dxOrY * period ) ; }
2. width, y, x
2 . width y x