Skip to content
Snippets Groups Projects
Commit b1ddaad6 authored by andreas's avatar andreas
Browse files

bugfix in MaskOverlay ported from qtiplt

git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2600 5a81b35b-ba03-0410-adc8-b2c5c5119f08
parent fb906bb5
No related branches found
No related tags found
No related merge requests found
...@@ -73,7 +73,7 @@ void MaskOverlay::OnDraw(QPainter& pnt, DataViewerPanel* dvp, bool is_active) ...@@ -73,7 +73,7 @@ void MaskOverlay::OnDraw(QPainter& pnt, DataViewerPanel* dvp, bool is_active)
geom::Polygon2 pol=polygons_[i]; geom::Polygon2 pol=polygons_[i];
QPolygon qpol; QPolygon qpol;
for(int j=0;j<static_cast<int>(pol.GetNodeCount());++j){ for(int j=0;j<static_cast<int>(pol.GetNodeCount());++j){
qpol << dvp->FracPointToWinCenter(pol.GetNode(j)); qpol << dvp->FracPointToWinCenter(pol.GetNode(j)+shift_);
pnt.drawEllipse(qpol.back(),3,3); pnt.drawEllipse(qpol.back(),3,3);
} }
pnt.drawPolygon(qpol); pnt.drawPolygon(qpol);
...@@ -89,7 +89,7 @@ void MaskOverlay::OnDraw(QPainter& pnt, DataViewerPanel* dvp, bool is_active) ...@@ -89,7 +89,7 @@ void MaskOverlay::OnDraw(QPainter& pnt, DataViewerPanel* dvp, bool is_active)
} }
QPolygon qpol; QPolygon qpol;
for(int j=0;j<static_cast<int>(new_poly_.GetNodeCount());++j){ for(int j=0;j<static_cast<int>(new_poly_.GetNodeCount());++j){
qpol << dvp->FracPointToWinCenter(new_poly_.GetNode(j)); qpol << dvp->FracPointToWinCenter(new_poly_.GetNode(j)+shift_);
pnt.drawEllipse(qpol.back(),3,3); pnt.drawEllipse(qpol.back(),3,3);
} }
pnt.drawPolygon(qpol); pnt.drawPolygon(qpol);
...@@ -103,11 +103,7 @@ bool MaskOverlay::OnMouseEvent(QMouseEvent* e, DataViewerPanel* dvp, ...@@ -103,11 +103,7 @@ bool MaskOverlay::OnMouseEvent(QMouseEvent* e, DataViewerPanel* dvp,
geom::Vec2 mousepos=dvp->WinToFracPoint(e->pos()); geom::Vec2 mousepos=dvp->WinToFracPoint(e->pos());
geom::Vec2 diffpos=mousepos-old_mouse_pos_; geom::Vec2 diffpos=mousepos-old_mouse_pos_;
if(e->buttons() & Qt::RightButton){ if(e->buttons() & Qt::RightButton && e->button()==Qt::NoButton){
for(std::vector<geom::Polygon2>::iterator it=polygons_.begin();it!=polygons_.end();++it){
(*it)=(*it)+diffpos;
}
new_poly_=new_poly_+diffpos;
shift_+=diffpos; shift_+=diffpos;
} }
old_mouse_pos_=mousepos; old_mouse_pos_=mousepos;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment