Changeset 3434 in Sophya for trunk/SophyaPI/ProgPI/sopiamodule.cc


Ignore:
Timestamp:
Dec 11, 2007, 3:51:49 PM (18 years ago)
Author:
ansari
Message:

Adaptation commande mollgrid aux nouvelles limites 0..360 degres, -90-90 degres , Reza 11/12/2007

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaPI/ProgPI/sopiamodule.cc

    r3430 r3434  
    342342hgrp = "SophyaCmd";
    343343
    344 kw = "mollgridsph";
    345 usage = "Creates a spherical coordinate grid in Molleweide projection ";
    346 usage += "\n Usage: mollgridsph NameSphericalMap [Nb_Parallel Nb_Meridien graphic_att] ";
    347 mpiac->RegisterCommand(kw, usage, this, hgrp);
    348 
    349344kw = "mollgrid";
    350345usage = "Creates a spherical coordinate grid in Molleweide projection ";
    351 usage += "\n Usage: mollgrid [Nb_Parallel Nb_Meridien graphic_att] ";
     346usage += "\n Usage: mollgrid [Nb_Parallel] [Nb_Meridien] [graphic_att] ";
    352347mpiac->RegisterCommand(kw, usage, this, hgrp);
    353348
     
    419414  Set_Project_Mol_DefVal(atof(tokens[0].c_str()) );
    420415}
    421 
    422 else if ( (kw == "mollgridsph") || (kw == "mollgrid") ) {
     416// Grille de coordonnees en projection molleweide
     417else if (kw == "mollgrid") {
    423418   NamedObjMgr omg;
    424419   MollweideGridDrawer * mollgrid = NULL;
    425420   string dopt="";
    426    if (kw == "mollgridsph") {
    427      if (tokens.size() < 1) {
    428        cout << "Usage: mollgridsph NameSphericalMap [Nb_Parallel Nb_Meridien graphic_att]"
    429             << endl;
    430        return(0);
    431      }
    432      int np = 5;
    433      int nm = 5;
    434      dopt = "same,thinline";
    435      if (tokens.size() > 1)  np = atoi(tokens[1].c_str());
    436      if (tokens.size() > 2)  nm = atoi(tokens[2].c_str());
    437      if (tokens.size() > 3)  dopt = tokens[3];
    438      NObjMgrAdapter* obja = omg.GetObjAdapter(tokens[0]);
    439      if (obja == NULL) {
    440        cout << "mollgridsph Error , No object with name " << tokens[0] << endl;
    441        return(0);
    442      }
    443      P2DArrayAdapter* arr = obja->Get2DArray(dopt);
    444      if (arr == NULL) {
    445        cout << "mollgridsph Error , object has non 2DArrayAdapter - Not a spherical map "
    446             << endl;
    447        return(0);       
    448      }
    449      int nx = arr->XSize();
    450      int ny = arr->YSize();
    451      delete arr;
    452      mollgrid = new MollweideGridDrawer(np, nm, nx, ny);
    453      cout << " mollgridsph: Creating MollweideGridDrawer() for object" << tokens[0] << endl;
    454    }
    455    else if (kw == "mollgrid") {
    456      int np = 5;
    457      int nm = 5;
    458      if (tokens.size() > 0)  np = atoi(tokens[0].c_str());
    459      if (tokens.size() > 1)  nm = atoi(tokens[1].c_str());
    460      if (tokens.size() > 2)  dopt = tokens[2];
    461      mollgrid = new MollweideGridDrawer(np, nm);
    462      cout << " mollgrid: Creating MollweideGridDrawer(" << np << "," << nm << ")" << endl;
    463    }
    464 
     421   int np = 5;
     422   int nm = 5;
     423   if (tokens.size() > 0)  np = atoi(tokens[0].c_str());
     424   if (tokens.size() > 1)  nm = atoi(tokens[1].c_str());
     425   if (tokens.size() > 2)  dopt = tokens[2];
     426   mollgrid = new MollweideGridDrawer(np, nm, 360., 180., 180., 0.);
     427   cout << " mollgrid: Creating MollweideGridDrawer(" << np << "," << nm << ")" << endl;
     428   
    465429   if (mollgrid == NULL) {
    466430     cout << "mollgridsph Error/BUG !!! mollgrid = NULL "  << endl;
     
    473437   string name = "mollgrid";
    474438   wrsid = omg.GetImgApp()->DispScDrawer(mollgrid, name, dopt);
    475  }
     439}
     440// Trace d'ellipse d'erreur
    476441else if (kw == "errorellipse") {
    477442  if ((tokens.size()<5) || ((tokens.size()>0)&&(tokens[0]=="-fill")&&(tokens.size()<6))) {
Note: See TracChangeset for help on using the changeset viewer.