Changeset 5749 for trunk/psLib/src/astro/psEarthOrientation.c
- Timestamp:
- Dec 7, 2005, 4:49:04 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/astro/psEarthOrientation.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/astro/psEarthOrientation.c
r5657 r5749 8 8 * @author Robert Daniel DeSonia, MHPCC 9 9 * 10 * @version $Revision: 1.2 1$ $Name: not supported by cvs2svn $11 * @date $Date: 2005-12-0 2 04:40:00$10 * @version $Revision: 1.22 $ $Name: not supported by cvs2svn $ 11 * @date $Date: 2005-12-08 02:49:04 $ 12 12 * 13 13 * Copyright 2005 Maui High Performance Computing Center, University of Hawaii … … 690 690 //XXX: Used formula for rotation matrix D from mathworld for z-axis rotation 691 691 double a = 1.0 / (1.0 + sqrt(1.0 - (pole->x*pole->x + pole->y*pole->y) ) ); 692 /* A[0][0] = (1.0 - a*pole->x*pole->x)*cos(pole->s) - a*pole->x*pole->y*sin(pole->s); 693 A[0][1] = -a*pole->x*pole->y*cos(pole->s) + (1.0 - a*pole->y*pole->y)*sin(pole->s); 694 A[0][2] = pole->x*cos(pole->s) + pole->y*sin(pole->s); 695 A[1][0] = -(1.0 - a*pole->x*pole->x)*sin(pole->s) - a*pole->x*pole->y*cos(pole->s); 696 A[1][1] = a*pole->x*pole->y*sin(pole->s) + (1.0 - a*pole->y*pole->y)*cos(pole->s); 697 A[1][2] = -pole->x*sin(pole->s) + pole->y*cos(pole->s); 698 A[2][0] = -pole->x; 699 A[2][1] = -pole->y; 700 A[2][2] = 1.0 - a*(pole->x*pole->x + pole->y*pole->y); 701 */ 692 702 A[0][0] = (1.0 - a*pole->x*pole->x)*cos(pole->s) - a*pole->x*pole->y*sin(pole->s); 693 A[ 0][1] = -a*pole->x*pole->y*cos(pole->s) + (1.0 - a*pole->y*pole->y)*sin(pole->s);694 A[ 0][2] = pole->x*cos(pole->s) + pole->y*sin(pole->s);695 A[ 1][0] = -(1.0 - a*pole->x*pole->x)*sin(pole->s) - a*pole->x*pole->y*cos(pole->s);703 A[1][0] = -a*pole->x*pole->y*cos(pole->s) + (1.0 - a*pole->y*pole->y)*sin(pole->s); 704 A[2][0] = pole->x*cos(pole->s) + pole->y*sin(pole->s); 705 A[0][1] = -(1.0 - a*pole->x*pole->x)*sin(pole->s) - a*pole->x*pole->y*cos(pole->s); 696 706 A[1][1] = a*pole->x*pole->y*sin(pole->s) + (1.0 - a*pole->y*pole->y)*cos(pole->s); 697 A[ 1][2] = -pole->x*sin(pole->s) + pole->y*cos(pole->s);698 A[ 2][0] = -pole->x;699 A[ 2][1] = -pole->y;707 A[2][1] = -pole->x*sin(pole->s) + pole->y*cos(pole->s); 708 A[0][2] = -pole->x; 709 A[1][2] = -pole->y; 700 710 A[2][2] = 1.0 - a*(pole->x*pole->x + pole->y*pole->y); 701 711 double x, y, s; 712 x = pole->x; 713 y = pole->y; 714 s = pole->s; 715 /* A[0][0] = (1.0 - a*x*x)*cos(s) + a*x*y*sin(s); 716 A[0][1] = (1.0 - a*x*x)*sin(s) - a*x*y*cos(s); 717 A[0][2] = x; 718 A[1][0] = -a*x*y*cos(s) - (1.0 - a*y*y)*sin(s); 719 A[1][1] = -a*x*y*sin(s) + (1.0 - a*y*y)*cos(s); 720 A[1][2] = y; 721 A[2][0] = -x*cos(s) + y*sin(s); 722 A[2][1] = -x*sin(s) - y*cos(s); 723 A[2][2] = 1.0 - a * (x*x + y*y); 724 */ 725 /* A[0][0] = (1.0 - a*x*x)*cos(s) + a*x*y*sin(s); 726 A[1][0] = (1.0 - a*x*x)*sin(s) - a*x*y*cos(s); 727 A[2][0] = x; 728 A[0][1] = -a*x*y*cos(s) - (1.0 - a*y*y)*sin(s); 729 A[1][1] = -a*x*y*sin(s) + (1.0 - a*y*y)*cos(s); 730 A[2][1] = y; 731 A[0][2] = -x*cos(s) + y*sin(s); 732 A[1][2] = -x*sin(s) - y*cos(s); 733 A[2][2] = 1.0 - a * (x*x + y*y); 734 */ 702 735 out = rotMatrix_To_Quat(A); 703 736
Note:
See TracChangeset
for help on using the changeset viewer.
