私は標準のGraphicviewclassを持っています
#ifndef INPUTGRAPHICVIEW_H
#define INPUTGRAPHICVIEW_H
#include <QGraphicsView>
#include <QPaintEvent>
class InputGraphicView : public QGraphicsView
{
public:
InputGraphicView(QWidget* parent= NULL);
protected:
//Take over the interaction
virtual void wheelEvent(QWheelEvent* event);
virtual void mousePressEvent(QMouseEvent *e);
// void mouseMoveEvent(QMouseEvent* event);
private:
QGraphicsScene* Scene;
QGraphicsEllipseItem* ellipse;
std::vector<QGraphicsPolygonItem*> polygon_graphic;
};
#endif // INPUTGRAPHICVIEW_H
私の問題は、Graphicview の中央に通常の固定座標系を配置したいということです。私のxとあなたが[-5,5]しないように。
しかし、座標系の概念がわかりません。原点(0,0)が真ん中にあるシーンがありますか?
私は試した
setSceneRect(-5, -5, 5, 5);
しかし、私が私のものを使うとき
void InputGraphicView::mousePressEvent(QMouseEvent *e)
{
QPointF point;
point=mapToScene(e->pos().x(),e->pos().y());
std::cout << point.x() << ", " << point.y() << std::endl;
}
私は他の座標を取得します。私の原点は真ん中ですが、500以上の値を取得しています。私に何ができるかわかりますか?境界線が固定された固定座標系を取得するにはどうすればよいですか?