- return fdm->get_aux18();
-}
-#endif
-// $$$ end - added, VS Renganathan 13 Oct 2K
-
-
-#ifdef NOT_USED
-/****************************************************************************/
-/* Convert degrees to dd mm'ss.s" (DMS-Format) */
-/****************************************************************************/
-char *dmshh_format(double degrees)
-{
- static char buf[16];
- int deg_part;
- int min_part;
- double sec_part;
-
- if (degrees < 0)
- degrees = -degrees;
-
- deg_part = degrees;
- min_part = 60.0 * (degrees - deg_part);
- sec_part = 3600.0 * (degrees - deg_part - min_part / 60.0);
-
- /* Round off hundredths */
- if (sec_part + 0.005 >= 60.0)
- sec_part -= 60.0, min_part += 1;
- if (min_part >= 60)
- min_part -= 60, deg_part += 1;
-
- sprintf(buf,"%02d*%02d %05.2f",deg_part,min_part,sec_part);
-
- return buf;
-}
-#endif // 0
-
-
-/************************************************************************
- Convert degrees to dd mm.mmm' (DMM-Format)
- Description: Converts using a round-off factor tailored to the required
- precision of the minutes field (three decimal places). Round-off
- prevents function from returning a minutes value of 60.
-
- Input arguments: Coordinate value in decimal degrees
-
-************************************************************************/
-static char *toDM(float dd)
-{
- static char dm[16];
- double tempdd;
- double mn;
- double sign = 1;
- int deg;
-
- if (dd < 0) {
- sign = -1;
- }
- /* round for minutes expressed to three decimal places */
- tempdd = fabs(dd) + (5.0E-4 / 60.0);
- deg = (int)tempdd;
- mn = fabs( (tempdd - (double)(deg)) * 60.0 - 4.999E-4 );
- deg *= (int)sign;
- sprintf(dm, "%d*%06.3f", deg, mn);
- return dm;
-}
-
-
-/************************************************************************
- Convert degrees to dd mm'ss.s'' (DMS-Format)
- Description: Converts using a round-off factor tailored to the required
- precision of the seconds field (one decimal place). Round-off
- prevents function from returning a seconds value of 60.
-
- Input arguments: Coordinate value in decimal degrees
-
-************************************************************************/
-static char *toDMS(float dd)
-{
- static char dms[16];
- double tempdd, tempmin;
- int deg;
- int mn;
- double sec;
- double sign = 1;
-
- if(dd < 0) {
- sign = -1;
- }
- /* round up for seconds expressed to one decimal place */
- tempdd = fabs(dd) + (0.05 / 3600.0);
- deg = (int)tempdd;
- tempmin = (tempdd - (double)(deg)) * 60.0;
- mn = (int)tempmin;
- sec = fabs( (tempmin - (double)(mn)) * 60.0 - 0.049 );
- deg *= (int)sign;
- sprintf(dms, "%d*%02d %04.1f", deg, mn, sec);
- return dms;
-}
-
-
-// Have to set the LatLon display type
-//static char *(*fgLatLonFormat)(float) = toDM;
-static char *(*fgLatLonFormat)(float);
-
-char *coord_format_lat(float latitude)
-{
- static char buf[16];
-
- sprintf(buf,"%s%c",
-// dmshh_format(latitude),
-// toDMS(latitude),
-// toDM(latitude),
- fgLatLonFormat(latitude),
- latitude > 0 ? 'N' : 'S');
- return buf;
-}
-
-char *coord_format_lon(float longitude)
-{
- static char buf[80];
-
- sprintf(buf,"%s%c",
-// dmshh_format(longitude),
-// toDMS(longitude),
-// toDM(longitude),
- fgLatLonFormat(longitude),
- longitude > 0 ? 'E' : 'W');
- return buf;
-}
-
-void fgLatLonFormatToggle( puObject *)
-{
- static int toggle = 0;
-
- if ( toggle )
- fgLatLonFormat = toDM;
- else
- fgLatLonFormat = toDMS;
-
- toggle = ~toggle;
-}
-
-#ifdef NOT_USED
-char *coord_format_latlon(double latitude, double longitude)
-{
- static char buf[1024];
-
- sprintf(buf,"%s%c %s%c",
- dmshh_format(latitude),
- latitude > 0 ? 'N' : 'S',
- dmshh_format(longitude),
- longitude > 0 ? 'E' : 'W');
- return buf;