Я читал о решении, написанном здесь в посте год назад wx.TextCtrl.LoadFile ()
Теперь у меня есть приложение Windows, которое будет генерировать статистику цветовой частоты, котораясохраняются в 3D-массивах.Вот часть моего кода, как вы увидите в коде ниже, печать статистики зависит от ползунка, который задает порог.
void Project1Frm :: WxButton2Click (wxCommandEvent & event) {
char stat[32] ="";
int ***report = pGLCanvas->GetPixel();
float max = pGLCanvas->GetMaxval();
float dist = WxSlider5->GetValue();
WxRichTextCtrl1->Clear();
WxRichTextCtrl1->SetMaxLength(100);
if(dist>0)
{
WxRichTextCtrl1->AppendText(wxT("Statistics\nR\tG\tB\t\n"));
for(int m=0; m<256; m++){
for(int n=0; n<256; n++){
for(int o=0; o<256; o++){
if((report[m][n][o]/max)>=(dist/100.0))
{
sprintf(stat,"%d\t%d\t%d\t%3.6f%%\n",m,n,o,report[m][n][o]/max*100.0);
WxRichTextCtrl1->AppendText(wxT(stat));
}
}
}
}
}
else if(dist==0) WxRichTextCtrl1->LoadFile("histodata.txt");
}
Решение, которое я до сих пор пробовал, состоит в том, что, когда мне нужно распечатать всю статистику, я получу ее из текстового файла, а не через массив 3D ...Я хотел бы спросить, может ли реализация сегментирования в Python быть перенесена на C ++ или есть более эффективные способы решения этой проблемы.Спасибо.
РЕДАКТИРОВАТЬ: Другая причина, по которой я вместо этого использовал текстовый файл, заключается в том, что я заметил, что всякий раз, когда я делаю только sprintf [со строкой WxRichTextCtrl1-> AppendText (wxT (stat));был закомментирован] компьютер начинает замедляться.
-Ric