Keypoint orientation with the oFAST from Rublee's ORB
The point descriptor usually requires samples at some specific locations from around the detected point.

If you have point location refined and orientation assigned, you just shift and rotate the locations before computing point descriptor.

Some simple descriptors require samples at discrete locations (e.g. 15x15 pixel image patch) and applying shift+rotation will make the sample locations non-discrete (the patch is arbitrarily rotated and shifted) and you have to use bilinear or bicubic interpolation to take the pixel values.

Here is a sample of detected points - notice the corresponding patches are rotated:



To get e.g. 64x64 matrix of values for each patch, one has to sample points rotated accordingly.