The observer added to the model
>
observer := (long,lat) -> display([rotate(polygonplot3d([[0,0,0],
[0,0,.5]],color=magenta),0,lat*Pi/180,long*Pi/180),
rotate(spacecurve([cos(t),sin(t),0 ,t=0..2*Pi],color=tan) ,0,lat*Pi/180,long*Pi/180)]):
>
curobs := (day,hour,long,lat) -> display([current(day,hour),observer(long,lat)],scaling=constrained,
orientation=[0,81]);
> curobs(23,8,83,45);