c ++如何从图像中获取像素坐标?

时间:2013-04-17 09:53:55

标签: c++ qt coordinates pixel

我有一个C ++图像,我想点击一个像素的坐标(图像的亲戚)点击它(我的图片可用并打开点击它)。我不知道如何定义执行此操作所需的信号和插槽。感谢。

2 个答案:

答案 0 :(得分:1)

为您的案件提供了一些活动。请阅读this post以获取进一步说明。

我假设您正在使用控件来显示从QWidget派生的图像,例如QImageQWidget - 派生类可以处理鼠标事件,例如点击并发送QMouseEvent。这包含 x - 和 y -coordinates 相对于接收事件的小部件。 使用这些来通过调用QImage::pixel(x, y)(返回QRgb)来读取像素值。

答案 1 :(得分:1)

eventFilter(QObject *obj, QEvent *event){
//blabla
if (event->type() == QEvent::MouseButtonPress) {
QMouseEvent* MouseEvGrip = (QMouseEvent*)event;
Point2f clickePixel((float)MouseEvGrip->x(), (float)MouseEvGrip->y());
//blabla
}
}