[Kstars-devel] SatLib

Jean-Baptiste BUTET ashashiwa at wanadoo.fr
Wed Jul 19 22:10:59 CEST 2006


Hi all :)

I'm here for 2 days... I have seen Jason mail (doesn't see it was for 
kstars-devel too), written to Patrick Chevalley, written to bernard... to see 
all is here on kstars-devel list ;)))))) 
LOL :)

history : we wrote a C lib to link with Skychart and Kstars. Then Bernar wrote 
to us to say "I have one too... more object... fit well with Kstars"
It was in 2005 :)

Here we are here... A good day today !!

As good i've tried Kstars with a LX200+ serial-USB converter without any pbs 
yesterday.
This week en is a good week.

Sound really good.

-> i'm going in hollidays

Clear skies, 

                          JB BUTET



>It sounds like what you and I have done
> separately so far will fit together well.  I have written a
> SatelliteTrack class that stores the SkyPoints that make up a
> satellite's track in the sky.  I have also written a SatelliteComponent
> class to manage the currently-acive satellite tracks.
>
> I'd be very happy to give you what I have so far and let you adapt it to
> your C++ library (which sounds very nice, BTW), unless you'd prefer
> another way?  Maybe I can just commit what I have so far to SVN...let me
> know.
>
> Jason
>
> Bernard GODARD wrote:
> > Hi,
> >
> > Oops, I was working on that too...
> >
> > I guess, I should have written more often to the list (I just wrote
> > once), but I am quite busy at the moment I am quite slow to code
> > (always changing the interfaces to my libs..).
> >
> > I made a C++ library for SGP4 (and other models) from a GPL C lib.
> > It doesn't have global variables.
> > You can find it here:
> > http://godard.b.free.fr/dotclear/index.php?2006/05/26/4-sgp-cpp-library
> > there's a small documenting test program inside
> >
> > basically, it works like this :
> >
> > _____________
> > Sxpx * sat1;         // the Sxpx class is a pure virtual class that is
> > used to // compute the position and velocity of a satellite //
> > independantly of the model used (SGP, SGP4, SDP4, SGP8
> >                             // or SDP8). The Sgp, Sdp4, Sgp4, Sgp8 and
> > Sdp8 classes all
> >                             // implement the Sxpx interface
> >
> > string fname("sat.tle");  // the name of the file containing the TLE
> > string id1("88888");      // a NORAD ID for a satellite
> >
> > t = new Tle(fname,id1);  // open the file whose name is fname. Look in
> > this file // for the first TLE whose satellite NORAD ID is id1
> > e = new SgpElements(*t); // convert the TLE from string to numerical data
> >
> > sat1 = new Sgp(*e);         // create an SGP model with the TLE PosVel
> >
> > pv=sat1->getPosVel(jd); // get satellite position and velocity at julian
> > day jd // in the TEME reference frame of TLE epoch
> > _______________________
> >
> > I have been thinking that we need a new SkyComponents class with all
> > the "active" satellites and I was working on a TleManager class that
> > can read TLE files, add and remove satellites.
> >
> > Well, I will be happy to help if I can.
> >
> >            Bernard
> >
> > On 7/15/06, Jason Harris <kstars at 30doradus.org> wrote:
> >> Hi Jean-Baptiste,
> >>
> >> I have finally begun work on adding earth satellites to KStars using
> >> your SatLib framework.  If you don't mind, I'd like to give some
> >> feedback on the API to hopefully make a future version of the lib a
> >> little more usable for KStars.
> >>
> >> First, a brief introduction to your library for my fellow KStars devs:
> >>
> >> The two main functions for our purposes are:
> >>
> >>    int SatInit(char *ObsName, double ObsLat, double ObsLong, double
> >> ObsAlt, char *TLE_file);
> >>    int SatFindPosition(char *satname, double jd_start, double step, long
> >> number_pos, SPositionSat *pPositionSat[]);
> >>
> >> SatInit() reads in all of the satellites' orbital data from the TLE_file
> >> and creates the global sat array to hold these data.  It also sets up
> >> the geodetic position of the observing station.
> >>
> >> SatFindPosition() returns an array of SPositionSat structs, which
> >> basically encode the instantaneous Azimuth/Elevation coordinates for the
> >> named satellite, for a series of instants, starting at jd_start.
> >>
> >> So, the usage pattern is to first call SatInit() and then call
> >> SatFindPosition() on each satellite for which you want a track.
> >>
> >> Now, my comments:
> >>
> >> *) Is it possible to decouple the initialization of the satellite
> >> orbital data from the initialization of the geographic position? 
> >> Ideally, I'd like to call SatInit() once when KStars starts up, and then
> >> be able to react when the user changes their geographic position without
> >> reading the orbital data all over again.  Maybe the geographic position
> >> data would make more sense as arguments to SatFindPosition() than
> >> SatInit() ?
> >>
> >> *) Maybe this is just my prejudice as a C++ guy, but it seems kind of
> >> dangerous to have global variables with simple names like "sat".
> >>
> >> *) Can there be a version of SatFindPosition() that returns Equatorial
> >> coordinates rather than Horizontal?  This isn't a big deal; we have
> >> functions to do the conversion, of course.  Also, do you correct for
> >> atmospheric refraction in determining the elevation coordinate?
> >>
> >> *) What are the units for the ObsAlt parameter of SatInit()?  Is it the
> >> height above sea level, or the distance from Earth's center?
> >>
> >> thanks for your efforts!
> >>
> >> Jason
> >>
> >> On Sunday 25 September 2005 06:35, jb wrote:
> >>> Hi all :)
> >>>
> >>> On a previous mail, I've told developping a C library for position
> >>> satellites calculation.
> >>>
> >>> This job will be done on 8-9 October week end ;) (a good code week end)
> >>>
> >>> What's the aim ?
> >>> Having a strong, fast and light C library that gives Ra & Dec of a
> >>> satellites, by given TLE, position and time.
> >>>
> >>> To do what ?
> >>> search what satelites you've seen last night, predict ISS pass on Sun
> >>> or moon...
> >>>
> >>> Why not include this on Kstars code ?
> >>> We want to share it with all other ephemerids program (cartes du
> >>> ciel/Skycharts for example)
> >>>
> >>> A Little problem :
> >>> we aren't really good programmers ;) but we'll be helped by Patrick
> >>> Chevalley to do this.
> >>>
> >>> If you have any asks, hints, clue, code to do this, please send me a
> >>> mail to this adress.
> >>>
> >>> Mail you soon,
> >>>
> >>>                                       Jean-baptiste BUTET
> >>>
> >>>
> >>>
> >>> _______________________________________________
> >>> Kstars-devel mailing list
> >>> Kstars-devel at kde.org
> >>> https://mail.kde.org/mailman/listinfo/kstars-devel
> >>
> >> --
> >> -------------------------------
> >> KStars: http://edu.kde.org/kstars
> >> Forums: http://kstars.30doradus.org
> >> _______________________________________________
> >> Kstars-devel mailing list
> >> Kstars-devel at kde.org
> >> https://mail.kde.org/mailman/listinfo/kstars-devel
> >
> > _______________________________________________
> > Kstars-devel mailing list
> > Kstars-devel at kde.org
> > https://mail.kde.org/mailman/listinfo/kstars-devel
>
> _______________________________________________
> Kstars-devel mailing list
> Kstars-devel at kde.org
> https://mail.kde.org/mailman/listinfo/kstars-devel

-- 
--
Un linux pour l'astronomie
http://www.lin4astro.org


More information about the Kstars-devel mailing list