diff options
Diffstat (limited to 'Project/TransferFunction.cpp')
-rw-r--r-- | Project/TransferFunction.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/Project/TransferFunction.cpp b/Project/TransferFunction.cpp index 6bb03ae..3175686 100644 --- a/Project/TransferFunction.cpp +++ b/Project/TransferFunction.cpp @@ -15,8 +15,8 @@ TransferFunction::TransferFunction() m_supNumber[9] = L'\u2079'; wxString str = ""; - for(int i = 0; i < 10; i++) { - str += "0,1s" + wxString(m_supNumber[i]) + " "; + for(int i = 0; i < 20; i++) { + str += "0,1s" + GetSuperscriptNumber(i) + " "; } SetText(str, ""); @@ -38,7 +38,7 @@ void TransferFunction::Draw(wxPoint2DDouble translation, double scale) const DrawRectangle(m_position, m_width, m_height); glColor4d(0.0, 0.0, 0.0, 1.0); DrawRectangle(m_position, m_width, m_height, GL_LINE_LOOP); - + glEnable(GL_TEXTURE_2D); glColor4d(0.0, 0.0, 0.0, 1.0); m_glStringNum->bind(); @@ -59,3 +59,16 @@ void TransferFunction::SetText(wxString numerator, wxString denominator) m_glStringNum->setFont(font); m_glStringNum->consolidate(&dc); } + +wxString TransferFunction::GetSuperscriptNumber(int number) +{ + wxString strNumber = wxString::Format("%d", number); + wxString superscriptStr = ""; + for(int i = 0; i < (int)strNumber.length(); ++i) { + wxString digitStr = strNumber[i]; + long digit = 0; + digitStr.ToLong(&digit); + superscriptStr += wxString(m_supNumber[digit]); + } + return superscriptStr; +} |