[Kstars-devel] branches/work/kdeedu_kstars_htm/kstars/kstars
James Bowlin
bowlin at mindspring.com
Fri Aug 3 04:11:45 CEST 2007
On Thu August 2 2007 6:42 pm, Jason Harris wrote:
> Excellent. Can the re-indexing be performed in the background while
> the UI remains responsive?
I'll think about it. My gut feeling is to put this off until 4.2
or 4.3. I think a little splash screen might be appropriate explaining
what is going on. It would be easy for me to update it with the
percentage completed. I don't think a 4 second wait to get a very
fast UI is terrible. I think I can do just what you want but I want
to wait until we know what I've done so far is rock steady first.
If you think this is important, I can start working on it next if
you want.
> Regarding the constellation boundaries: believe it or not, we
> actually should not precess them. They were defined by the IAU in
> the 1930s to divide the sky into 88 regions, but the vertices of
> these lines are fixed RA/Dec values. They were actually drawn up
> using epoch 1875.0, so there are already significant offsets (for
> example, the southern border of Canis Minor is just below the
> equator, and is not quite parallel to it).
Great! One less ugly thing to do.
> > I also need to re-index the constellation lines every 150 years
> > just like I do for the stars because stars form the vertices of the
> > constellation lines. To do this the right way I will have to
> > change the data members that hold the index in LineListIndex into
> > pointers (instead of simply values). I'll probably do this
> > tomorrow.
>
> It would probably make more sense to modify
> ConstellationLineComponent so that it stores a QList of pointers to
> the star objects themselves, rather than creating its own copies of
> these points. I can try to take care of this if you agree it's a
> good idea.
This is what baffles me. I don't make a copy, I put a pointer to the
star itself into the ConstellationLines LineLists:
SkyObject *star = data->skyComposite()->findStarByGenetiveName( name );
if ( star && lineList ) {
lineList->points()->append( star );
}
I rewrote FindStarByGenetiveName to use a hash to make the lookup fast
so I'm certain there is no copying going on. I had originally used
a copy but that quickly broke badly as time advanced. This is a
different problem because the stars just jump a little and then the
lines eventually catch up. Is it possible that a StarObject will
occasionally return different (ra, dec) values depending on whether
it is cast as a SkyPoint or a StarObject? This seems unlikely.
But I still need to re-index the constellation lines just like the
stars because the stars are at new locations in the index due to
proper motion.
--
Peace, James
More information about the Kstars-devel
mailing list