Changeset 2350 in Sophya for trunk/SophyaPI/PIext/pintup3d.cc


Ignore:
Timestamp:
Mar 18, 2003, 3:23:53 PM (23 years ago)
Author:
ansari
Message:

Ajout nouvelles options pour trace d'axes ds le Help de baseexecut.cc
et ajout d'une nouvelle option (connectpoints) ds PINTupleDrawer (et 3D)

Reza 18 Mars 2003

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaPI/PIext/pintup3d.cc

    r2165 r2350  
    207207  yp = mNT->GetCell(i, yK);
    208208  zp = mNT->GetCell(i, zK);
    209   if ( (i > 0) &&
    210        (GetGraphicAtt().GetLineAtt() != PI_NotDefLineAtt) )   // On relie les points ...
     209  if ( (i > 0) && connectPts ) // On relie les points ...
    211210    g3->DrawLine3D(xl, yl, zl, xp, yp, zp);
    212211  nok++;
     
    241240}
    242241
     242/*  La methode DecodeOptionString permet de decoder un ensemble d'options
     243    et de parametre d'affichage specifie sous forme d'un vecteur de string.
     244    Si rmdecopt == true, les options decodees sont supprimees du vecteur
     245    de string fourni en entree - ce qui permet l'enchainement eventuel
     246    de plusieurs decodages de string.
     247    Les options peuvent etre sous forme de flag : "stat" "nostat"
     248    ou plus complexes, par exemple "dynamic=-3,3"
     249    Rc: La methode renvoie le nombre d'options decodees
     250*/
     251
     252/* --Methode-- */
     253int PINTuple3D::DecodeOptionString(vector<string> & opt, bool rmdecopt)
     254{
     255  int optsz1 = opt.size();
     256  if(optsz1<1)  return(0); 
     257  // On appelle d'abord le decodage de la classe PIDrawer de laquelle
     258  // on herite. (Pas obligatoire) on decode donc ici les attributs de
     259  // couleur, fontes ...
     260  int ndec1 = PIDrawer::DecodeOptionString(opt, rmdecopt);
     261  if(optsz1-ndec1<1) return(ndec1);  // si tout a ete decode
     262
     263  vector<string> udopt;  // On gardera ici les options non decodees
     264  unsigned int k = 0;
     265  int ndec = opt.size();
     266  for( k=0; k<opt.size(); k++ ) {
     267    string opts = opt[k];
     268    //    if(opts=="sta" || opts=="stat" || opts=="stats") SetStats(true);
     269    //    else if(  opts=="nsta"   || opts=="nstat"
     270    //           || opts=="nostat" || opts=="nostats") SetStats(false);
     271    if (opts == "connectpoints") ConnectPoints(true);
     272    else if (opts == "noconnectpoints") ConnectPoints(false);
     273    else {
     274      // Si option non decode
     275      ndec--;
     276      // S'il faut supprimer les options decodees
     277      if (rmdecopt)  udopt.push_back(opts);
     278    }
     279  } 
     280  // S'il faut supprimer les options decodees, on remplace l'argument opt
     281  // par le vecteur des options non decodees.
     282  if (rmdecopt)  opt = udopt;
     283  return(ndec+ndec1); 
     284}
     285
     286/* La methode GetOptionsHelpInfo(string& info) renvoie une chaine
     287   avec la description des options comprises par ce drawer 
     288   Note: Il est preferable de ne pas initialiser la chaine
     289   string info au depart, afin de permettre de mettre bout a
     290   bout les aides de differents Drawer */
     291
     292/* --Methode-- */
     293void PINTuple3D::GetOptionsHelpInfo(string& info)
     294{
     295// On recupere d'abord la chaine info de la classe de base
     296PIDrawer::GetOptionsHelpInfo(info);
     297info += " ---- PINTuple3D options help info : \n" ;
     298info += "  connectpoints: The points are connected by a line \n";
     299info += "  noconnectpoints (this is the default) \n";
     300info += "  and usual color/line/marker/... attribute decoding  \n";
     301return;
     302}
     303
Note: See TracChangeset for help on using the changeset viewer.