GNU Gama LocalNetworkAdjustmentResults: Porovnání verzí

Z GeoWikiCZ
(veřejné členy třídy LocalNetworkAdjustmentResults)
 
m (→‎Veřejné členy: + kategorie GNU)
Řádek 136: Řádek 136:
     ObservationList  obslist;
     ObservationList  obslist;
</pre>
</pre>
[[Kategorie:GNU]]

Verze z 28. 6. 2008, 13:30

Třída GNU_Gama::LocalNetwork AdujstmentResults</cod> projektu GNU Gama je určena pro pro čtení výsledků vyrovnání programu gama-local ve formátu XML.

Hloavičkový soubor

#include <gnu_gama/xml/localnetwork_adjustment_results.h>

Veřejné členy

LocalNetwork AdujstmentResults()
implicitní konstruktor
void read_xml(std
:istream&) throw(Exception::parser): metoda read() načítá ze vstupního prooudu výsledky vyrovnání programu gama-local ce formátu XML a uloží je do veřejných datových členů třídy LocalNetwork AdujstmentResults
bool gons
typ úhlové míry (400/360)
network_general_parameters
obecné parametry výsledků vyrovnání
   struct
   {
     std::string gama_local_version;
     std::string gama_local_algorithm;
     std::string gama_local_compiler;
     std::string epoch;
     std::string axes_xy;
     std::string angles;
   
   } network_general_parameters;
coordinates_summary
statistika souřadnic bodů
   struct count
   {
     int xyz, xy, z;
   };
   
   struct
   {
     count adjusted;
     count constrained;
     count fixed;
   
   } coordinates_summary;
observations_summary
statistika měření
   struct
   {
     int distances;
     int directions;
     int angles;
     int xyz_coords;
     int h_diffs;
     int z_angles;
     int s_dists;
     int vectors;
   
   } observations_summary;
fixed_points, approximate_points, adjusted_points
seznamy souřadnic pevných, přibližných a vyrovnaných souřadnic bodů
   struct Point
   {
     std::string id;
     double x, y, z;
     
     bool   hxy, hz;             // point has   x, y, z
     bool   cxy, cz;             // constrained x, y, z
     int    indx, indy, indz;    // adjustment indexes
     
     void clear()
     {
       x=y=z=0;
       hxy=hz=cxy=cz=false;
       indx=indy=indz=0;
     }
   };
   
   typedef std::vector<Point> PointList;
   PointList  fixed_points, approximate_points, adjusted_points;
orientations
vyrovnané oriantační posuny
   struct Orientation
   {
     std::string id;
     double      approx;
     double      adj;
     int         index;          // adjustment index
   };
   
   typedef std::vector<Orientation> OrientationList;
   OrientationList orientations;
cov
kovarianční matice vyrovnaných neznámých parametrů (souřadnice a orientační paramatery)
original_index
původní indexy neznámých parametrů ve vyrovnání
   std::vector<int> original_index;
obslist
seznam vyrovnaných měření
    struct Observation
    {
      std::string xml_tag;
      std::string from;
      std::string to;
      std::string left;         // used in angle observation
      std::string right;        //  ....   angle   ....

      double obs;               // observed value
      double adj;               // adjusted
      double stdev;             // standard deviation of adj. value
      double qrr;               // weight coefficient of the residual
      double f;

      double      std_residual; // standardized residual
      std::string err_obs;      // estimate of observed value error
      std::string err_adj;      //  ....       adjusted  ....

      void clear()
      {
        obs = adj = stdev = qrr = f = std_residual = 0;
        xml_tag     .clear();
        from        .clear();
        to          .clear();
        left        .clear();
        right       .clear();
        err_obs     .clear();
        err_adj     .clear();
      }

      double residual() const throw();
    };

    typedef std::vector<Observation> ObservationList;
    ObservationList  obslist;