aboutsummaryrefslogtreecommitdiff
path: root/vo/votools/gasplib/pixtoeq.x
blob: 123403f08e42bbd21c08597aa946563694dc400a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
include <math.h>
define	SZ_CDMTX	4

# PHYSTOPIX -- procedure to obtain pixel coordinates from the equatorial
# ones, giving the center position and scale of the frame.

procedure pixtoeq (plt_ra_cen, plt_dec_cen, plt_x_cen, plt_y_cen,
	   	     cdmtx, x, y, ra, dec)

double	plt_ra_cen		# Plate centre (radians)
double	plt_dec_cen		#      "          "
double	plt_x_cen		# Plate center in x (pixels)
double	plt_y_cen		# Plate center in y (pixels)
double	cdmtx[SZ_CDMTX]		# CD Matrix (cd11, cd12, cd21, cd22) 
double	ra			# Objects RA position (radians)
double	dec			# Objects DEC position (radians)      
double	x			# Position from centre (pixels)
double	y			#      "

double	xi			# Standard coordinate (degrees)
double	eta			#		"
double	cd11, cd12, cd21, cd22
double	xi_arcs, eta_arcs	# Standard coord. in arc seconds.

begin

	cd11 = cdmtx[1]
	cd12 = cdmtx[2]
	cd21 = cdmtx[3]
	cd22 = cdmtx[4]

	xi  = cd11*(x-plt_x_cen) + cd12*(y-plt_y_cen)
	eta = cd21*(x-plt_x_cen) + cd22*(y-plt_y_cen)
	xi_arcs = xi*3600.0			# to arcs
	eta_arcs = eta*3600.0
	call trsteq (plt_ra_cen, plt_dec_cen, xi_arcs, eta_arcs, ra, dec)
end