How can I rotate an object's coordinate system without rotating the object? I have the following situation with a chimney on a roof:



I'd like to slide the chimney around on the plane parallel to the roof. One way I could accomplish this would be if I could somehow rotate the chimney's coordinate axes to be parallel to the slope of the roof, however I don't know how to perform this rotation without also rotating the chimney. 

Is there a quick and easy way to do this type of coordinate transform?
You could try is this, however it seems to me you are looking for Custom transform orientations.

In your situation:


Select the triangle object and enter edit mode (&#8633; Tab)
Select the edge along which you want the custom Z axis to be aligned and press &#9096; Ctrl&#9095; AltSpace
This should create a custom orientation and set it as the current orientation. You can switch orientations in the Header or the properties region (N) of the 3D view. In the properties region you can also delete unwanted orientations.




Note that to clamp a transform operation (translate, rotate, scale) to the axes defined by the custom transform orientation, you must press the axis key twice (e.g. GZZ).