[Kstars-devel] XYZ Rotation matrix in 3.5.x

James Bowlin bowlin at mindspring.com
Thu Jun 15 22:24:26 CEST 2006


On Thursday 15 June 2006 14:05, you wrote:
> On Thursday 15 June 2006 12:57, James Bowlin wrote:
> > kstars: Milky Way  : 8 ms
> > kstars: Coord grid : 125 ms
> > kstars: Cons Bound : 76 ms
> > kstars: Cons Lines : 8 ms
> > kstars: Cons Names : 69 ms
> > kstars: Equator     : 59 ms
> > kstars: Ecliptic    : 7 ms
> > kstars: Deep sky    : 59 ms
> > kstars: Custom cat  : 0 ms
> > kstars: Stars       : 173 ms
> > kstars: Solar sys   : 162 ms
> > kstars: Name labels : 0 ms
> > kstars: Horizon     : 54 ms
> >
> Are these with AA on or off?  I see times similar to this with AA drawing, but 
> when I turn it off, they get much much smaller.  I had assumed that the grid 
> and other lines took a long time, only because it's antialiasing the lines.

Those are with AA off, the KStars window is at about 1400 x 1200 and the whole
(half) celestial sphere is in view.  Here are the numbers with AA turned on:

kstars: Milky Way  : 818 ms
kstars: Coord grid : 1229 ms
kstars: Cons Bound : 0 ms
kstars: Cons Lines : 156 ms
kstars: Cons Names : 22 ms
kstars: Equator     : 105 ms
kstars: Ecliptic    : 71 ms
kstars: Deep sky    : 165 ms
kstars: Custom cat  : 0 ms
kstars: Stars       : 3214 ms
kstars: Solar sys   : 683 ms
kstars: Name labels : 0 ms
kstars: Horizon     : 71 ms

The coordinate grid number reflects the change I made below that made
a big improvement in the speed.  The original code was drawing 1440
points per grid line of constant Declination.


Index: skycomponents/coordinategridcomponent.cpp
===================================================================
--- skycomponents/coordinategridcomponent.cpp   (revision 551265)
+++ skycomponents/coordinategridcomponent.cpp   (working copy)
@@ -38,7 +38,7 @@
        emitProgressText( i18n("Loading coordinate grid" ) );

        if ( Parallel ) { //line of constant Declination
-               double dra = 1./60.; //90 points around full circle
+               double dra = 1./5.; //120 points around full circle
                for ( double ra=0.0; ra < 24.0; ra += dra ) {
                        SkyPoint *sp = new SkyPoint( ra, Coordinate );
                        sp->EquatorialToHorizontal( data->lst(), data->geo()->lat() );


-- 
Peace, James


More information about the Kstars-devel mailing list