Название: uchar* => QImage ? Отправлено: ElderOrb от Август 25, 2006, 13:55 В одной библиотеке машинного зрения есть класс CProImage, который содержит в себе данные в формате uchar* и который как ни странно проблематично вывести на экран. Поэтому мне бы хотелось на данных этого класса построить QImage и дальше работать с ним.
Делал я примерно следующее: image = QImage((uchar*)cproImage->GetData(),cproImage->GetWidth(), cproImage->GetHeight(),QImage::Format_Mono); .. и т.д с другими форматами. В тех случаях когда не выскакивало эксепшена отображалось одно и то же и совершенно не то что мне надо. К примеру исходная картинка была с чёрной вертикальной полоской слева, а у меня отображалась "каша" с белой горизонтальной полоской сверху. Помогите понять в чём дело! В примерах к демке всё делается на mfc и winapi, а я ни с первым ни со вторым связываться желания особого не имею. Всё, разобрался. Немного ассистанта внутривенно + иногда включать мозг и всё ок!. p.s. Нижеизложенное строчки заменяют приличный кусок довольно мясного когда на mfc + winapi. QModelAreaDlg::QModelAreaDlg() { this->image = QImage((uchar*)image->GetData(),image>GetWidth(), image->GetHeight(),QImage::Format_Indexed8); this->image.setNumColors(256); for(int i = 0; i<255; ++i) this->image.setColor(i, QColor(i, i, i, 255).rgb()); } void QModelAreaDlg::paintEvent(QPaintEvent* event) { QPainter p(this); p.drawImage(0, 0, image); } |