Viewing contents of file '../idllib/contrib/buie/decparse.pro'
;+
; NAME:
; decparse
; PURPOSE:
; Convert Declination string to radians.
; DESCRIPTION:
;
; CATEGORY:
; Astronomy
; CALLING SEQUENCE:
; dec=decparse(str)
; INPUTS:
; str - String (or array) to parse as a declination
; OPTIONAL INPUT PARAMETERS:
;
; KEYWORD INPUT PARAMETERS:
;
; OUTPUTS:
; return value is scalar or vector value of Dec in radians
; KEYWORD OUTPUT PARAMETERS:
;
; COMMON BLOCKS:
;
; SIDE EFFECTS:
;
; RESTRICTIONS:
;
; PROCEDURE:
;
; MODIFICATION HISTORY:
; 1997/06/04, Written by Marc W. Buie, Lowell Observatory
;-
FUNCTION decparse,str
dec=dblarr(n_elements(str))
FOR i=0,n_elements(str)-1 DO BEGIN
; Make copy of string
wstr = strtrim(str[i],2)
; convert separator tokens to blank
wstr = repchar(wstr,':',' ')
wstr = repchar(wstr,',',' ')
; check for leading sign character, if '-' found, strip and save
decsign=strmid(wstr,0,1)
IF decsign eq '-' THEN BEGIN
wstr=strmid(wstr,1,99)
decsign=-1
ENDIF ELSE BEGIN
decsign=1
ENDELSE
; split into fields by blanks
decf=double(str_sep(wstr,' '))
IF n_elements(decf) eq 1 THEN BEGIN
decf = [decf,0.,0.]
ENDIF ELSE IF n_elements(decf) EQ 2 THEN BEGIN
decf = [decf[*],0.]
ENDIF
dmstorad,decsign,decf[0],decf[1],decf[2],dec0
dec[i] = dec0
ENDFOR
IF n_elements(dec) eq 1 THEN return,dec[0] ELSE return,dec
END