| 1007 | |
| 1008 | return; |
| 1009 | } |
| 1010 | |
| 1011 | void drawLegend_contour( std::stringstream &Content, const vector<double> &isoline_val, |
| 1012 | const int prec, const KNM<double> &palette, |
| 1013 | const double cmin, const double cmax, |
| 1014 | const bool monochrome, const bool logscale, |
| 1015 | const double sizex, const double textfontsize, |
| 1016 | const double scale, const double y1, const double y0, |
| 1017 | const double marginl, const double marginb ) |
| 1018 | { |
| 1019 | std::stringstream &st = Content; |
| 1020 | |
| 1021 | st << "q\n"; |
| 1022 | st << "1 w\n"; // setlinewidth |
| 1023 | st << "1 0 0 1 " << PLOTPDFVAR::PADDING+marginl << " " << PLOTPDFVAR::PADDING+marginb << " cm\n"; |
| 1024 | |
| 1025 | for(size_t m = 0; m < isoline_val.size(); m++){ |
| 1026 | |
| 1027 | const double &f = isoline_val[m]; |
| 1028 | |
| 1029 | setrgbcolor(st, f, palette, cmin, cmax, monochrome, logscale); |
| 1030 | st << "rg\n"; |
| 1031 | |
| 1032 | st << "BT /F1 " << textfontsize << " Tf " |
| 1033 | << "1 0 0 1 " << sizex-PLOTPDFVAR::PADDING << " " << (m+1)*(scale*(y1-y0)-textfontsize)/(isoline_val.size()+1) << " Tm " |
| 1034 | << "(" << ((f >= 0)? "\\ ": ""); |
| 1035 | |
| 1036 | if( (fabs(f) > 1e-3) || (fabs(f) < 1e-12) ){ |
| 1037 | st << std::setprecision(prec) << std::setfill('0') << f << ") Tj ET\n"; |
| 1038 | } else { |
| 1039 | st << std::resetiosflags(std::ios::fixed) << std::setiosflags(std::ios::scientific) |
| 1040 | << std::setprecision(prec) << f << resetiosflags(std::ios::scientific) |
| 1041 | << std::setiosflags(std::ios::fixed) << ") Tj ET\n"; |
| 1042 | } |
| 1043 | } |
| 1044 | |
| 1045 | st << "Q\n"; |
| 1046 | |
| 1047 | return; |
| 1048 | } |
| 1049 |
no test coverage detected