Re: circles on the sky [message #65934 is a reply to message #65879] |
Tue, 31 March 2009 15:27   |
Christopher Thom
Messages: 66 Registered: October 2006
|
Member |
|
|
Quoth Paolo:
> Christopher Thom wrote:
>> Quoth Kenneth P. Bowman:
>>
>>> In article <alpine.OSX.1.10.0903311335490.8491@kanangra.uchicago.edu>,
>>> Christopher Thom <cthom@oddjob.uchicago.edu> wrote:
>>>
>>>> Given a co-ordinate position (ra/dec or lat/long), a direction (e.g an
>>>> angle east of north, for instance), and a great circle angular distance,
>>>> how do I compute the coordinate of the final position?
>>>
>>> LL_ARC_DISTANCE.
>>>
>>> What! That wasn't obvious? :-)
>>>
>>> (This function should be referenced in the manual page for MAP_2POINTS,
>>> and vice versa.)
>>
>> AHA!!! Missed this one. Now, by just passing all azimuths 0 -> 360deg, i
>> have the coordinates of the "circles" i'm trying to draw (where, by
>> "circle", i mean "the set of all points that are r distance from my
>> lon/lat").
>
> Is that significantly different than a circle with radius r drawn
> in the projected map, if r is about 0.5 degree as yous said
> in the original post?
Well...I think so. Map projections continually confuse me, and getting
them right in IDL confuses me even more! what I can say for sure is this:
If i just calculate a cartesian circle, using the following code:
theta = findgen(361)/!DRADEG
xx = x0 + r*cos(theta)
yy = y0 + r*sin(theta)
plot, x0, y0
oplot, xx, yy
I get a very circular object in my plots, both on an equirectangular plot
of points, as well as a projected map, made using map_set.
BUT...if i now calculate the great circle distance to each of the 361
points in my cartesian circle from the centre of the circle, the distance
is NOT constant, as I expect. Rather, it is sinusoidal, approaching r at
the maximum of the curve.
OTOH, using ll_arc_distance gives me a rather egg-like "circle", but at
least the distance from the centre to all the points on my "circle" is
constant (i.e. r), as expected.
I must have spent 2 or 3 days digging through my code, convinced that I
must have screwed up the object locations, rather than just the "drawing a
circle" part.
cheers
chris
|
|
|