source: trunk/SRC/ToBeReviewed/PLOTS/DIVERS/rotation.pro @ 325

Last change on this file since 325 was 325, checked in by pinsard, 17 years ago

modification of some headers (+some corrections) to prepare usage of the new idldoc

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 858 bytes
Line 
1;+
2;
3; @file_comments
4; Rotate two vectors by a specified amount.
5;
6; @param X {in}{required}
7; original data point pairs
8;
9; @param Y {in}{required}
10; original data point pairs
11;
12; @param DEG {in}{required}
13; degrees to rotate.
14;
15; @param NX {out}
16; rotated point pairs.
17;
18; @param NY {out}
19; rotated point pairs.
20
21; @history
22; Jeff Bennett, U of Colorado
23;
24; @version
25; $Id$
26;
27;-
28PRO rotation,X,Y,DEG,NX,NY
29;
30  compile_opt idl2, strictarrsubs
31;
32ang=deg*!dtor
33
34;convert to polar coordinates for rotation
35r = sqrt(x*x + y*y)
36theta = r*0.
37;get angle in for loop so that zero radii will be left as zero angle
38for i = 0,n_elements(r)-1 do $
39if r[i] ne 0 then theta[i] = atan(y[i],x[i])  ;range from -pi to +pi
40;
41;add rotation angle
42theta = theta + ang
43;
44;convert back to rectangular coordinates, now rotated
45nx = r * cos(theta)
46ny = r * sin(theta)
47;
48return
49end
Note: See TracBrowser for help on using the repository browser.