- Timestamp:
- Feb 15, 2016 11:38:15 AM (8 years ago)
- Location:
- geovis/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
geovis/trunk/Picker.cpp
r6005 r6013 238 238 bool SelectCallback::accept(const osgGA::GUIEventAdapter& ea, const osgGA::GUIActionAdapter& aa) 239 239 { 240 _renderer->mapMouseCoords(ea.getX(), ea.getY(), _pickPoint, false); 241 // Pick on click 242 return ea.getEventType() == ea.RELEASE; 240 if (ea.getEventType() == ea.PUSH) { 241 _x = ea.getX(); 242 _y = ea.getY(); 243 return false; 244 } else if (ea.getEventType() == ea.RELEASE) { 245 // Don't pick if mouse was dragged more than 2 pixels 246 if (fabsf(ea.getX()-_x) > 2 || fabsf(ea.getY()-_y) > 2) { 247 return false; 248 } else { 249 _renderer->mapMouseCoords(ea.getX(), ea.getY(), _pickPoint, false); 250 return true; 251 } 252 } 253 return false; 243 254 } 244 255 -
geovis/trunk/Picker.h
r6002 r6013 37 37 private: 38 38 Renderer *_renderer; 39 float _x, _y; 39 40 osgEarth::GeoPoint _pickPoint; 40 41 };
Note: See TracChangeset
for help on using the changeset viewer.