Changeset 558 in Sophya


Ignore:
Timestamp:
Nov 9, 1999, 7:24:44 PM (26 years ago)
Author:
ercodmgr
Message:

Center Image et Cur-LastWdg - Reza 9/9/99

Location:
trunk/SophyaPI/PIext
Files:
4 edited

Legend:

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

    r553 r558  
    8383  mImgApp->SetInsetLimits(xmin, xmax, ymin, ymax);
    8484  }
     85else if (kw == "setimgcenter") {
     86  if (tokens.size() < 2) { cout << "Usage: setimgcenter xc yc" << endl;  return(0); }
     87  int xc = atoi(tokens[0].c_str());
     88  int yc = atoi(tokens[1].c_str());
     89  mImgApp->SetImageCenterPosition(xc, yc);
     90  }
    8591else if (kw == "addtext") {
    8692  if (tokens.size() < 4) { cout << "Usage: addtext x y colfontatt txt" << endl;  return(0); }
     
    689695usage += ">> ZoomFactors: defzoom zoomx1 zoomx2 zoomx3 zoomx4 zoomx5 \n";
    690696usage += "                               zoom/2 zoom/3 zoom/4 zoom/5 \n";
     697usage += ">> Image centering: centerimg -> Position the image in widget \n";
    691698usage += ">> Axes:  stdaxes=defaxes=boxaxes  simpleaxes boxaxesgrid \n";
    692699usage += "          fineaxes  grid=fineaxesgrid \n";
     
    695702usage += ">> stat/nostat or stats/nostats -> Toggle statistic display flag \n";
    696703usage += ">> DisplayWindow: next same win stack inset \n";
    697 usage += "   Related commands: setxylimits setinsetlimits"; 
     704usage += "   Related commands: setxylimits setinsetlimits setimgcenter"; 
    698705mpiac->RegisterCommand(kw, usage, this, "Graphics");
    699706
    700707kw = "setxylimits";
    701708usage = "Define 2-D plot limits \n Usage: setxylimits xmin xmax ymin ymax";
    702 usage += "\n  Related commands: graphicatt"; 
     709usage += "\n  Related commands: graphicatt /xylimits"; 
    703710mpiac->RegisterCommand(kw, usage, this, "Graphics");
    704711
     
    708715usage += " graphic object size (0. .. 1.) Xmax at right, YMax top. ";
    709716usage += " Usage: setinsetlimits xmin xmax ymin ymax";
    710 usage += "\n  Related commands: graphicatt"; 
     717usage += "\n  Related commands: graphicatt /inset"; 
     718mpiac->RegisterCommand(kw, usage, this, "Graphics");
     719
     720kw = "setimgcenter";
     721usage = "Define image center postion \n Usage: setimgcenter xc yc";
     722usage += "\n  Related commands: graphicatt /centerimg"; 
    711723mpiac->RegisterCommand(kw, usage, this, "Graphics");
    712724
  • trunk/SophyaPI/PIext/pistdimgapp.cc

    r553 r558  
    8585m[3]->AppendItem("Window 3x1", 10431);
    8686m[3]->AppendItem("Window 3x3", 10433);
     87m[3]->AppendItem("Cur->LastWdg", 10441);
    8788
    8889m[4] = new PIMenu(Menubar(),"PostScript");
     
    202203mAxesFlags = kBoxAxes | kExtTicks | kLabels;
    203204SetXYLimits(-1, 1., -1., 1.);
     205mFXYlim = false;
    204206SetInsetLimits(0.4, 0.6, 0.4, 0.6);
     207SetImageCenterPosition(-1,-1);
     208mFImgCenter = false;
    205209maXlog = maYlog = false;
    206210SaveGraphicAtt();
     
    215219{
    216220int i;
     221
     222// Destrucion de tous les objets de NameObjMgr
     223string patt = "/*/*";
     224mObjMgr->DelObjects(patt, true);
    217225
    218226delete mc;
     
    430438pii->SetBinding(PIBK_elastic, PIBK_elastic, PIBK_elastic, PIBK_elastic);
    431439pii->SetZoomWin(zoom, false);
     440// Centrage eventuel du pave
     441if (mFImgCenter && (mXImgCenter > 0) && (mYImgCenter > 0))
     442   pii->SetPave(mXImgCenter, mYImgCenter, false, true);
    432443pii->SetGloVWin(gimv, false);
    433444pii->SetCMapWin(cmapv, false);
     
    11151126    CreateGraphWin(3,3);
    11161127    break;
    1117 
     1128  case 10441 :
     1129    if (mCurWdg)  {
     1130      mLastWdg = mCurWdg;
     1131      cout << " Using current widget as last-widget (display same) " << endl;
     1132      }
     1133    else  cout << " No current widget - select widget with mouse " << endl;
     1134    break;
    11181135  default:
    11191136    cerr << "PIStdImgApp::MBProcess4() BUG?? Msg= " <<  msg << endl;   
     
    13251342  mYmin = ymin;  mYmax= ymax;
    13261343}
    1327 
    13281344/* --Methode-- */
    13291345void PIStdImgApp::SetInsetLimits(double xmin, double xmax, double ymin, double ymax)
     
    13311347  mIXmin = xmin;  mIXmax= xmax;
    13321348  mIYmin = ymin;  mIYmax= ymax;
     1349}
     1350/* --Methode-- */
     1351void PIStdImgApp::SetImageCenterPosition(int x, int y)
     1352{
     1353  mXImgCenter = x;  mYImgCenter = y;
    13331354}
    13341355
     
    13511372  mSIYmin = mIYmin;  mSIYmax = mIYmax;
    13521373  mSFXYlim = mFXYlim;
     1374  mSXImgCenter = mXImgCenter;
     1375  mSYImgCenter = mYImgCenter;
     1376  mSFImgCenter = mFImgCenter;
    13531377  mSaXlog = maXlog;
    13541378  mSaYlog = maYlog;
     
    13731397  mIYmin = mSIYmin;  mIYmax = mSIYmax;
    13741398  mFXYlim = mSFXYlim;
     1399  mXImgCenter = mSXImgCenter;
     1400  mYImgCenter = mSYImgCenter;
     1401  mFImgCenter = mSFImgCenter;
    13751402  maXlog = mSaXlog;
    13761403  maYlog = mSaYlog;
  • trunk/SophyaPI/PIext/pistdimgapp.h

    r548 r558  
    102102     void  SetXYLimits(double xmin=-1., double xmax=1., double ymin=-1., double ymax=1.);
    103103     void  SetInsetLimits(double xmin=0.4, double xmax=0.6, double ymin=0.4, double ymax=0.6);
     104     void  SetImageCenterPosition(int x=-1, int y=-1);
    104105     inline void  UseXYLimits(bool fg=false) {  mFXYlim=fg; }
     106     inline void  UseImageCenter(bool fg=false) { mFImgCenter=fg; }
    105107     inline void  SetXLogScale(bool logx=false) { maXlog = logx; }
    106108     inline void  SetYLogScale(bool logy=false) { maYlog = logy; }
     
    174176    double       mIXmin, mIXmax, mIYmin, mIYmax;
    175177    double       mSIXmin, mSIXmax, mSIYmin, mSIYmax;
     178    int          mXImgCenter, mYImgCenter;
     179    int          mSXImgCenter, mSYImgCenter;
    176180    bool         mFXYlim, mSFXYlim;
     181    bool         mFImgCenter, mSFImgCenter;
    177182    bool         maXlog, mSaXlog;
    178183    bool         maYlog, mSaYlog;
  • trunk/SophyaPI/PIext/servnobjm.cc

    r548 r558  
    12771277  mImgapp->SetXYLimits();
    12781278  mImgapp->UseXYLimits();
     1279  mImgapp->SetImageCenterPosition();
     1280  mImgapp->UseImageCenter();
    12791281  mImgapp->SetXLogScale();
    12801282  mImgapp->SetYLogScale();
     
    13211323  // Utilisation limites X-Y
    13221324  if ( grt[k] == "xylimits" ) { mImgapp->UseXYLimits(true);  fgsrgr = true;  continue; }
     1325  if ( grt[k] == "centerimg" ) { mImgapp->UseImageCenter(true);  fgsrgr = true;  continue; }
    13231326  // Echelle logarithmique d'axe
    13241327  if ( grt[k] == "logx" )  { mImgapp->SetXLogScale(true); fgsrgr = true;  continue; }
Note: See TracChangeset for help on using the changeset viewer.