Changeset 2909 for trunk/src


Ignore:
Timestamp:
03/24/14 17:32:50 (11 years ago)
Author:
WataruKawasaki
Message:

New Development: No

JIRA Issue: No

Ready for Test: Yes

Interface Changes: No

What Interface Changed:

Test Programs:

Put in Release Notes:

Module(s): sd

Description: (1) a bug fix in sd.scantable.parse_spw_selection(). modified to get rest frequency value correctly based on molecule ID stored for each spw (the first spectrum having the specified spw in scantable). (2) renamed 'annotation' to 'text' in class or variable names for sd.plotter2.


Location:
trunk/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/Plotter2.cpp

    r2896 r2909  
    33namespace asap {
    44
    5 Plotter2AnnotationInfo::Plotter2AnnotationInfo() {
     5Plotter2TextInfo::Plotter2TextInfo() {
    66    text = "";
    77    posx = 0.0;
     
    1414}
    1515
    16 Plotter2AnnotationInfo::~Plotter2AnnotationInfo() {
     16Plotter2TextInfo::~Plotter2TextInfo() {
    1717}
    1818
     
    103103    vRect.clear();
    104104    vArro.clear();
    105     vAnno.clear();
     105    vText.clear();
    106106
    107107    labelXString = "";
     
    139139    vRect.clear();
    140140    vArro.clear();
    141     vAnno.clear();
     141    vText.clear();
    142142}
    143143
     
    917917    di->lineWidth = width;
    918918    di->lineStyle = style;
    919     //vi->vData[dataid].lineStyle = style;
    920919}
    921920
     
    11331132}
    11341133
    1135 void Plotter2::setAnnotation(const std::string& label, const float posx, const float posy, const float angle, const float fjust, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid, const int inAnnid) {
    1136     int vpid = inVpid;
    1137     if (vpid >= (int)vInfo.size()) {
    1138         exit(0);
    1139     }
    1140     if (vpid < 0) {
    1141         vpid = vInfo.size() - 1;
    1142     }
    1143     if (vpid < 0) {
    1144         Plotter2ViewportInfo vi;
    1145         vInfo.push_back(vi);
    1146         vpid = 0;
    1147     }
    1148 
    1149     Plotter2ViewportInfo* vi = &vInfo[vpid];
    1150 
    1151     int annotationid = inAnnid;
     1134void Plotter2::setText(const std::string& text, const float inPosx, const float inPosy, const float angle, const float fjust, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid, const int inTextid) {
     1135    int vpid = inVpid;
     1136    if (vpid >= (int)vInfo.size()) {
     1137        exit(0);
     1138    }
     1139    if (vpid < 0) {
     1140        vpid = vInfo.size() - 1;
     1141    }
     1142    if (vpid < 0) {
     1143        Plotter2ViewportInfo vi;
     1144        vInfo.push_back(vi);
     1145        vpid = 0;
     1146    }
     1147
     1148    Plotter2ViewportInfo* vi = &vInfo[vpid];
     1149
     1150    int annotationid = inTextid;
    11521151    if (annotationid < 0) {
    1153         Plotter2AnnotationInfo ai;
    1154         vi->vAnno.push_back(ai);
    1155         annotationid = vi->vAnno.size() - 1;
    1156     } else if (annotationid >= (int)vi->vAnno.size()) {
    1157         exit(0);
    1158     }
    1159 
    1160     Plotter2AnnotationInfo* ai = &vi->vAnno[annotationid];
     1152        Plotter2TextInfo ti;
     1153        vi->vText.push_back(ti);
     1154        annotationid = vi->vText.size() - 1;
     1155    } else if (annotationid >= (int)vi->vText.size()) {
     1156        exit(0);
     1157    }
     1158
     1159    Plotter2TextInfo* ti = &vi->vText[annotationid];
    11611160
    11621161    std::string styleString;
     
    11711170    }
    11721171
    1173     ai->text = styleString + label;
    1174     ai->posx = posx;
    1175     ai->posy = posy;
    1176     ai->angle = angle;
    1177     ai->fjust = fjust;
    1178     ai->size = size;
    1179     ai->color = color;
    1180     ai->bgcolor = bgcolor;
     1172    ti->text = styleString + text;
     1173
     1174    float posx = inPosx;
     1175    if (posx < 0.0) {
     1176        posx = 0.5*(vi->vpPosXMin + vi->vpPosXMax);
     1177    }
     1178    ti->posx = posx;
     1179
     1180    float posy = inPosy;
     1181    if (posy < 0.0) {
     1182        posy = 0.5*(vi->vpPosYMin + vi->vpPosYMax);
     1183    }
     1184    ti->posy = posy;
     1185
     1186    ti->angle = angle;
     1187    ti->fjust = fjust;
     1188    ti->size = size;
     1189    ti->color = color;
     1190    ti->bgcolor = bgcolor;
    11811191}
    11821192
     
    14581468            }
    14591469
    1460             // annotations
    1461             for (unsigned int j = 0; j < vi.vAnno.size(); ++j) {
     1470            // arbitrary texts
     1471            for (unsigned int j = 0; j < vi.vText.size(); ++j) {
    14621472                resetAttributes(vi);
    14631473
    1464                 Plotter2AnnotationInfo ai = vi.vAnno[j];
    1465                 cpgsch(ai.size);
    1466                 cpgsci(ai.color);
    1467                 cpgstbg(ai.bgcolor);
    1468                 cpgptxt(ai.posx, ai.posy, ai.angle, ai.fjust, ai.text.c_str());
     1474                Plotter2TextInfo ti = vi.vText[j];
     1475                cpgsch(ti.size);
     1476                cpgsci(ti.color);
     1477                cpgstbg(ti.bgcolor);
     1478                cpgptxt(ti.posx, ti.posy, ti.angle, ti.fjust, ti.text.c_str());
    14691479            }
    14701480
  • trunk/src/Plotter2.h

    r2896 r2909  
    1111namespace asap {
    1212
    13 class Plotter2AnnotationInfo {
    14 public:
    15     Plotter2AnnotationInfo();
    16     ~Plotter2AnnotationInfo();
     13class Plotter2TextInfo {
     14public:
     15    Plotter2TextInfo();
     16    ~Plotter2TextInfo();
    1717
    1818    std::string text;
     
    140140
    141141    //annotations
    142     std::vector<Plotter2AnnotationInfo> vAnno;
     142    std::vector<Plotter2TextInfo> vText;
    143143
    144144    // x-label
     
    239239    void setMaskX(const float xmin, const float xmax, const int color, const int fill, const int width, const float hsep, const int inVpid);
    240240    void setArrow(const float xtail, const float xhead, const float ytail, const float yhead, const int color, const int width, const int lineStyle, const float headSize, const int headFillStyle, const float headAngle, const float headVent, const int inVpid, const int inArrowid);
    241     void setAnnotation(const std::string& label, const float posx, const float posy, const float angle, const float fjust, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid, const int inAnnid);
    242     void setLabelX(const std::string& label, const float posx, const float posy, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid);
    243     void setLabelY(const std::string& label, const float posx, const float posy, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid);
    244     void setTitle(const std::string& label, const float posx, const float posy, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid);
     241    void setText(const std::string& text, const float inPosx, const float inPosy, const float angle, const float fjust, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid, const int inTextid);
     242    void setLabelX(const std::string& label, const float inPosx, const float inPosy, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid);
     243    void setLabelY(const std::string& label, const float inPosx, const float inPosy, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid);
     244    void setTitle(const std::string& label, const float inPosx, const float inPosy, const float size, const std::string& style, const int color, const int bgcolor, const int inVpid);
    245245    void setViewportBackgroundColor(const int bgcolor, const int inVpid);
    246246    void plot();
  • trunk/src/python_Plotter2.cpp

    r2896 r2909  
    8282         .def("set_mask_x",&Plotter2::setMaskX)
    8383         .def("set_arrow",&Plotter2::setArrow)
    84          .def("set_annotation",&Plotter2::setAnnotation)
     84         .def("set_text",&Plotter2::setText)
    8585         .def("set_label_x",&Plotter2::setLabelX)
    8686         .def("set_label_y",&Plotter2::setLabelY)
Note: See TracChangeset for help on using the changeset viewer.