Название: копирование выделенных пикселей Отправлено: upsny от Декабрь 16, 2012, 11:29 здравствуйте. помогите пожалуйста разобраться с выделением области изображения. мне нужно запомнить выделенную область, и желательно чтобы эта самая выделенная область была изображена(рамка). выделял я с помощью rubberband, и не пойму, сохранилась ли область или нет...
вот кусок кода: QImage src; QImage dst; QPoint origin; QRubberBand *rubberBand; void MainWindow::mousePressEvent(QMouseEvent *event) { origin = event->pos(); rubberBand = new QRubberBand(QRubberBand::Rectangle, this); rubberBand->setGeometry(QRect(origin, QSize())); rubberBand->show(); mySelection * sel1 = new mySelection (); sel1->setPointFirst(origin); cout << sel1->first.x(); } void MainWindow::mouseMoveEvent(QMouseEvent *event) { rubberBand->setGeometry(QRect(origin, event->pos()).normalized()); } void MainWindow::mouseReleaseEvent(QMouseEvent *event) { rubberBand->hide(); } и добавленный хедер class QPoint; class mySelection { public: QPoint first; QPoint second; void setPointFirst (QPoint p); void setPointSecond (QPoint p); }; void mySelection::setPointFirst(QPoint p) { this->first = p; } void mySelection::setPointSecond(QPoint p) { this->second = p; } Название: Re: копирование выделенных пикселей Отправлено: mutineer от Декабрь 16, 2012, 11:42 Мда, память у тебя течет ручьем...
Так а куда ты хочешь эту самую область сохранить? И в какой момент ты ждешь что она сохранится? Название: Re: копирование выделенных пикселей Отправлено: upsny от Декабрь 16, 2012, 11:53 после собственно выделения. т.е. выделяю область и мне необходимо эту область перенести на другой фрагмент изображения. как-то так.
а что с памятью не так? я что-то нахимичил? Название: Re: копирование выделенных пикселей Отправлено: mutineer от Декабрь 16, 2012, 12:06 Ты создаешь QRubberBand и mySelection при каждом клике, но никогда не удаляешь, вот и течет память.
Ну так после отпускания мыши геометрия выделенной области лежит в rubberBand. В чем проблема? Название: Re: копирование выделенных пикселей Отправлено: upsny от Декабрь 16, 2012, 12:15 понял. исправлюсь, спасибо.
то есть после отпускания мыши эта самая геометрия сохраняется? отлично. спасибо |