Changeset 2116 in Sophya for trunk/SophyaPI


Ignore:
Timestamp:
Jul 18, 2002, 4:54:08 PM (23 years ago)
Author:
cmv
Message:

mise au points labels et ticks pour logscale suite... cmv 18/7/2002

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaPI/PI/piaxes.cc

    r2115 r2116  
    411411   if(xmax/xmin<5.) {
    412412     //cout<<"Choix de BestTicks car xmax/xmin="<<xmax/xmin<<" <5"<<endl;
     413     BestTicks(xmin,xmax,nticks,majticks,minticks);
    413414     return;
    414415   }
     
    491492/* --Methode-Static-- */
    492493int PIAxes::BonFormatAxes(double xmin,double xmax,double xstep
    493                            ,string& format,int typf,int add_digit)
     494                         ,string& format,int typf,int add_digit)
    494495// *** Calcul format optimal pour ecrire les labels numeriques des axes:
    495496// ---- Input
     
    501502//        1 : format %-nn.mme
    502503//        2 : format %-nn.mmf pour imprimer x/10^npuiss
    503 //            tel que x/10^npuiss soit entre 0 et 10
     504//            tel que x/10^npuiss soit entre [0,10]
     505//        3 : format %-nn.mmf
    504506// ---- Output
    505507// . format : le format d'impression
    506508// ---- Return:
    507 // Si typ=0 ou 1
     509// Si typ=0 ou 1 ou 3
    508510//   "ndig" : nombre de digits necessaires pour distinguer
    509511//            les valeurs xmin+k*dx (<=xmax)
     
    527529 int npuiss = 0;
    528530 if(typf==2) {
    529    npuiss = il10amax;
     531   npuiss = il10amax-1;  // nombre entre [0,10]
     532   //npuiss = il10amax;  // nombre entre [0,1]
    530533   if(npuiss<-300 || npuiss>300) {
    531534     ftype='e'; npuiss=0;
     
    538541 } else if(typf==1) {
    539542   ftype='e';
     543 } else if(typf==3) {
     544   ftype='f';
    540545 } else {
    541546   ftype='e';
     
    603608 if(xticks.size()<=1) return 0;
    604609
     610 // On decide du format
    605611 xstep=xticks[1]-xticks[0];
    606612 int npuiss = BonFormatAxes(xticks[0],xticks[xticks.size()-1],xstep,format,2,1);
    607  if(npuiss>=-2 && npuiss<=3) {
     613 if(npuiss>=-2 && npuiss<=2) {
    608614   npuiss = 0;
    609    BonFormatAxes(xticks[0],xticks[xticks.size()-1],xstep,format,0,1);
    610  }
     615   BonFormatAxes(xticks[0],xticks[xticks.size()-1],xstep,format,3,1);
     616 }
     617
    611618 return npuiss;
    612619}
     
    614621void PIAxes::Arrange_Label(char *label)
    615622// --- Mise en forme optimale du label numerique
    616 // Enleve les blancs et les zeros inutiles a la fin d'un label
     623// Enleve les blancs, les zeros, le point et les e00
     624//        inutiles a la fin d'un label
    617625{
    618626 size_t lenl=strlen(label);
Note: See TracChangeset for help on using the changeset viewer.