All pastes #184394 Raw Edit

Untitled

public text v1 · immutable
#184394 ·published 2006-09-27 21:12 UTC
rendered paste body
 public FImage2D rotate( float angle ) {
    FImage2D r = new FImage2D( xsize, ysize );
    float x,y;
    float ca = (float) Math.cos( angle);
    float sa = (float) Math.sin( angle);
    
    for (int xa = 0; xa < xsize; xa++) {
	    for(int ya = 0; ya < ysize; ya++) {
		    
		x = (xa* ca + ya * sa)+127.5f;
		y = (-xa* sa + ya * ca)+127.5f;
		r.set(xa,ya,pv(x,y,1));
   	    }
    // enumerate all (xa, ya) in resultant image
    // calculate the corresponding (x,y) in original image
    // use interpolation to set r(xa,ya) to original(x,y)
    }
    return  r;