Skip to content

Commit a1a44c3

Browse files
committed
Align density renderer with point renderer and fix shortcuts
1 parent d7c66ca commit a1a44c3

File tree

3 files changed

+15
-32
lines changed

3 files changed

+15
-32
lines changed

src/ScatterplotPlugin.cpp

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,8 @@ ScatterplotPlugin::ScatterplotPlugin(const PluginFactory* factory) :
7272
shortcuts.add({ QKeySequence(Qt::ALT), "Navigation", "Pan (LMB down)" });
7373
shortcuts.add({ QKeySequence(Qt::ALT), "Navigation", "Zoom (mouse wheel)" });
7474
shortcuts.add({ QKeySequence(Qt::Key_O), "Navigation", "Original view" });
75-
shortcuts.add({ QKeySequence(Qt::Key_B), "Navigation", "Zoom to selection" });
75+
shortcuts.add({ QKeySequence(Qt::Key_H), "Navigation", "Zoom to selection" });
76+
shortcuts.add({ QKeySequence(Qt::Key_F), "Navigation", "Zoom to window" });
7677

7778
_dropWidget = new DropWidget(_scatterPlotWidget);
7879

@@ -260,15 +261,13 @@ void ScatterplotPlugin::init()
260261

261262
navigationLayout->addStretch(1);
262263
{
263-
auto renderersNavigationGroupAction = new HorizontalGroupAction(this, "Renderers Navigation");
264+
auto renderersNavigationGroupAction = new HorizontalGroupAction(this, "Navigation");
264265

265266
renderersNavigationGroupAction->setShowLabels(false);
266267

267268
renderersNavigationGroupAction->addAction(const_cast<NavigationAction*>(&_scatterPlotWidget->getPointRendererNavigator().getNavigationAction()));
268-
renderersNavigationGroupAction->addAction(const_cast<NavigationAction*>(&_scatterPlotWidget->getDensityRendererNavigator().getNavigationAction()));
269269

270270
_scatterPlotWidget->getPointRendererNavigator().getNavigationAction().setParent(&_settingsAction);
271-
_scatterPlotWidget->getDensityRendererNavigator().getNavigationAction().setParent(&_settingsAction);
272271

273272
navigationLayout->addWidget(renderersNavigationGroupAction->createWidget(&getWidget()));
274273
}
@@ -353,10 +352,6 @@ void ScatterplotPlugin::init()
353352
return pointIndicesTableWidget;
354353
});
355354
#endif
356-
357-
_scatterPlotWidget->updateNavigationActionVisibility();
358-
359-
connect(&_settingsAction.getRenderModeAction(), &OptionAction::currentIndexChanged, _scatterPlotWidget, &ScatterplotWidget::updateNavigationActionVisibility);
360355
}
361356

362357
void ScatterplotPlugin::loadData(const Datasets& datasets)

src/ScatterplotWidget.cpp

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,10 @@ ScatterplotWidget::ScatterplotWidget(mv::plugin::ViewPlugin* parentPlugin) :
128128
_samplerPixelSelectionTool.setEnabled(true);
129129
_samplerPixelSelectionTool.setMainColor(QColor(Qt::black));
130130
_samplerPixelSelectionTool.setFixedBrushRadiusModifier(Qt::AltModifier);
131+
132+
getPointRendererNavigator().setEnabled(true);
133+
134+
_densityRenderer.setCustomNavigator(&getPointRendererNavigator());
131135
}
132136

133137
bool ScatterplotWidget::event(QEvent* event)
@@ -199,27 +203,17 @@ void ScatterplotWidget::setRenderMode(const RenderMode& renderMode)
199203

200204
emit renderModeChanged(_renderMode);
201205

202-
_pointRenderer.getNavigator().setEnabled(_renderMode == SCATTERPLOT);
203-
_densityRenderer.getNavigator().setEnabled(_renderMode == DENSITY || _renderMode == LANDSCAPE);
204-
205206
switch (_renderMode)
206207
{
207208
case ScatterplotWidget::SCATTERPLOT:
208209
{
209-
getPointRendererNavigator().setEnabled(true);
210-
getDensityRendererNavigator().setEnabled(false);
211-
212210
break;
213211
}
214212

215213
case ScatterplotWidget::DENSITY:
216214
case ScatterplotWidget::LANDSCAPE:
217215
{
218-
getPointRendererNavigator().setEnabled(false);
219-
getDensityRendererNavigator().setEnabled(true);
220-
221216
computeDensity();
222-
_densityRenderer.getNavigator().resetView();
223217

224218
break;
225219
}
@@ -272,15 +266,18 @@ void ScatterplotWidget::setData(const std::vector<Vector2f>* points)
272266
auto dataBounds = getDataBounds(*points);
273267

274268
_pointRenderer.setDataBounds(QRectF(QPointF(dataBounds.getLeft(), dataBounds.getBottom()), QSizeF(dataBounds.getWidth(), dataBounds.getHeight())));
275-
269+
_densityRenderer.setDataBounds(QRectF(QPointF(dataBounds.getLeft(), dataBounds.getBottom()), QSizeF(dataBounds.getWidth(), dataBounds.getHeight())));
270+
276271
_dataRectangleAction.setBounds(dataBounds);
277272

278-
dataBounds.ensureMinimumSize(1e-07f, 1e-07f);
279-
dataBounds.makeSquare();
280-
dataBounds.expand(0.1f);
273+
auto densityDataBounds = dataBounds;
281274

282-
_densityRenderer.setDataBounds(QRectF(QPointF(dataBounds.getLeft(), dataBounds.getBottom()), QSizeF(dataBounds.getWidth(), dataBounds.getHeight())));
275+
//densityDataBounds.ensureMinimumSize(1e-07f, 1e-07f);
276+
//densityDataBounds.makeSquare();
277+
//densityDataBounds.expand(0.1f);
283278

279+
_densityRenderer.setDensityComputationDataBounds(QRectF(QPointF(densityDataBounds.getLeft(), densityDataBounds.getBottom()), QSizeF(densityDataBounds.getWidth(), densityDataBounds.getHeight())));
280+
284281
_pointRenderer.setData(*points);
285282
_densityRenderer.setData(points);
286283

@@ -601,12 +598,6 @@ bool ScatterplotWidget::getRandomizedDepthEnabled() const
601598
return _pointRenderer.getRandomizedDepthEnabled();
602599
}
603600

604-
void ScatterplotWidget::updateNavigationActionVisibility()
605-
{
606-
_pointRenderer.getNavigator().getNavigationAction().setVisible(getRenderMode() == ScatterplotWidget::SCATTERPLOT);
607-
_densityRenderer.getNavigator().getNavigationAction().setVisible(getRenderMode() == ScatterplotWidget::DENSITY || getRenderMode() == ScatterplotWidget::LANDSCAPE);
608-
}
609-
610601
void ScatterplotWidget::initializeGL()
611602
{
612603
initializeOpenGLFunctions();

src/ScatterplotWidget.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -213,9 +213,6 @@ class ScatterplotWidget : public QOpenGLWidget, protected QOpenGLFunctions_3_3_C
213213
*/
214214
bool getRandomizedDepthEnabled() const;
215215

216-
/** Toggles the point vs density and landscape renderer visibility based on the current render mode */
217-
void updateNavigationActionVisibility();
218-
219216
protected:
220217
void initializeGL() Q_DECL_OVERRIDE;
221218
void resizeGL(int w, int h) Q_DECL_OVERRIDE;

0 commit comments

Comments
 (0)